feat(database): implement database migration logic for PostgreSQL and add fast migration fallback

This commit is contained in:
CaIon
2025-06-14 19:47:44 +08:00
parent e6e5f31921
commit ab0ba9f38c

View File

@@ -232,6 +232,30 @@ func InitLogDB() (err error) {
}
func migrateDB() error {
if !common.UsingPostgreSQL {
return migrateDBFast()
}
err := DB.AutoMigrate(
&Channel{},
&Token{},
&User{},
&Option{},
&Redemption{},
&Ability{},
&Log{},
&Midjourney{},
&TopUp{},
&QuotaData{},
&Task{},
&Setup{},
)
if err != nil {
return err
}
return nil
}
func migrateDBFast() error {
var wg sync.WaitGroup
errChan := make(chan error, 12) // Buffer size matches number of migrations
@@ -273,7 +297,6 @@ func migrateDB() error {
return err
}
}
common.SysLog("database migrated")
return nil
}