Refactor search

This commit is contained in:
2025-09-08 18:15:43 +08:00
parent 62d10a989d
commit d1da0dc948
7 changed files with 504 additions and 183 deletions

View File

@@ -12,6 +12,10 @@ import (
var db *gorm.DB
var (
ready = false
)
func init() {
if os.Getenv("DB_PORT") != "" {
host := os.Getenv("DB_HOST")
@@ -22,10 +26,18 @@ func init() {
dsn := user + ":" + password + "@tcp(" + host + ":" + port + ")/" + dbName + "?charset=utf8mb4&parseTime=True&loc=Local"
var err error
// wait for mysql to be ready
time.Sleep(5 * time.Second)
db, err = gorm.Open(mysql.Open(dsn), &gorm.Config{})
if err != nil {
panic("failed to connect database")
retrys := 5
for {
db, err = gorm.Open(mysql.Open(dsn), &gorm.Config{})
if err == nil {
ready = true
break
}
retrys--
if retrys < 0 {
panic("failed to connect database: " + err.Error())
}
time.Sleep(1 * time.Second)
}
} else {
var err error
@@ -54,3 +66,7 @@ func init() {
func GetDB() *gorm.DB {
return db
}
func IsReady() bool {
return ready
}