From cdd652c1ee6a2327aa5d7c013a50647f58e1112e Mon Sep 17 00:00:00 2001 From: Qu Xuan Date: Fri, 23 Oct 2020 18:55:16 +0800 Subject: [PATCH 1/2] fix: qcloud 5.5 single zone --- pkg/multicloud/qcloud/rds_mysql.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkg/multicloud/qcloud/rds_mysql.go b/pkg/multicloud/qcloud/rds_mysql.go index 6bd713b021..0d7f3ec243 100644 --- a/pkg/multicloud/qcloud/rds_mysql.go +++ b/pkg/multicloud/qcloud/rds_mysql.go @@ -758,6 +758,9 @@ func (self *SRegion) CreateMySQLDBInstance(opts *cloudprovider.SManagedDBInstanc params["BackupZone"] = opts.Zone3 } } + if opts.EngineVersion == "5.5" { // 5.5 不支持多可用区部署 + params["DeployMode"] = "0" + } params["ClientToken"] = utils.GenRequestId(20) resp, err := self.cdbRequest(action, params) if err != nil { From 9a03bf17cef264f6e05358d084204e2a9c0a251f Mon Sep 17 00:00:00 2001 From: Qu Xuan Date: Fri, 23 Oct 2020 19:38:04 +0800 Subject: [PATCH 2/2] =?UTF-8?q?fix:=20=E6=94=AF=E6=8C=81=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E5=88=9B=E5=BB=BArds?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/compute/models/dbinstances.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkg/compute/models/dbinstances.go b/pkg/compute/models/dbinstances.go index ee55238488..d3333a9644 100644 --- a/pkg/compute/models/dbinstances.go +++ b/pkg/compute/models/dbinstances.go @@ -273,6 +273,15 @@ func (man *SDBInstanceManager) QueryDistinctExtraField(q *sqlchemy.SQuery, field return q, httperrors.ErrNotFound } +func (manager *SDBInstanceManager) BatchCreateValidateCreateData(ctx context.Context, userCred mcclient.TokenCredential, ownerId mcclient.IIdentityProvider, query jsonutils.JSONObject, data *jsonutils.JSONDict) (*jsonutils.JSONDict, error) { + input := api.DBInstanceCreateInput{} + err := data.Unmarshal(&input) + if err != nil { + return nil, errors.Wrapf(err, "data.Unmarshal") + } + return manager.ValidateCreateData(ctx, userCred, ownerId, query, input) +} + func (man *SDBInstanceManager) ValidateCreateData(ctx context.Context, userCred mcclient.TokenCredential, ownerId mcclient.IIdentityProvider, query jsonutils.JSONObject, input api.DBInstanceCreateInput) (*jsonutils.JSONDict, error) { data := input.JSON(input) networkV := validators.NewModelIdOrNameValidator("network", "network", ownerId)