This is an automated email from the ASF dual-hosted git repository.

dataroaring pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-3.0 by this push:
     new 44b6e4803f0 [fix](regression) fix multi-az failover regression case 
(#53805)
44b6e4803f0 is described below

commit 44b6e4803f04e21dca2d9303a1fd5f7863bf3817
Author: Luwei <[email protected]>
AuthorDate: Thu Jul 24 10:50:04 2025 +0800

    [fix](regression) fix multi-az failover regression case (#53805)
---
 .../use_default_vcg_read_write.out                 | Bin 197 -> 299 bytes
 .../use_vcg_read_write_routine_load.out            | Bin 0 -> 3581 bytes
 .../default_vcg_auto_failover.groovy               |   8 +++++-
 .../failover_standby_disable_compaction.groovy     |  28 +++++++++++++++++++--
 .../standby_disable_compaction.groovy              |   3 +--
 .../use_default_vcg_read_write.groovy              |  11 +++++---
 .../use_vcg_read_write_unhealthy_node_50.groovy    |  18 ++++++++++---
 7 files changed, 57 insertions(+), 11 deletions(-)

diff --git 
a/regression-test/data/cloud_p0/multi_cluster/virtual_compute_group/use_default_vcg_read_write.out
 
b/regression-test/data/cloud_p0/multi_cluster/virtual_compute_group/use_default_vcg_read_write.out
index 3900f080bd0..0abde7ca45b 100644
Binary files 
a/regression-test/data/cloud_p0/multi_cluster/virtual_compute_group/use_default_vcg_read_write.out
 and 
b/regression-test/data/cloud_p0/multi_cluster/virtual_compute_group/use_default_vcg_read_write.out
 differ
diff --git 
a/regression-test/data/cloud_p0/multi_cluster/virtual_compute_group/use_vcg_read_write_routine_load.out
 
b/regression-test/data/cloud_p0/multi_cluster/virtual_compute_group/use_vcg_read_write_routine_load.out
new file mode 100644
index 00000000000..6006a85a705
Binary files /dev/null and 
b/regression-test/data/cloud_p0/multi_cluster/virtual_compute_group/use_vcg_read_write_routine_load.out
 differ
diff --git 
a/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/default_vcg_auto_failover.groovy
 
b/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/default_vcg_auto_failover.groovy
index cf9934469c6..06a52a31b8b 100644
--- 
a/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/default_vcg_auto_failover.groovy
+++ 
b/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/default_vcg_auto_failover.groovy
@@ -130,7 +130,13 @@ suite('default_vcg_auto_failover', 'multi_cluster,docker') 
{
             def reconnectFe = {
                 sleep(10000)
                 logger.info("Reconnecting to a new frontend...")
-                def newFe = cluster.getMasterFe()
+                def newFe
+                if (options.connectToFollower) {
+                    newFe = cluster.getOneFollowerFe()
+                } else {
+                    newFe = cluster.getMasterFe()
+                }
+
                 if (newFe) {
                     logger.info("New frontend found: 
${newFe.host}:${newFe.httpPort}")
                     def url = String.format(
diff --git 
a/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/failover_standby_disable_compaction.groovy
 
b/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/failover_standby_disable_compaction.groovy
index a92d5b7a920..1404b6c1e2e 100644
--- 
a/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/failover_standby_disable_compaction.groovy
+++ 
b/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/failover_standby_disable_compaction.groovy
@@ -153,6 +153,31 @@ suite('failover_standby_disable_compaction', 
'multi_cluster,docker') {
             """
 
             cluster.stopBackends(4, 5)
+
+            def reconnectFe = {
+                sleep(10000)
+                logger.info("Reconnecting to a new frontend...")
+                def newFe
+                if (options.connectToFollower) {
+                    newFe = cluster.getOneFollowerFe()
+                } else {
+                    newFe = cluster.getMasterFe()
+                }
+                if (newFe) {
+                    logger.info("New frontend found: 
${newFe.host}:${newFe.httpPort}")
+                    def url = String.format(
+                            
"jdbc:mysql://%s:%s/?useLocalSessionState=true&allowLoadLocalInfile=false",
+                            newFe.host, newFe.queryPort)
+                    url = context.config.buildUrlWithDb(url, context.dbName)
+                    context.connectTo(url, context.config.jdbcUser, 
context.config.jdbcPassword)
+                    logger.info("Successfully reconnected to the new frontend")
+                } else {
+                    logger.error("No new frontend found to reconnect")
+                }
+            }
+
+            reconnectFe()
+
             sleep(30000)
             sql """ insert into ${tbl} (k1, k2) values (1, "10") """
             sql """ SELECT count(*) FROM ${tableName} """
@@ -274,9 +299,8 @@ suite('failover_standby_disable_compaction', 
'multi_cluster,docker') {
 
             assertTrue(before_cluster2_be0_compaction < 
after_cluster2_be0_compaction || before_cluster2_be1_compaction < 
after_cluster2_be1_compaction )
 
-            def set = [cluster1Ips[0] + ":" + "8060", cluster1Ips[1] + ":" + 
"8060"] as Set
+            def addrSet = [cluster2Ips[0] + ":" + "8060", cluster2Ips[1] + ":" 
+ "8060"] as Set
             sql """ select count(k2) AS theCount, k3 from test_all_vcluster 
group by k3 order by theCount limit 1 """
-            checkProfileNew.call(set, false)
             if (options.connectToFollower) {
                 checkProfileNew.call(cluster.getOneFollowerFe(), addrSet)
             } else {
diff --git 
a/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/standby_disable_compaction.groovy
 
b/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/standby_disable_compaction.groovy
index dc39526bfe0..2393e27ef0e 100644
--- 
a/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/standby_disable_compaction.groovy
+++ 
b/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/standby_disable_compaction.groovy
@@ -261,9 +261,8 @@ suite('standby_disable_compaction', 'multi_cluster,docker') 
{
 
             assertTrue(before_cluster2_be0_compaction < 
after_cluster2_be0_compaction || before_cluster2_be1_compaction < 
after_cluster2_be1_compaction )
 
-            def set = [cluster1Ips[0] + ":" + "8060", cluster1Ips[1] + ":" + 
"8060"] as Set
+            def addrSet = [cluster2Ips[0] + ":" + "8060", cluster2Ips[1] + ":" 
+ "8060"] as Set
             sql """ select count(k2) AS theCount, k3 from test_all_vcluster 
group by k3 order by theCount limit 1 """
-            checkProfileNew.call(set, false)
             if (options.connectToFollower) {
                 checkProfileNew.call(cluster.getOneFollowerFe(), addrSet)
             } else {
diff --git 
a/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/use_default_vcg_read_write.groovy
 
b/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/use_default_vcg_read_write.groovy
index 707ea42ce89..77080ee3711 100644
--- 
a/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/use_default_vcg_read_write.groovy
+++ 
b/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/use_default_vcg_read_write.groovy
@@ -129,7 +129,12 @@ suite('use_default_vcg_read_write', 
'multi_cluster,docker') {
             def reconnectFe = {
                 sleep(10000)
                 logger.info("Reconnecting to a new frontend...")
-                def newFe = cluster.getMasterFe()
+                def newFe
+                if (options.connectToFollower) {
+                    newFe = cluster.getOneFollowerFe()
+                } else {
+                    newFe = cluster.getMasterFe()
+                }
                 if (newFe) {
                     logger.info("New frontend found: 
${newFe.host}:${newFe.httpPort}")
                     def url = String.format(
@@ -428,7 +433,7 @@ suite('use_default_vcg_read_write', 'multi_cluster,docker') 
{
                 checkProfileNew.call(cluster.getMasterFe(), addrSet)
             }
 
-            sleep(16000)
+            sleep(21000)
 
             sql """
                 insert into ${tbl} (k1, k2) values (1, "10");
@@ -439,7 +444,7 @@ suite('use_default_vcg_read_write', 'multi_cluster,docker') 
{
             log.info("show compute group {}", showComputeGroup)
             vcgInShow = showComputeGroup.find { it.Name == normalVclusterName }
             assertNotNull(vcgInShow)
-            
assertTrue(vcgInShow.Policy.contains('"activeComputeGroup":"newcluster1","standbyComputeGroup":"newcluster2"'))
+            
assertTrue(vcgInShow.Policy.contains('"activeComputeGroup":"newcluster2","standbyComputeGroup":"newcluster1"'))
         }
         // connect to follower, run again
         options.connectToFollower = true
diff --git 
a/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/use_vcg_read_write_unhealthy_node_50.groovy
 
b/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/use_vcg_read_write_unhealthy_node_50.groovy
index e1f2923814e..40a875f64b8 100644
--- 
a/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/use_vcg_read_write_unhealthy_node_50.groovy
+++ 
b/regression-test/suites/cloud_p0/multi_cluster/virtual_compute_group/use_vcg_read_write_unhealthy_node_50.groovy
@@ -243,7 +243,11 @@ suite('use_vcg_read_write_unhealthy_node_50', 
'multi_cluster,docker') {
 
             def addrSet = [cluster1Ips[0] + ":" + "8060", cluster1Ips[1] + ":" 
+ "8060"] as Set
             sql """ select count(k2) AS theCount, k3 from test_all_vcluster 
group by k3 order by theCount limit 1 """
-            checkProfileNew.call(addrSet)
+            if (options.connectToFollower) {
+                checkProfileNew.call(cluster.getOneFollowerFe(), addrSet)
+            } else {
+                checkProfileNew.call(cluster.getMasterFe(), addrSet)
+            }
 
             cluster.stopBackends(4)
             sleep(10000)
@@ -333,7 +337,11 @@ suite('use_vcg_read_write_unhealthy_node_50', 
'multi_cluster,docker') {
 
             addrSet = [cluster2Ips[0] + ":" + "8060", cluster2Ips[1] + ":" + 
"8060"] as Set
             sql """ select count(k2) AS theCount, k3 from test_all_vcluster 
group by k3 order by theCount limit 1 """
-            checkProfileNew.call(addrSet)
+            if (options.connectToFollower) {
+                checkProfileNew.call(cluster.getOneFollowerFe(), addrSet)
+            } else {
+                checkProfileNew.call(cluster.getMasterFe(), addrSet)
+            }
 
             sleep(16000)
             sql """
@@ -406,7 +414,11 @@ suite('use_vcg_read_write_unhealthy_node_50', 
'multi_cluster,docker') {
 
             addrSet = [cluster2Ips[0] + ":" + "8060", cluster2Ips[1] + ":" + 
"8060"] as Set
             sql """ select count(k2) AS theCount, k3 from test_all_vcluster 
group by k3 order by theCount limit 1 """
-            checkProfileNew.call(addrSet)
+            if (options.connectToFollower) {
+                checkProfileNew.call(cluster.getOneFollowerFe(), addrSet)
+            } else {
+                checkProfileNew.call(cluster.getMasterFe(), addrSet)
+            }
 
             sleep(16000)
             // show cluster


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to