From d19dacada0e47349dc9217b49eafd4f55b2368cc Mon Sep 17 00:00:00 2001 From: Samuel Pua Date: Wed, 19 Oct 2022 20:45:25 +0800 Subject: [PATCH] Fix(database): Database connect retry --- backend/internal/common/database.go | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/backend/internal/common/database.go b/backend/internal/common/database.go index 4e608e2..fc45857 100644 --- a/backend/internal/common/database.go +++ b/backend/internal/common/database.go @@ -46,11 +46,18 @@ func InitDB() *gorm.DB { ) dsn := fmt.Sprintf("host=%s user=%s password=%s dbname=%s port=%s sslmode=%s TimeZone=Asia/Singapore", host, user, pass, dbName, port, sslMode) - db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{ - Logger: newLogger, - }) - if err != nil { - fmt.Println("db err: (Init) ", err) + + var db *gorm.DB + var err error + + for ok := true; ok; ok = err != nil { + db, err = gorm.Open(postgres.Open(dsn), &gorm.Config{ + Logger: newLogger, + }) + if err != nil { + fmt.Println("db err: (Init) ", err) + time.Sleep(1 * time.Second) + } } // Setup UUID