From 871310e4f1212d90b142da2f69ab438b7037959a Mon Sep 17 00:00:00 2001 From: zijiren233 Date: Sat, 20 Apr 2024 15:04:53 +0800 Subject: [PATCH] Fix: exit auto close db conn --- internal/bootstrap/db.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/internal/bootstrap/db.go b/internal/bootstrap/db.go index 4fe9337..c981af1 100644 --- a/internal/bootstrap/db.go +++ b/internal/bootstrap/db.go @@ -11,6 +11,7 @@ import ( "github.com/synctv-org/synctv/cmd/flags" "github.com/synctv-org/synctv/internal/conf" "github.com/synctv-org/synctv/internal/db" + sysnotify "github.com/synctv-org/synctv/internal/sysNotify" "github.com/synctv-org/synctv/internal/version" "github.com/synctv-org/synctv/utils" "gorm.io/driver/mysql" @@ -41,6 +42,12 @@ func InitDatabase(ctx context.Context) (err error) { if err != nil { log.Fatalf("failed to get sqlDB: %s", err.Error()) } + err = sysnotify.RegisterSysNotifyTask(0, sysnotify.NewSysNotifyTask("database", sysnotify.NotifyTypeEXIT, func() error { + return sqlDB.Close() + })) + if err != nil { + log.Fatalf("failed to register sysnotify task: %s", err.Error()) + } if conf.Conf.Database.Type != conf.DatabaseTypeSqlite3 { initRawDB(sqlDB) }