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

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

commit 4b1cb17b402dac5335890ddf11aa899a60e8fc18
Author: walter <w41te...@gmail.com>
AuthorDate: Tue Apr 9 23:25:20 2024 +0800

    [fix](cases) Add check status timeout for backup/restore cases (#32975)
---
 .../apache/doris/regression/suite/Syncer.groovy    | 33 +++++++++++++++
 .../backup_restore/test_MoW_backup_restore.groovy  | 48 ++++++----------------
 .../backup_restore/test_backup_restore.groovy      |  8 +---
 .../test_backup_restore_alias.groovy               |  8 +---
 .../test_backup_restore_bloom_filter.groovy        |  8 +---
 .../backup_restore/test_backup_restore_db.groovy   |  8 +---
 ...t_backup_restore_diff_repo_same_snapshot.groovy | 16 ++------
 ..._backup_restore_dup_without_default_keys.groovy |  8 +---
 .../test_backup_restore_exclude.groovy             |  8 +---
 .../test_backup_restore_inverted_index.groovy      |  8 +---
 .../test_backup_restore_keep_on_local.groovy       |  4 +-
 .../test_backup_restore_multi_tables.groovy        |  8 +---
 ...st_backup_restore_multi_tables_overwrite.groovy |  8 +---
 .../test_backup_restore_partition.groovy           | 12 ++----
 ..._restore_reserve_dynamic_partition_false.groovy | 10 ++---
 ...p_restore_reserve_dynamic_partition_true.groovy |  9 +---
 .../test_backup_restore_table_auto_bucket.groovy   |  8 +---
 .../backup_restore/test_backup_restore_with.groovy |  8 +---
 ..._backup_restore_with_two_phase_fetch_opt.groovy |  8 +---
 .../test_duplicate_backup_restore.groovy           | 20 +++------
 .../test_restore_mix_exists_and_new_table.groovy   |  8 +---
 .../test_restore_to_new_table.groovy               |  8 +---
 .../test_unique_backup_restore.groovy              | 16 ++------
 .../ccr_mow_syncer_p1/test_backup_restore.groovy   | 10 ++---
 .../ccr_syncer_p1/test_backup_restore.groovy       | 10 ++---
 25 files changed, 102 insertions(+), 198 deletions(-)

diff --git 
a/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Syncer.groovy
 
b/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Syncer.groovy
index 7d0b053896b..47000ab74fd 100644
--- 
a/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Syncer.groovy
+++ 
b/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Syncer.groovy
@@ -365,6 +365,17 @@ class Syncer {
         true
     }
 
+    void waitSnapshotFinish(String dbName = null) {
+        int count = 0;
+        while (!checkSnapshotFinish(dbName)) {
+            if (++count >= 600) {  // 30min
+                logger.error('BACKUP task is timeouted')
+                throw new Exception("BACKUP task is timeouted after 30mins")
+            }
+            Thread.sleep(3000)
+        }
+    }
+
     String getSnapshotTimestamp(String repoName, String snapshotName) {
         def filterShowSnapshot = { records, name ->
             for (row in records) {
@@ -403,6 +414,17 @@ class Syncer {
         true
     }
 
+    void waitAllRestoreFinish(String dbName = null) {
+        int count = 0;
+        while (!checkAllRestoreFinish(dbName)) {
+            if (++count >= 600) {  // 30min
+                logger.error('RESTORE task is timeouted')
+                throw new Exception("RESTORE task is timeouted after 30mins")
+            }
+            Thread.sleep(3000)
+        }
+    }
+
     Boolean checkRestoreFinish() {
         String checkSQL = "SHOW RESTORE FROM TEST_" + context.db
         List<Object> row = suite.sql(checkSQL)[0]
@@ -411,6 +433,17 @@ class Syncer {
         return (row[4] as String) == "FINISHED"
     }
 
+    void waitTargetRestoreFinish() {
+        int count = 0;
+        while (!checkRestoreFinish()) {
+            if (++count >= 600) {  // 30min
+                logger.error('target RESTORE task is timeouted')
+                throw new Exception("target RESTORE task is timeouted after 
30mins")
+            }
+            Thread.sleep(3000)
+        }
+    }
+
     Boolean checkGetSnapshot() {
         TGetSnapshotResult result = context.getSnapshotResult
         Boolean isCheckedOK = false
diff --git 
a/regression-test/suites/backup_restore/test_MoW_backup_restore.groovy 
b/regression-test/suites/backup_restore/test_MoW_backup_restore.groovy
index 7119f3038e3..fff1d9da41e 100644
--- a/regression-test/suites/backup_restore/test_MoW_backup_restore.groovy
+++ b/regression-test/suites/backup_restore/test_MoW_backup_restore.groovy
@@ -35,63 +35,47 @@ suite("test_MoW_backup_restore", "p1") {
     // version1 (1,1)(2,2)
     sql """insert into ${tableName} values(1,1),(2,2)"""
     sql """backup snapshot ${context.dbName}.snapshot1 to ${repo} on 
(${tableName}) properties("type"="full")"""
-    while(checkSnapshotFinish()==false){
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish()
     qt_3 """select * from ${tableName} order by user_id"""
 
     // version2 (1,10)(2,2)
     sql """insert into ${tableName} values(1,10)"""
     sql """backup snapshot ${context.dbName}.snapshot2 to ${repo} on 
(${tableName}) properties("type"="full")"""
-    while(checkSnapshotFinish()==false){
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish()
     qt_4 """select * from ${tableName} order by user_id"""
 
     // version3 (1,100)(2,2)
     sql """update ${tableName} set value = 100 where user_id = 1"""
     sql """backup snapshot ${context.dbName}.snapshot3 to ${repo} on 
(${tableName}) properties("type"="full")"""
-    while(checkSnapshotFinish()==false){
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish()
     qt_5 """select * from ${tableName} order by user_id"""
 
     // version4 (2,2)
     sql """delete from ${tableName} where user_id = 1"""
     sql """backup snapshot ${context.dbName}.snapshot4 to ${repo} on 
(${tableName}) properties("type"="full")"""
-    while(checkSnapshotFinish()==false){
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish()
     qt_6 """select * from ${tableName} order by user_id"""
 
     // version1 (1,1)(2,2)
     assertTrue(syncer.getSnapshot("snapshot1", "${tableName}"))
     assertTrue(syncer.restoreSnapshot())
-    while (checkRestoreFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish()
     qt_7 """select * from ${tableName} order by user_id"""
 
     // version2 (1,10)(2,2)
     assertTrue(syncer.getSnapshot("snapshot2", "${tableName}"))
     assertTrue(syncer.restoreSnapshot())
-    while (checkRestoreFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish()
     qt_8 """select * from ${tableName} order by user_id"""
     // version3 (1,100)(2,2)
     assertTrue(syncer.getSnapshot("snapshot3", "${tableName}"))
     assertTrue(syncer.restoreSnapshot())
-    while (checkRestoreFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish()
     qt_9 """select * from ${tableName} order by user_id"""
     // version4 (2,2)
     assertTrue(syncer.getSnapshot("snapshot4", "${tableName}"))
     assertTrue(syncer.restoreSnapshot())
-    while (checkRestoreFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish()
     qt_10 """select * from ${tableName} order by user_id"""
 
     sql """drop table if exists ${tableName}"""
@@ -107,30 +91,22 @@ suite("test_MoW_backup_restore", "p1") {
     // version1 (1,1)(2,2)
     assertTrue(syncer.getSnapshot("snapshot1", "${tableName}"))
     assertTrue(syncer.restoreSnapshot())
-    while (checkRestoreFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish()
     qt_11 """select * from ${tableName} order by user_id"""
 
     // version2 (1,10)(2,2)
     assertTrue(syncer.getSnapshot("snapshot2", "${tableName}"))
     assertTrue(syncer.restoreSnapshot())
-    while (checkRestoreFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish()
     qt_12 """select * from ${tableName} order by user_id"""
     // version3 (1,100)(2,2)
     assertTrue(syncer.getSnapshot("snapshot3", "${tableName}"))
     assertTrue(syncer.restoreSnapshot())
-    while (checkRestoreFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish()
     qt_13 """select * from ${tableName} order by user_id"""
     // version4 (2,2)
     assertTrue(syncer.getSnapshot("snapshot4", "${tableName}"))
     assertTrue(syncer.restoreSnapshot())
-    while (checkRestoreFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish()
     qt_14 """select * from ${tableName} order by user_id"""
 }
diff --git a/regression-test/suites/backup_restore/test_backup_restore.groovy 
b/regression-test/suites/backup_restore/test_backup_restore.groovy
index 2775a0a11b3..03ec2de93b7 100644
--- a/regression-test/suites/backup_restore/test_backup_restore.groovy
+++ b/regression-test/suites/backup_restore/test_backup_restore.groovy
@@ -52,9 +52,7 @@ suite("test_backup_restore", "backup_restore") {
         ON (${tableName})
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -72,9 +70,7 @@ suite("test_backup_restore", "backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     result = sql "SELECT * FROM ${dbName}.${tableName}"
     assertEquals(result.size(), values.size());
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_alias.groovy 
b/regression-test/suites/backup_restore/test_backup_restore_alias.groovy
index 6ecf0f9ddf6..8fabd2c5c77 100644
--- a/regression-test/suites/backup_restore/test_backup_restore_alias.groovy
+++ b/regression-test/suites/backup_restore/test_backup_restore_alias.groovy
@@ -53,9 +53,7 @@ suite("test_backup_restore_alias", "backup_restore") {
         ON (${tableName})
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -74,9 +72,7 @@ suite("test_backup_restore_alias", "backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     qt_select "SELECT * FROM ${dbName}.${tableName} ORDER BY id"
     qt_select "SELECT * FROM ${dbName}.${aliasName} ORDER BY id"
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_bloom_filter.groovy 
b/regression-test/suites/backup_restore/test_backup_restore_bloom_filter.groovy
index 5d61dbcb3b8..fab3174b2b2 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_bloom_filter.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_bloom_filter.groovy
@@ -54,9 +54,7 @@ suite("test_backup_restore_bloom_filter", "backup_restore") {
         PROPERTIES ("type" = "full")
         """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
 
@@ -74,9 +72,7 @@ suite("test_backup_restore_bloom_filter", "backup_restore") {
         )
         """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     def restore_index_comment = sql "SHOW CREATE TABLE ${dbName}.${tableName}"
 
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_db.groovy 
b/regression-test/suites/backup_restore/test_backup_restore_db.groovy
index 780b322a212..600ad8510c8 100644
--- a/regression-test/suites/backup_restore/test_backup_restore_db.groovy
+++ b/regression-test/suites/backup_restore/test_backup_restore_db.groovy
@@ -59,9 +59,7 @@ suite("test_backup_restore_db", "backup_restore") {
         TO `${repoName}`
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -80,9 +78,7 @@ suite("test_backup_restore_db", "backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     for (def tableName in tables) {
         result = sql "SELECT * FROM ${dbName}.${tableName}"
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_diff_repo_same_snapshot.groovy
 
b/regression-test/suites/backup_restore/test_backup_restore_diff_repo_same_snapshot.groovy
index da5fe12df14..889c2e6fdbc 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_diff_repo_same_snapshot.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_diff_repo_same_snapshot.groovy
@@ -70,12 +70,8 @@ suite("test_backup_restore_diff_repo_same_snapshot", 
"backup_restore") {
         ON (${tableName}_2)
     """
 
-    while (!syncer.checkSnapshotFinish("${dbName}_1")) {
-        Thread.sleep(3000)
-    }
-    while (!syncer.checkSnapshotFinish("${dbName}_2")) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish("${dbName}_1")
+    syncer.waitSnapshotFinish("${dbName}_2")
 
     // Restore snapshot from repo_1 to db_1
     def snapshot = syncer.getSnapshotTimestamp("${repoName}_1", snapshotName)
@@ -93,9 +89,7 @@ suite("test_backup_restore_diff_repo_same_snapshot", 
"backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish("${dbName}_1")) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish("${dbName}_1")
 
     result = sql "SELECT * FROM ${dbName}_1.${tableName}_1"
     assertEquals(result.size(), values.size());
@@ -116,9 +110,7 @@ suite("test_backup_restore_diff_repo_same_snapshot", 
"backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish("${dbName}_2")) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish("${dbName}_2")
 
     result = sql "SELECT * FROM ${dbName}_2.${tableName}_2"
     assertEquals(result.size(), values.size());
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_dup_without_default_keys.groovy
 
b/regression-test/suites/backup_restore/test_backup_restore_dup_without_default_keys.groovy
index c0f6a12f972..a0fe822f9f2 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_dup_without_default_keys.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_dup_without_default_keys.groovy
@@ -54,9 +54,7 @@ suite("test_backup_restore_dup_without_default_keys", 
"backup_restore") {
         ON (${tableName})
     """    
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
 
@@ -72,9 +70,7 @@ suite("test_backup_restore_dup_without_default_keys", 
"backup_restore") {
             "reserve_replica" = "true"
         )
     """
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
     result = sql "SELECT * FROM ${dbName}.${tableName}"
     assertEquals(result.size(), values.size());
 
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_exclude.groovy 
b/regression-test/suites/backup_restore/test_backup_restore_exclude.groovy
index c499ee244cb..de54fbfbe9e 100644
--- a/regression-test/suites/backup_restore/test_backup_restore_exclude.groovy
+++ b/regression-test/suites/backup_restore/test_backup_restore_exclude.groovy
@@ -61,9 +61,7 @@ suite("test_backup_restore_exclude", "backup_restore") {
         EXCLUDE (${backupExcludeTable})
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -86,9 +84,7 @@ suite("test_backup_restore_exclude", "backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     qt_select "SELECT * FROM ${dbName}.${backupExcludeTable} ORDER BY id"
     for (def tableName in tables) {
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_inverted_index.groovy
 
b/regression-test/suites/backup_restore/test_backup_restore_inverted_index.groovy
index 7c5d40c6066..09b9f0b31e5 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_inverted_index.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_inverted_index.groovy
@@ -52,9 +52,7 @@ suite("test_backup_restore_inverted_index", "backup_restore") 
{
         PROPERTIES ("type" = "full")
         """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
 
@@ -72,9 +70,7 @@ suite("test_backup_restore_inverted_index", "backup_restore") 
{
         )
         """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     def restore_index_comment = sql "SHOW CREATE TABLE ${dbName}.${tableName}"
 
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_keep_on_local.groovy
 
b/regression-test/suites/backup_restore/test_backup_restore_keep_on_local.groovy
index d18006c101c..5283be01738 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_keep_on_local.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_keep_on_local.groovy
@@ -51,9 +51,7 @@ suite("test_backup_restore_keep_on_local", "backup_restore") {
         ON (${tableName})
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     sql "TRUNCATE TABLE ${dbName}.${tableName}"
 
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_multi_tables.groovy 
b/regression-test/suites/backup_restore/test_backup_restore_multi_tables.groovy
index 54f08cba8e6..b4b7f78f6a0 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_multi_tables.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_multi_tables.groovy
@@ -61,9 +61,7 @@ suite("test_backup_restore_multi_tables", "backup_restore") {
         ON (${backupTables.join(",")})
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -83,9 +81,7 @@ suite("test_backup_restore_multi_tables", "backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     for (def tableName in tables) {
         result = sql "SELECT * FROM ${dbName}.${tableName}"
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_multi_tables_overwrite.groovy
 
b/regression-test/suites/backup_restore/test_backup_restore_multi_tables_overwrite.groovy
index 5eb3bc982e8..28261acfc02 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_multi_tables_overwrite.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_multi_tables_overwrite.groovy
@@ -61,9 +61,7 @@ suite("test_backup_restore_multi_tables_overwrite", 
"backup_restore") {
         ON (${backupTables.join(",")})
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -84,9 +82,7 @@ suite("test_backup_restore_multi_tables_overwrite", 
"backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     qt_select "SELECT * FROM ${dbName}.${firstTableName} ORDER BY id"
     for (def tableName in tables) {
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_partition.groovy 
b/regression-test/suites/backup_restore/test_backup_restore_partition.groovy
index 60194e34b7b..0ce37b967d6 100644
--- a/regression-test/suites/backup_restore/test_backup_restore_partition.groovy
+++ b/regression-test/suites/backup_restore/test_backup_restore_partition.groovy
@@ -65,9 +65,7 @@ suite("test_backup_restore_partition", "backup_restore") {
         )
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -87,9 +85,7 @@ suite("test_backup_restore_partition", "backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     qt_select "SELECT * FROM ${dbName}.${tableName} ORDER BY id ASC"
 
@@ -106,9 +102,7 @@ suite("test_backup_restore_partition", "backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     qt_select "SELECT * FROM ${dbName}.${tableName} ORDER BY id ASC"
 
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_reserve_dynamic_partition_false.groovy
 
b/regression-test/suites/backup_restore/test_backup_restore_reserve_dynamic_partition_false.groovy
index c51f593766f..e6c059beec3 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_reserve_dynamic_partition_false.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_reserve_dynamic_partition_false.groovy
@@ -78,9 +78,7 @@ suite("test_backup_restore_reserve_dynamic_partition_false", 
"backup_restore") {
         ON (${tableName})
     """    
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
 
@@ -97,10 +95,8 @@ suite("test_backup_restore_reserve_dynamic_partition_false", 
"backup_restore") {
             "reserve_replica" = "true"
         )
     """
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
-    
+    syncer.waitAllRestoreFinish(dbName)
+
     def restore_properties = sql "SHOW CREATE TABLE ${dbName}.${tableName}"
 
     assertTrue(restore_properties[0][1].contains("\"dynamic_partition.enable\" 
= \"false\""))
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_reserve_dynamic_partition_true.groovy
 
b/regression-test/suites/backup_restore/test_backup_restore_reserve_dynamic_partition_true.groovy
index 64362407d32..b16f90d52d4 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_reserve_dynamic_partition_true.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_reserve_dynamic_partition_true.groovy
@@ -78,9 +78,7 @@ suite("test_backup_restore_dynamic_partition_reserve_true", 
"backup_restore") {
         ON (${tableName})
     """    
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
 
@@ -97,10 +95,7 @@ suite("test_backup_restore_dynamic_partition_reserve_true", 
"backup_restore") {
             "reserve_replica" = "true"
         )
     """
-    
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
     result = sql "SELECT * FROM ${dbName}.${tableName}"
     assertEquals(result.size(), 20);
 
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_table_auto_bucket.groovy
 
b/regression-test/suites/backup_restore/test_backup_restore_table_auto_bucket.groovy
index f0c6b1e812a..f303df5f0f5 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_table_auto_bucket.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_table_auto_bucket.groovy
@@ -52,9 +52,7 @@ suite("test_backup_restore_table_auto_bucket", 
"backup_restore") {
         ON (${tableName})
     """    
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
 
@@ -70,9 +68,7 @@ suite("test_backup_restore_table_auto_bucket", 
"backup_restore") {
             "reserve_replica" = "true"
         )
     """
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     def restore_properties = sql "SHOW CREATE TABLE ${dbName}.${tableName}"
 
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_with.groovy 
b/regression-test/suites/backup_restore/test_backup_restore_with.groovy
index 1589827be00..cacb9df6de5 100644
--- a/regression-test/suites/backup_restore/test_backup_restore_with.groovy
+++ b/regression-test/suites/backup_restore/test_backup_restore_with.groovy
@@ -61,9 +61,7 @@ suite("test_backup_restore_with_view", "backup_restore") {
         TO `${repoName}`
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -81,9 +79,7 @@ suite("test_backup_restore_with_view", "backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     qt_sql "SELECT * FROM ${dbName}.${tableName} ORDER BY id ASC"
     qt_sql "SELECT * FROM ${dbName}.${viewName} ORDER BY id ASC"
diff --git 
a/regression-test/suites/backup_restore/test_backup_restore_with_two_phase_fetch_opt.groovy
 
b/regression-test/suites/backup_restore/test_backup_restore_with_two_phase_fetch_opt.groovy
index 49c3c89b351..2a9ede23269 100644
--- 
a/regression-test/suites/backup_restore/test_backup_restore_with_two_phase_fetch_opt.groovy
+++ 
b/regression-test/suites/backup_restore/test_backup_restore_with_two_phase_fetch_opt.groovy
@@ -80,9 +80,7 @@ suite("test_backup_restore_with_two_phase_fetch_opt", 
"backup_restore") {
         ON (${tableName})
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -101,9 +99,7 @@ suite("test_backup_restore_with_two_phase_fetch_opt", 
"backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     result = sql "SELECT * FROM ${dbName}.${tableName} ORDER BY dt DESC LIMIT 
5"
     assertEquals(result.size(), 5)
diff --git 
a/regression-test/suites/backup_restore/test_duplicate_backup_restore.groovy 
b/regression-test/suites/backup_restore/test_duplicate_backup_restore.groovy
index d82ad431f8e..d1f3cc9e094 100644
--- a/regression-test/suites/backup_restore/test_duplicate_backup_restore.groovy
+++ b/regression-test/suites/backup_restore/test_duplicate_backup_restore.groovy
@@ -54,9 +54,7 @@ suite("test_duplicate_backup_restore", "backup_restore") {
         PROPERTIES ("type" = "full")
         """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -72,10 +70,8 @@ suite("test_duplicate_backup_restore", "backup_restore") {
             "reserve_replica" = "true"
         )
         """
-    
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+
+    syncer.waitAllRestoreFinish(dbName)
 
     result = sql "SELECT * FROM ${dbName}.${tableName}"
     assertEquals(result.size(), values.size() + 5);
@@ -94,10 +90,8 @@ suite("test_duplicate_backup_restore", "backup_restore") {
         ON (${tableName})
         PROPERTIES ("type" = "full")
         """
-    
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+
+    syncer.waitSnapshotFinish(dbName)
 
     snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -112,9 +106,7 @@ suite("test_duplicate_backup_restore", "backup_restore") {
             "reserve_replica" = "true"
         )
         """
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
     result = sql "SELECT * FROM ${dbName}.${tableName}"
     assertEquals(result.size(), values.size() + 5 - 3)
     sql "DROP TABLE ${dbName}.${tableName} FORCE"
diff --git 
a/regression-test/suites/backup_restore/test_restore_mix_exists_and_new_table.groovy
 
b/regression-test/suites/backup_restore/test_restore_mix_exists_and_new_table.groovy
index f21baae0e52..973acc3eec5 100644
--- 
a/regression-test/suites/backup_restore/test_restore_mix_exists_and_new_table.groovy
+++ 
b/regression-test/suites/backup_restore/test_restore_mix_exists_and_new_table.groovy
@@ -60,9 +60,7 @@ suite("test_restore_mix_exists_and_new_table", 
"backup_restore") {
         ON (${tables.join(",")})
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -83,9 +81,7 @@ suite("test_restore_mix_exists_and_new_table", 
"backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     for (def tableName in tables) {
         result = sql "SELECT * FROM ${dbName}.${tableName}"
diff --git 
a/regression-test/suites/backup_restore/test_restore_to_new_table.groovy 
b/regression-test/suites/backup_restore/test_restore_to_new_table.groovy
index 7d99e9fa33f..14abb1fc33c 100644
--- a/regression-test/suites/backup_restore/test_restore_to_new_table.groovy
+++ b/regression-test/suites/backup_restore/test_restore_to_new_table.groovy
@@ -52,9 +52,7 @@ suite("test_restore_to_new_table", "backup_restore") {
         ON (${tableName})
     """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -72,9 +70,7 @@ suite("test_restore_to_new_table", "backup_restore") {
         )
     """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     result = sql "SELECT * FROM ${dbName}.${tableName}"
     assertEquals(result.size(), values.size());
diff --git 
a/regression-test/suites/backup_restore/test_unique_backup_restore.groovy 
b/regression-test/suites/backup_restore/test_unique_backup_restore.groovy
index eea0620a995..44d54fcafc3 100644
--- a/regression-test/suites/backup_restore/test_unique_backup_restore.groovy
+++ b/regression-test/suites/backup_restore/test_unique_backup_restore.groovy
@@ -54,9 +54,7 @@ suite("test_unique_backup_restore", "backup_restore") {
         PROPERTIES ("type" = "full")
         """
 
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     def snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -73,9 +71,7 @@ suite("test_unique_backup_restore", "backup_restore") {
         )
         """
 
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
 
     result = sql "SELECT * FROM ${dbName}.${tableName}"
     assertEquals(result.size(), 2)
@@ -95,9 +91,7 @@ suite("test_unique_backup_restore", "backup_restore") {
         PROPERTIES ("type" = "full")
         """
     
-    while (!syncer.checkSnapshotFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish(dbName)
 
     snapshot = syncer.getSnapshotTimestamp(repoName, snapshotName)
     assertTrue(snapshot != null)
@@ -112,9 +106,7 @@ suite("test_unique_backup_restore", "backup_restore") {
             "reserve_replica" = "true"
         )
         """
-    while (!syncer.checkAllRestoreFinish(dbName)) {
-        Thread.sleep(3000)
-    }
+    syncer.waitAllRestoreFinish(dbName)
     result = sql "SELECT * FROM ${dbName}.${tableName}"
     assertEquals(result.size(), 1)
     sql "DROP TABLE ${dbName}.${tableName} FORCE"
diff --git 
a/regression-test/suites/ccr_mow_syncer_p1/test_backup_restore.groovy 
b/regression-test/suites/ccr_mow_syncer_p1/test_backup_restore.groovy
index 547814f44fb..5d07b204c4d 100644
--- a/regression-test/suites/ccr_mow_syncer_p1/test_backup_restore.groovy
+++ b/regression-test/suites/ccr_mow_syncer_p1/test_backup_restore.groovy
@@ -60,15 +60,11 @@ suite("test_mow_backup_restore") {
             ON (${tableName})
             PROPERTIES ("type" = "full")
         """
-    while (syncer.checkSnapshotFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish()
     assertTrue(syncer.getSnapshot("${snapshotName}", "${tableName}"))
     assertTrue(syncer.restoreSnapshot(true))
-    while (syncer.checkRestoreFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitTargetRestoreFinish()
     target_sql " sync "
     res = target_sql "SELECT * FROM ${tableName}"
     assertEquals(res.size(), insert_num)
-}
\ No newline at end of file
+}
diff --git a/regression-test/suites/ccr_syncer_p1/test_backup_restore.groovy 
b/regression-test/suites/ccr_syncer_p1/test_backup_restore.groovy
index e447a2268e1..18c33cc72d0 100644
--- a/regression-test/suites/ccr_syncer_p1/test_backup_restore.groovy
+++ b/regression-test/suites/ccr_syncer_p1/test_backup_restore.groovy
@@ -59,15 +59,11 @@ suite("test_backup_restore") {
             ON (${tableName})
             PROPERTIES ("type" = "full")
         """
-    while (syncer.checkSnapshotFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitSnapshotFinish()
     assertTrue(syncer.getSnapshot("${snapshotName}", "${tableName}"))
     assertTrue(syncer.restoreSnapshot(true))
-    while (syncer.checkRestoreFinish() == false) {
-        Thread.sleep(3000)
-    }
+    syncer.waitTargetRestoreFinish()
     target_sql " sync "
     res = target_sql "SELECT * FROM ${tableName}"
     assertEquals(res.size(), insert_num)
-}
\ No newline at end of file
+}


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org


Reply via email to