Skip to content

Commit 1fb65ed

Browse files
Modify the problems in mongodb force delete review
1 parent 6925996 commit 1fb65ed

File tree

4 files changed

+30
-49
lines changed

4 files changed

+30
-49
lines changed

tencentcloud/resource_tc_mongodb_instance.go

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -513,22 +513,16 @@ func resourceTencentCloudMongodbInstanceDelete(d *schema.ResourceData, meta inte
513513
}
514514
err = mongodbService.OfflineIsolatedDBInstance(ctx, instanceId)
515515
if err != nil {
516-
log.Printf("[CRITAL]%s mongodb %s fail, reason:%s\n", logId, "OfflineIsolatedDBInstance", err.Error())
516+
log.Printf("[CRITAL]%s mongodb %s fail, reason:%s", logId, "OfflineIsolatedDBInstance", err.Error())
517517
return err
518518
}
519519
//describe and check not exist
520-
err = resource.Retry(5*readRetryTimeout, func() *resource.RetryError {
521-
instance, _, errRet := mongodbService.DescribeInstanceById(ctx, instanceId)
522-
if errRet != nil {
523-
return retryError(errRet, InternalError)
524-
}
525-
if instance == nil {
526-
return nil
527-
}
528-
return resource.NonRetryableError(fmt.Errorf("after OfflineIsolatedDBInstance mongodb Status is %d", *instance.Status))
529-
})
530-
if err != nil {
531-
return err
520+
_, has, errRet := mongodbService.DescribeInstanceById(ctx, instanceId)
521+
if errRet != nil {
522+
return errRet
523+
}
524+
if !has {
525+
return nil
532526
}
533527
return nil
534528
}

tencentcloud/resource_tc_mongodb_sharding_instance.go

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -508,22 +508,16 @@ func resourceMongodbShardingInstanceDelete(d *schema.ResourceData, meta interfac
508508
}
509509
err = mongodbService.OfflineIsolatedDBInstance(ctx, instanceId)
510510
if err != nil {
511-
log.Printf("[CRITAL]%s mongodb %s fail, reason:%s\n", logId, "OfflineIsolatedDBInstance", err.Error())
511+
log.Printf("[CRITAL]%s mongodb %s fail, reason:%s", logId, "OfflineIsolatedDBInstance", err.Error())
512512
return err
513513
}
514514
//describe and check not exist
515-
err = resource.Retry(5*readRetryTimeout, func() *resource.RetryError {
516-
instance, _, errRet := mongodbService.DescribeInstanceById(ctx, instanceId)
517-
if errRet != nil {
518-
return retryError(errRet, InternalError)
519-
}
520-
if instance == nil {
521-
return nil
522-
}
523-
return resource.NonRetryableError(fmt.Errorf("after OfflineIsolatedDBInstance mongodb Status is %d", *instance.Status))
524-
})
525-
if err != nil {
526-
return err
515+
_, has, errRet := mongodbService.DescribeInstanceById(ctx, instanceId)
516+
if errRet != nil {
517+
return errRet
518+
}
519+
if !has {
520+
return nil
527521
}
528522
return nil
529523
}

tencentcloud/resource_tc_mongodb_standby_instance.go

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -558,23 +558,16 @@ func resourceTencentCloudMongodbStandbyInstanceDelete(d *schema.ResourceData, me
558558
}
559559
err = mongodbService.OfflineIsolatedDBInstance(ctx, instanceId)
560560
if err != nil {
561-
log.Printf("[CRITAL]%s mongodb %s fail, reason:%s\n", logId, "OfflineIsolatedDBInstance", err.Error())
561+
log.Printf("[CRITAL]%s mongodb %s fail, reason:%s", logId, "OfflineIsolatedDBInstance", err.Error())
562562
return err
563563
}
564564
//describe and check not exist
565-
err = resource.Retry(5*readRetryTimeout, func() *resource.RetryError {
566-
instance, _, errRet := mongodbService.DescribeInstanceById(ctx, instanceId)
567-
if errRet != nil {
568-
return retryError(errRet, InternalError)
569-
}
570-
if instance == nil {
571-
return nil
572-
}
573-
return resource.NonRetryableError(fmt.Errorf("after OfflineIsolatedDBInstance mongodb Status is %d", *instance.Status))
574-
})
575-
if err != nil {
576-
return err
565+
_, has, errRet := mongodbService.DescribeInstanceById(ctx, instanceId)
566+
if errRet != nil {
567+
return errRet
568+
}
569+
if !has {
570+
return nil
577571
}
578-
579572
return nil
580573
}

tencentcloud/service_tencentcloud_mongodb.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -324,21 +324,21 @@ func (me *MongodbService) OfflineIsolatedDBInstance(ctx context.Context, instanc
324324
}
325325
}()
326326
var response *mongodb.OfflineIsolatedDBInstanceResponse
327-
err := resource.Retry(writeRetryTimeout, func() *resource.RetryError {
327+
var err error
328+
err = resource.Retry(writeRetryTimeout, func() *resource.RetryError {
328329
ratelimit.Check(request.GetAction())
329-
result, e := me.client.UseMongodbClient().OfflineIsolatedDBInstance(request)
330-
if e != nil {
331-
if ee, ok := e.(*sdkErrors.TencentCloudSDKError); ok {
330+
response, err = me.client.UseMongodbClient().OfflineIsolatedDBInstance(request)
331+
if err != nil {
332+
if ee, ok := err.(*sdkErrors.TencentCloudSDKError); ok {
332333
if ee.Code == "InvalidParameterValue.LockFailed" {
333-
return resource.RetryableError(e)
334+
return resource.RetryableError(err)
334335
} else {
335-
return resource.NonRetryableError(e)
336+
return resource.NonRetryableError(err)
336337
}
337338
}
338-
log.Printf("[CRITAL]%s api[%s] fail, reason:%s", logId, request.GetAction(), e.Error())
339-
return resource.NonRetryableError(e)
339+
log.Printf("[CRITAL]%s api[%s] fail, reason:%s", logId, request.GetAction(), err.Error())
340+
return resource.NonRetryableError(err)
340341
}
341-
response = result
342342
return nil
343343
})
344344
if err != nil {

0 commit comments

Comments
 (0)