Skip to content

Commit 5ca8157

Browse files
author
Andrew Chen
committed
fix bug that prevented removal of query limits
1 parent 97f3783 commit 5ca8157

File tree

2 files changed

+45
-2
lines changed

2 files changed

+45
-2
lines changed

mysql/resource_ti_resource_group.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@ func (rg *ResourceGroup) buildSQLQuery(prefix string) string {
3333

3434
query = append(query, fmt.Sprintf(`PRIORITY = %s`, rg.Priority))
3535

36-
if rg.QueryLimit != DefaultResourceGroup.QueryLimit {
36+
if rg.QueryLimit == "" {
37+
query = append(query, fmt.Sprintf(`QUERY_LIMIT=NULL`))
38+
} else {
3739
query = append(query, fmt.Sprintf(`QUERY_LIMIT=(%s)`, rg.QueryLimit))
3840
}
3941

mysql/resource_ti_resource_group_test.go

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
"github.com/hashicorp/terraform-plugin-sdk/v2/terraform"
1313
)
1414

15-
func TestTIDBResourceGroup_basic(t *testing.T) {
15+
func TestTIDBResourceGroup_basic_to_full(t *testing.T) {
1616
varName := "rg100"
1717
varResourceUnits := 100
1818
varNewResourceUnits := 1000
@@ -53,6 +53,47 @@ func TestTIDBResourceGroup_basic(t *testing.T) {
5353
})
5454
}
5555

56+
func TestTIDBResourceGroup_full_to_basic(t *testing.T) {
57+
varName := "rg100"
58+
varResourceUnits := 1000
59+
varNewResourceUnits := 100
60+
varQueryLimit := "EXEC_ELAPSED='15s', ACTION=COOLDOWN, WATCH=SIMILAR DURATION='10m0s'"
61+
varNewQueryLimit := ""
62+
varBurstable := true
63+
varPriority := "low"
64+
resourceName := "mysql_ti_resource_group.test"
65+
66+
resource.Test(t, resource.TestCase{
67+
PreCheck: func() {
68+
testAccPreCheck(t)
69+
testAccPreCheckSkipNotTiDB(t)
70+
testAccPreCheckSkipNotTiDBVersionMin(t, ResourceGroupTiDBMinVersion)
71+
},
72+
ProviderFactories: testAccProviderFactories,
73+
CheckDestroy: testAccResourceGroupCheckDestroy(varName),
74+
Steps: []resource.TestStep{
75+
{
76+
Config: testAccResourceGroupConfigFull(varName, varResourceUnits, varQueryLimit, varBurstable, varPriority),
77+
Check: resource.ComposeTestCheckFunc(
78+
testAccResourceGroupExists(varName),
79+
resource.TestCheckResourceAttr(resourceName, "name", varName),
80+
resource.TestCheckResourceAttr(resourceName, "query_limit", varQueryLimit),
81+
resource.TestCheckResourceAttr(resourceName, "burstable", fmt.Sprintf("%t", varBurstable)),
82+
resource.TestCheckResourceAttr(resourceName, "priority", varPriority),
83+
),
84+
},
85+
{
86+
Config: testAccResourceGroupConfigBasic(varName, varNewResourceUnits, varNewQueryLimit),
87+
Check: resource.ComposeTestCheckFunc(
88+
testAccResourceGroupExists(varName),
89+
resource.TestCheckResourceAttr(resourceName, "name", varName),
90+
resource.TestCheckResourceAttr(resourceName, "query_limit", varNewQueryLimit),
91+
),
92+
},
93+
},
94+
})
95+
}
96+
5697
func testAccResourceGroupExists(varName string) resource.TestCheckFunc {
5798
return func(s *terraform.State) error {
5899
rg, err := getResourceGroup(varName)

0 commit comments

Comments
 (0)