From 8ac435af8e0112206a072a18bea34d49b4a38cbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=88=E8=BD=A9?= Date: Fri, 19 Sep 2025 23:47:32 +0800 Subject: [PATCH] fix(region): rds backup sync (#23306) --- pkg/compute/models/dbinstance_backups.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkg/compute/models/dbinstance_backups.go b/pkg/compute/models/dbinstance_backups.go index 52b99d88f1..36dc119186 100644 --- a/pkg/compute/models/dbinstance_backups.go +++ b/pkg/compute/models/dbinstance_backups.go @@ -25,6 +25,7 @@ import ( "yunion.io/x/jsonutils" "yunion.io/x/log" "yunion.io/x/pkg/errors" + "yunion.io/x/pkg/gotypes" "yunion.io/x/pkg/util/compare" "yunion.io/x/sqlchemy" @@ -476,6 +477,9 @@ func (self *SDBInstanceBackup) SyncWithCloudDBInstanceBackup( if dbinstanceId := extBackup.GetDBInstanceId(); len(dbinstanceId) > 0 { //有可能云上删除了实例,未删除备份 _instance, err := db.FetchByExternalIdAndManagerId(DBInstanceManager, dbinstanceId, func(q *sqlchemy.SQuery) *sqlchemy.SQuery { + if len(self.CloudregionId) > 0 { + q = q.Equals("cloudregion_id", self.CloudregionId) + } return q.Equals("manager_id", provider.Id) }) if err == sql.ErrNoRows { @@ -526,6 +530,9 @@ func (manager *SDBInstanceBackupManager) newFromCloudDBInstanceBackup( if dbinstanceId := extBackup.GetDBInstanceId(); len(dbinstanceId) > 0 { _dbinstance, err := db.FetchByExternalIdAndManagerId(DBInstanceManager, dbinstanceId, func(q *sqlchemy.SQuery) *sqlchemy.SQuery { + if !gotypes.IsNil(region) { + q = q.Equals("cloudregion_id", region.Id) + } return q.Equals("manager_id", provider.Id) }) if err != nil {