From 819ef682b6627fcda0bab49cd67209a4bbdab402 Mon Sep 17 00:00:00 2001 From: SevenEarth <391613297@qq.com> Date: Tue, 18 Nov 2025 15:02:36 +0800 Subject: [PATCH 1/2] add --- tencentcloud/services/clb/resource_tc_clb_instance.go | 7 +++++++ tencentcloud/services/clb/service_tencentcloud_clb.go | 5 +++++ 2 files changed, 12 insertions(+) diff --git a/tencentcloud/services/clb/resource_tc_clb_instance.go b/tencentcloud/services/clb/resource_tc_clb_instance.go index 3e4fcbf0c0..d611976075 100644 --- a/tencentcloud/services/clb/resource_tc_clb_instance.go +++ b/tencentcloud/services/clb/resource_tc_clb_instance.go @@ -14,6 +14,7 @@ import ( "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" "github.com/pkg/errors" clb "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb/v20180317" + sdkErrors "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors" vpc "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312" "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/internal/helper" @@ -1111,6 +1112,12 @@ func resourceTencentCloudClbInstanceDelete(d *schema.ResourceData, meta interfac err := resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { e := clbService.DeleteLoadBalancerById(ctx, clbId) if e != nil { + if ve, ok := e.(*sdkErrors.TencentCloudSDKError); ok { + if ve.GetCode() == "FailedOperation.ResourceInOperating" { + return tccommon.RetryError(e, "FailedOperation.ResourceInOperating") + } + } + return tccommon.RetryError(e) } diff --git a/tencentcloud/services/clb/service_tencentcloud_clb.go b/tencentcloud/services/clb/service_tencentcloud_clb.go index 92a4d3684e..48fe9229ed 100644 --- a/tencentcloud/services/clb/service_tencentcloud_clb.go +++ b/tencentcloud/services/clb/service_tencentcloud_clb.go @@ -136,7 +136,12 @@ func (me *ClbService) DeleteLoadBalancerById(ctx context.Context, clbId string) if e.GetCode() == "InvalidParameter.LBIdNotFound" { return nil } + + if e.GetCode() == "FailedOperation.ResourceInOperating" { + return err + } } + return errors.WithStack(err) } log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", From 19858a1963f1378fa8b68a4b70be55afc5471f72 Mon Sep 17 00:00:00 2001 From: SevenEarth <391613297@qq.com> Date: Tue, 18 Nov 2025 15:05:46 +0800 Subject: [PATCH 2/2] add --- .changelog/3597.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/3597.txt diff --git a/.changelog/3597.txt b/.changelog/3597.txt new file mode 100644 index 0000000000..148ae85167 --- /dev/null +++ b/.changelog/3597.txt @@ -0,0 +1,3 @@ +```release-note:enhancement +resource/tencentcloud_clb_instance: optimiz delete code logic. +``` \ No newline at end of file