From 5a315a773ab8e49a3f6c19ef629d43e05bcede0f Mon Sep 17 00:00:00 2001 From: zhengkunwang <31820853+zhengkunwang223@users.noreply.github.com> Date: Wed, 13 Sep 2023 17:58:14 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3=20mariadb=20=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=B2=A1=E6=9C=89=E5=90=8C=E6=AD=A5=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E8=A1=A8=E7=9A=84=E9=97=AE=E9=A2=98?= =?UTF-8?q?=20(#2279)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/service/app_utils.go | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/backend/app/service/app_utils.go b/backend/app/service/app_utils.go index 82d8d2479..b5c604ff2 100644 --- a/backend/app/service/app_utils.go +++ b/backend/app/service/app_utils.go @@ -224,7 +224,7 @@ func handleAppInstallErr(ctx context.Context, install *model.AppInstall) error { return err } } - if err := deleteLink(ctx, install, true, true); err != nil { + if err := deleteLink(ctx, install, true, true, true); err != nil { return err } return nil @@ -249,7 +249,7 @@ func deleteAppInstall(install model.AppInstall, deleteBackup bool, forceDelete b if err := appInstallRepo.Delete(ctx, install); err != nil { return err } - if err := deleteLink(ctx, &install, deleteDB, forceDelete); err != nil && !forceDelete { + if err := deleteLink(ctx, &install, deleteDB, forceDelete, deleteBackup); err != nil && !forceDelete { return err } if install.App.Key == constant.AppOpenresty { @@ -257,9 +257,8 @@ func deleteAppInstall(install model.AppInstall, deleteBackup bool, forceDelete b _ = websiteDomainRepo.DeleteAll(ctx) } _ = backupRepo.DeleteRecord(ctx, commonRepo.WithByType("app"), commonRepo.WithByName(install.App.Key), backupRepo.WithByDetailName(install.Name)) - _ = backupRepo.DeleteRecord(ctx, commonRepo.WithByType(install.App.Key)) - if install.App.Key == constant.AppMysql { - _ = mysqlRepo.DeleteLocal(ctx) + if install.App.Key == constant.AppMysql || install.App.Key == constant.AppMariaDB { + _ = mysqlRepo.Delete(ctx, mysqlRepo.WithByMysqlName(install.Name)) } uploadDir := path.Join(global.CONF.System.BaseDir, fmt.Sprintf("1panel/uploads/app/%s/%s", install.App.Key, install.Name)) if _, err := os.Stat(uploadDir); err == nil { @@ -278,7 +277,7 @@ func deleteAppInstall(install model.AppInstall, deleteBackup bool, forceDelete b return nil } -func deleteLink(ctx context.Context, install *model.AppInstall, deleteDB bool, forceDelete bool) error { +func deleteLink(ctx context.Context, install *model.AppInstall, deleteDB bool, forceDelete bool, deleteBackup bool) error { if DatabaseKeys[install.App.Key] > 0 { _ = databaseRepo.Delete(ctx, databaseRepo.WithAppInstallID(install.ID)) _ = mysqlRepo.Delete(ctx, mysqlRepo.WithByMysqlName(install.Name)) @@ -289,7 +288,7 @@ func deleteLink(ctx context.Context, install *model.AppInstall, deleteDB bool, f } for _, re := range resources { mysqlService := NewIMysqlService() - if (re.Key == "mysql" || re.Key == "mariadb") && deleteDB { + if (re.Key == constant.AppMysql || re.Key == constant.AppMariaDB) && deleteDB { database, _ := mysqlRepo.Get(commonRepo.WithByID(re.ResourceId)) if reflect.DeepEqual(database, model.DatabaseMysql{}) { continue @@ -297,7 +296,7 @@ func deleteLink(ctx context.Context, install *model.AppInstall, deleteDB bool, f if err := mysqlService.Delete(ctx, dto.MysqlDBDelete{ ID: database.ID, ForceDelete: forceDelete, - DeleteBackup: true, + DeleteBackup: deleteBackup, Type: re.Key, Database: database.MysqlName, }); err != nil && !forceDelete {