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

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


The following commit(s) were added to refs/heads/master by this push:
     new 6a005b60728 [fix](regression test) test_alter_colocate_group due to 
force_olap_table_replication_num (#35835)
6a005b60728 is described below

commit 6a005b60728de5f9b21dc646ae039bb69ca35d73
Author: yujun <[email protected]>
AuthorDate: Wed Jun 5 08:53:05 2024 +0800

    [fix](regression test) test_alter_colocate_group due to 
force_olap_table_replication_num (#35835)
    
    ```
    Exception in alter_p2/test_alter_colocate_group.groovy(line 94):
    
    )
    DISTRIBUTED BY HASH(k2) BUCKETS 5
    PROPERTIES
    (
    "colocate_with" = "group_2",
    "replication_num" = "1"
    );
    """
    
    sql """
    ^^^^^^^^^^^^^^^^^^^^^^^^^ERROR LINE^^^^^^^^^^^^^^^^^^^^^^^^^
    CREATE TABLE tbl3
    (
    `uuid` varchar(255) NULL,
    `action_datetime` date NULL
    )
    DUPLICATE KEY(uuid)
    PARTITION BY RANGE(action_datetime)()
    DISTRIBUTED BY HASH(uuid) BUCKETS 4
    PROPERTIES
    (
    
    Exception:
    java.sql.SQLSyntaxErrorException: Colocate tables must have same 
replication allocation:
    
    { tag.location.default: 1 }
    should be
    
    { tag.location.default: 3 }
    at 
com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120)
    ```
---
 .../alter_p2/test_alter_colocate_group.groovy      | 42 +++++++++++++++-------
 1 file changed, 30 insertions(+), 12 deletions(-)

diff --git a/regression-test/suites/alter_p2/test_alter_colocate_group.groovy 
b/regression-test/suites/alter_p2/test_alter_colocate_group.groovy
index 94ca9f24d6d..1b36e7242d6 100644
--- a/regression-test/suites/alter_p2/test_alter_colocate_group.groovy
+++ b/regression-test/suites/alter_p2/test_alter_colocate_group.groovy
@@ -58,6 +58,12 @@ suite ("test_alter_colocate_group") {
     sql " DROP TABLE IF EXISTS tbl2 FORCE; "
     sql " DROP TABLE IF EXISTS tbl3 FORCE; "
 
+    def replication_num = 1
+    def forceReplicaNum = 
getFeConfig('force_olap_table_replication_num').toInteger()
+    if (forceReplicaNum > 0) {
+        replication_num = forceReplicaNum
+    }
+
     sql """
         CREATE TABLE tbl1
         (
@@ -68,7 +74,7 @@ suite ("test_alter_colocate_group") {
         PROPERTIES
         (
             "colocate_with" = "group_1",
-            "replication_num" = "1"
+            "replication_num" = "${replication_num}"
         );
     """
 
@@ -87,7 +93,7 @@ suite ("test_alter_colocate_group") {
         PROPERTIES
         (
             "colocate_with" = "group_2",
-            "replication_num" = "1"
+            "replication_num" = "${replication_num}"
         );
     """
 
@@ -103,13 +109,13 @@ suite ("test_alter_colocate_group") {
         PROPERTIES
         (
             "colocate_with" = "group_3",
-            "replication_num" = "1",
+            "replication_num" = "${replication_num}",
             "dynamic_partition.enable" = "true",
             "dynamic_partition.time_unit" = "DAY",
             "dynamic_partition.end" = "2",
             "dynamic_partition.prefix" = "p",
             "dynamic_partition.buckets" = "4",
-            "dynamic_partition.replication_num" = "1"
+            "dynamic_partition.replication_num" = "${replication_num}"
          );
     """
 
@@ -140,6 +146,16 @@ suite ("test_alter_colocate_group") {
         }
     }
 
+    def beNum = sql_return_maparray("show backends").size()
+    def modifyReplicaNum = -1
+    for (int i=1; i <= beNum; i++) {
+        if (i != replication_num) {
+            modifyReplicaNum = i
+            break
+        }
+    }
+    logger.info("old replica num ${replication_num}, modify replica num 
${modifyReplicaNum}")
+
     for (int i = 1; i <= 3; i++) {
         def groupName = "regression_test_alter_p2.group_${i}"
         checkGroupsReplicaAlloc(groupName, 1)
@@ -157,15 +173,17 @@ suite ("test_alter_colocate_group") {
             exception "Failed to find enough host"
         }
 
-        test {
-            sql """
-              ALTER COLOCATE GROUP ${groupName}
-              SET ( "replication_num" = "3" );
-            """
-        }
+        if (modifyReplicaNum > 0) {
+            test {
+                sql """
+                  ALTER COLOCATE GROUP ${groupName}
+                  SET ( "replication_num" = "${modifyReplicaNum}" );
+                """
+            }
 
-        checkGroupsReplicaAlloc(groupName, 3)
-        checkTableReplicaAlloc(tableName, hasDynamicPart, 3)
+            checkGroupsReplicaAlloc(groupName, modifyReplicaNum)
+            checkTableReplicaAlloc(tableName, hasDynamicPart, modifyReplicaNum)
+        }
     }
 
     sql " DROP TABLE IF EXISTS tbl1 FORCE; "


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

Reply via email to