Răsfoiți Sursa

database: set `Handle` direcetly during initialization (#7699)

Joe Chen 11 luni în urmă
părinte
comite
8d2386b4db
3 a modificat fișierele cu 7 adăugiri și 12 ștergeri
  1. 1 5
      internal/database/database.go
  2. 5 5
      internal/database/models.go
  3. 1 2
      internal/route/install.go

+ 1 - 5
internal/database/database.go

@@ -128,6 +128,7 @@ func NewConnection(w logger.Writer) (*gorm.DB, error) {
 	TwoFactors = &twoFactorsStore{DB: db}
 	Users = NewUsersStore(db)
 
+	Handle = &DB{db: db}
 	return db, nil
 }
 
@@ -148,11 +149,6 @@ type DB struct {
 // single-thread process).
 var Handle *DB
 
-// SetHandle updates the global database handle with the given connection.
-func SetHandle(db *gorm.DB) {
-	Handle = &DB{db: db}
-}
-
 func (db *DB) AccessTokens() *AccessTokensStore {
 	return newAccessTokensStore(db.db)
 }

+ 5 - 5
internal/database/models.go

@@ -181,21 +181,21 @@ func SetEngine() (*gorm.DB, error) {
 	return NewConnection(gormLogger)
 }
 
-func NewEngine() (*gorm.DB, error) {
+func NewEngine() error {
 	db, err := SetEngine()
 	if err != nil {
-		return nil, err
+		return err
 	}
 
 	if err = migrations.Migrate(db); err != nil {
-		return nil, fmt.Errorf("migrate: %v", err)
+		return fmt.Errorf("migrate: %v", err)
 	}
 
 	if err = x.StoreEngine("InnoDB").Sync2(legacyTables...); err != nil {
-		return nil, errors.Wrap(err, "sync tables")
+		return errors.Wrap(err, "sync tables")
 	}
 
-	return db, nil
+	return nil
 }
 
 type Statistic struct {

+ 1 - 2
internal/route/install.go

@@ -71,11 +71,10 @@ func GlobalInit(customConf string) error {
 	if conf.Security.InstallLock {
 		highlight.NewContext()
 		markup.NewSanitizer()
-		db, err := database.NewEngine()
+		err := database.NewEngine()
 		if err != nil {
 			log.Fatal("Failed to initialize ORM engine: %v", err)
 		}
-		database.SetHandle(db)
 		database.HasEngine = true
 
 		database.LoadRepoConfig()