@@ -1277,17 +1277,30 @@ func (me *ClbService) RegisterTargetInstances(ctx context.Context, targetGroupId
12771277 Weight : & weight ,
12781278 },
12791279 }
1280+
1281+ var requestId string
12801282 err = resource .Retry (tccommon .WriteRetryTimeout , func () * resource.RetryError {
1281- _ , err := me .client .UseClbClient ().RegisterTargetGroupInstances (request )
1283+ result , err := me .client .UseClbClient ().RegisterTargetGroupInstances (request )
12821284 if err != nil {
12831285 return tccommon .RetryError (err , tccommon .InternalError )
12841286 }
1287+
1288+ if result == nil || result .Response == nil || result .Response .RequestId == nil {
1289+ return resource .NonRetryableError (fmt .Errorf ("Register target group instance failed, Response is nil." ))
1290+ }
1291+
1292+ requestId = * result .Response .RequestId
12851293 return nil
12861294 })
12871295 if err != nil {
12881296 return err
12891297 }
12901298
1299+ retryErr := waitForTaskFinish (requestId , me .client .UseClbClient ())
1300+ if retryErr != nil {
1301+ return retryErr
1302+ }
1303+
12911304 return nil
12921305}
12931306
@@ -1301,17 +1314,29 @@ func (me *ClbService) DeregisterTargetInstances(ctx context.Context, targetGroup
13011314 },
13021315 }
13031316
1317+ var requestId string
13041318 err = resource .Retry (tccommon .WriteRetryTimeout , func () * resource.RetryError {
1305- _ , err := me .client .UseClbClient ().DeregisterTargetGroupInstances (request )
1319+ result , err := me .client .UseClbClient ().DeregisterTargetGroupInstances (request )
13061320 if err != nil {
13071321 return tccommon .RetryError (err , tccommon .InternalError )
13081322 }
1323+
1324+ if result == nil || result .Response == nil || result .Response .RequestId == nil {
1325+ return resource .NonRetryableError (fmt .Errorf ("Deregister target group instance failed, Response is nil." ))
1326+ }
1327+
1328+ requestId = * result .Response .RequestId
13091329 return nil
13101330 })
13111331 if err != nil {
13121332 return err
13131333 }
13141334
1335+ retryErr := waitForTaskFinish (requestId , me .client .UseClbClient ())
1336+ if retryErr != nil {
1337+ return retryErr
1338+ }
1339+
13151340 return nil
13161341}
13171342
@@ -1542,9 +1567,10 @@ func (me *ClbService) ModifyTargetGroupInstancesWeight(ctx context.Context, targ
15421567 request .TargetGroupId = & targetGroupId
15431568 request .TargetGroupInstances = []* clb.TargetGroupInstance {& instance }
15441569
1570+ var requestId string
15451571 err := resource .Retry (tccommon .WriteRetryTimeout , func () * resource.RetryError {
15461572 ratelimit .Check (request .GetAction ())
1547- _ , err := me .client .UseClbClient ().ModifyTargetGroupInstancesWeight (request )
1573+ result , err := me .client .UseClbClient ().ModifyTargetGroupInstancesWeight (request )
15481574 if err != nil {
15491575 if e , ok := err .(* sdkErrors.TencentCloudSDKError ); ok {
15501576 if e .GetCode () == "FailedOperation.ResourceInOperating" {
@@ -1555,12 +1581,23 @@ func (me *ClbService) ModifyTargetGroupInstancesWeight(ctx context.Context, targ
15551581 return tccommon .RetryError (err , tccommon .InternalError )
15561582 }
15571583
1584+ if result == nil || result .Response == nil || result .Response .RequestId == nil {
1585+ return resource .NonRetryableError (fmt .Errorf ("Modify target group instance weight failed, Response is nil." ))
1586+ }
1587+
1588+ requestId = * result .Response .RequestId
15581589 return nil
15591590 })
15601591
15611592 if err != nil {
15621593 return err
15631594 }
1595+
1596+ retryErr := waitForTaskFinish (requestId , me .client .UseClbClient ())
1597+ if retryErr != nil {
1598+ return retryErr
1599+ }
1600+
15641601 return nil
15651602}
15661603
0 commit comments