You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by yi...@apache.org on 2022/07/04 14:36:16 UTC

[doris] branch master updated: [regression] modify compaction cases, not depend on beHttpAddress (#10553)

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

yiguolei 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 9c990b073f [regression] modify compaction cases, not depend on beHttpAddress (#10553)
9c990b073f is described below

commit 9c990b073fd44e9eb35e305bff715c62c12f3da2
Author: Dongyang Li <he...@qq.com>
AuthorDate: Mon Jul 4 22:36:12 2022 +0800

    [regression] modify compaction cases, not depend on beHttpAddress (#10553)
---
 .../compaction/test_compaction_agg_keys.groovy     | 37 ++++++++++++++++++----
 .../compaction/test_compaction_dup_keys.groovy     | 37 ++++++++++++++++++----
 .../compaction/test_compaction_uniq_keys.groovy    | 37 ++++++++++++++++++----
 3 files changed, 90 insertions(+), 21 deletions(-)

diff --git a/regression-test/suites/compaction/test_compaction_agg_keys.groovy b/regression-test/suites/compaction/test_compaction_agg_keys.groovy
index 3eed24141e..6e1ffddd98 100644
--- a/regression-test/suites/compaction/test_compaction_agg_keys.groovy
+++ b/regression-test/suites/compaction/test_compaction_agg_keys.groovy
@@ -21,10 +21,25 @@ suite("test_compaction_agg_keys") {
     def tableName = "compaction_agg_keys_regression_test"
 
     try {
+        //BackendId,Cluster,IP,HeartbeatPort,BePort,HttpPort,BrpcPort,LastStartTime,LastHeartbeat,Alive,SystemDecommissioned,ClusterDecommissioned,TabletNum,DataUsedCapacity,AvailCapacity,TotalCapacity,UsedPct,MaxDiskUsedPct,Tag,ErrMsg,Version,Status
+        String[][] backends = sql """ show backends; """
+        assertTrue(backends.size() > 0)
+        String backend_id;
+        def backendId_to_backendIP = [:]
+        def backendId_to_backendHttpPort = [:]
+        for (String[] backend in backends) {
+            backendId_to_backendIP.put(backend[0], backend[2])
+            backendId_to_backendHttpPort.put(backend[0], backend[5])
+        }
+
+        backend_id = backendId_to_backendIP.keySet()[0]
         StringBuilder showConfigCommand = new StringBuilder();
         showConfigCommand.append("curl -X GET http://")
-        showConfigCommand.append(context.config.beHttpAddress)
+        showConfigCommand.append(backendId_to_backendIP.get(backend_id))
+        showConfigCommand.append(":")
+        showConfigCommand.append(backendId_to_backendHttpPort.get(backend_id))
         showConfigCommand.append("/api/show_config")
+        logger.info(showConfigCommand.toString())
         def process = showConfigCommand.toString().execute()
         int code = process.waitFor()
         String err = IOGroovyMethods.getText(new BufferedReader(new InputStreamReader(process.getErrorStream())));
@@ -95,14 +110,19 @@ suite("test_compaction_agg_keys") {
             """
 
         qt_select_default """ SELECT * FROM ${tableName} t ORDER BY user_id; """
+
+        //TabletId,ReplicaId,BackendId,SchemaHash,Version,LstSuccessVersion,LstFailedVersion,LstFailedTime,DataSize,RowCount,State,LstConsistencyCheckTime,CheckVersion,VersionCount,PathHash,MetaUrl,CompactionStatus
         String[][] tablets = sql """ show tablets from ${tableName}; """
 
         // trigger compactions for all tablets in ${tableName}
         for (String[] tablet in tablets) {
             String tablet_id = tablet[0]
+            backend_id = tablet[2]
             StringBuilder sb = new StringBuilder();
             sb.append("curl -X POST http://")
-            sb.append(context.config.beHttpAddress)
+            sb.append(backendId_to_backendIP.get(backend_id))
+            sb.append(":")
+            sb.append(backendId_to_backendHttpPort.get(backend_id))
             sb.append("/api/compaction/run?tablet_id=")
             sb.append(tablet_id)
             sb.append("&compact_type=cumulative")
@@ -130,13 +150,17 @@ suite("test_compaction_agg_keys") {
             do {
                 Thread.sleep(1000)
                 String tablet_id = tablet[0]
+                backend_id = tablet[2]
                 StringBuilder sb = new StringBuilder();
                 sb.append("curl -X GET http://")
-                sb.append(context.config.beHttpAddress)
+                sb.append(backendId_to_backendIP.get(backend_id))
+                sb.append(":")
+                sb.append(backendId_to_backendHttpPort.get(backend_id))
                 sb.append("/api/compaction/run_status?tablet_id=")
                 sb.append(tablet_id)
 
                 String command = sb.toString()
+                logger.info(command)
                 process = command.execute()
                 code = process.waitFor()
                 err = IOGroovyMethods.getText(new BufferedReader(new InputStreamReader(process.getErrorStream())));
@@ -153,10 +177,9 @@ suite("test_compaction_agg_keys") {
         for (String[] tablet in tablets) {
             String tablet_id = tablet[0]
             StringBuilder sb = new StringBuilder();
-            sb.append("curl -X GET http://")
-            sb.append(context.config.beHttpAddress)
-            sb.append("/api/compaction/show?tablet_id=")
-            sb.append(tablet_id)
+            def compactionStatusUrlIndex = 16
+            sb.append("curl -X GET ")
+            sb.append(tablet[compactionStatusUrlIndex])
             String command = sb.toString()
             // wait for cleaning stale_rowsets
             process = command.execute()
diff --git a/regression-test/suites/compaction/test_compaction_dup_keys.groovy b/regression-test/suites/compaction/test_compaction_dup_keys.groovy
index d4a37969fa..4aa9931ae1 100644
--- a/regression-test/suites/compaction/test_compaction_dup_keys.groovy
+++ b/regression-test/suites/compaction/test_compaction_dup_keys.groovy
@@ -21,10 +21,25 @@ suite("test_compaction_dup_keys") {
     def tableName = "compaction_dup_keys_regression_test"
 
     try {
+        //BackendId,Cluster,IP,HeartbeatPort,BePort,HttpPort,BrpcPort,LastStartTime,LastHeartbeat,Alive,SystemDecommissioned,ClusterDecommissioned,TabletNum,DataUsedCapacity,AvailCapacity,TotalCapacity,UsedPct,MaxDiskUsedPct,Tag,ErrMsg,Version,Status
+        String[][] backends = sql """ show backends; """
+        assertTrue(backends.size() > 0)
+        String backend_id;
+        def backendId_to_backendIP = [:]
+        def backendId_to_backendHttpPort = [:]
+        for (String[] backend in backends) {
+            backendId_to_backendIP.put(backend[0], backend[2])
+            backendId_to_backendHttpPort.put(backend[0], backend[5])
+        }
+
+        backend_id = backendId_to_backendIP.keySet()[0]
         StringBuilder showConfigCommand = new StringBuilder();
         showConfigCommand.append("curl -X GET http://")
-        showConfigCommand.append(context.config.beHttpAddress)
+        showConfigCommand.append(backendId_to_backendIP.get(backend_id))
+        showConfigCommand.append(":")
+        showConfigCommand.append(backendId_to_backendHttpPort.get(backend_id))
         showConfigCommand.append("/api/show_config")
+        logger.info(showConfigCommand.toString())
         def process = showConfigCommand.toString().execute()
         int code = process.waitFor()
         String err = IOGroovyMethods.getText(new BufferedReader(new InputStreamReader(process.getErrorStream())));
@@ -93,14 +108,19 @@ suite("test_compaction_dup_keys") {
             """
 
         qt_select_default """ SELECT * FROM ${tableName} t ORDER BY user_id,date,city,age,sex,last_visit_date,last_update_date,last_visit_date_not_null,cost,max_dwell_time,min_dwell_time; """
+
+        //TabletId,ReplicaId,BackendId,SchemaHash,Version,LstSuccessVersion,LstFailedVersion,LstFailedTime,DataSize,RowCount,State,LstConsistencyCheckTime,CheckVersion,VersionCount,PathHash,MetaUrl,CompactionStatus
         String[][] tablets = sql """ show tablets from ${tableName}; """
 
         // trigger compactions for all tablets in ${tableName}
         for (String[] tablet in tablets) {
             String tablet_id = tablet[0]
+            backend_id = tablet[2]
             StringBuilder sb = new StringBuilder();
             sb.append("curl -X POST http://")
-            sb.append(context.config.beHttpAddress)
+            sb.append(backendId_to_backendIP.get(backend_id))
+            sb.append(":")
+            sb.append(backendId_to_backendHttpPort.get(backend_id))
             sb.append("/api/compaction/run?tablet_id=")
             sb.append(tablet_id)
             sb.append("&compact_type=cumulative")
@@ -128,13 +148,17 @@ suite("test_compaction_dup_keys") {
             do {
                 Thread.sleep(1000)
                 String tablet_id = tablet[0]
+                backend_id = tablet[2]
                 StringBuilder sb = new StringBuilder();
                 sb.append("curl -X GET http://")
-                sb.append(context.config.beHttpAddress)
+                sb.append(backendId_to_backendIP.get(backend_id))
+                sb.append(":")
+                sb.append(backendId_to_backendHttpPort.get(backend_id))
                 sb.append("/api/compaction/run_status?tablet_id=")
                 sb.append(tablet_id)
 
                 String command = sb.toString()
+                logger.info(command)
                 process = command.execute()
                 code = process.waitFor()
                 err = IOGroovyMethods.getText(new BufferedReader(new InputStreamReader(process.getErrorStream())));
@@ -151,10 +175,9 @@ suite("test_compaction_dup_keys") {
         for (String[] tablet in tablets) {
             String tablet_id = tablet[0]
             StringBuilder sb = new StringBuilder();
-            sb.append("curl -X GET http://")
-            sb.append(context.config.beHttpAddress)
-            sb.append("/api/compaction/show?tablet_id=")
-            sb.append(tablet_id)
+            def compactionStatusUrlIndex = 16
+            sb.append("curl -X GET ")
+            sb.append(tablet[compactionStatusUrlIndex])
             String command = sb.toString()
             // wait for cleaning stale_rowsets
             process = command.execute()
diff --git a/regression-test/suites/compaction/test_compaction_uniq_keys.groovy b/regression-test/suites/compaction/test_compaction_uniq_keys.groovy
index 1960a98c18..913e919d56 100644
--- a/regression-test/suites/compaction/test_compaction_uniq_keys.groovy
+++ b/regression-test/suites/compaction/test_compaction_uniq_keys.groovy
@@ -21,10 +21,25 @@ suite("test_compaction_uniq_keys") {
     def tableName = "compaction_uniq_keys_regression_test"
 
     try {
+        //BackendId,Cluster,IP,HeartbeatPort,BePort,HttpPort,BrpcPort,LastStartTime,LastHeartbeat,Alive,SystemDecommissioned,ClusterDecommissioned,TabletNum,DataUsedCapacity,AvailCapacity,TotalCapacity,UsedPct,MaxDiskUsedPct,Tag,ErrMsg,Version,Status
+        String[][] backends = sql """ show backends; """
+        assertTrue(backends.size() > 0)
+        String backend_id;
+        def backendId_to_backendIP = [:]
+        def backendId_to_backendHttpPort = [:]
+        for (String[] backend in backends) {
+            backendId_to_backendIP.put(backend[0], backend[2])
+            backendId_to_backendHttpPort.put(backend[0], backend[5])
+        }
+
+        backend_id = backendId_to_backendIP.keySet()[0]
         StringBuilder showConfigCommand = new StringBuilder();
         showConfigCommand.append("curl -X GET http://")
-        showConfigCommand.append(context.config.beHttpAddress)
+        showConfigCommand.append(backendId_to_backendIP.get(backend_id))
+        showConfigCommand.append(":")
+        showConfigCommand.append(backendId_to_backendHttpPort.get(backend_id))
         showConfigCommand.append("/api/show_config")
+        logger.info(showConfigCommand.toString())
         def process = showConfigCommand.toString().execute()
         int code = process.waitFor()
         String err = IOGroovyMethods.getText(new BufferedReader(new InputStreamReader(process.getErrorStream())));
@@ -93,14 +108,19 @@ suite("test_compaction_uniq_keys") {
             """
 
         qt_select_default """ SELECT * FROM ${tableName} t ORDER BY user_id; """
+
+        //TabletId,ReplicaId,BackendId,SchemaHash,Version,LstSuccessVersion,LstFailedVersion,LstFailedTime,DataSize,RowCount,State,LstConsistencyCheckTime,CheckVersion,VersionCount,PathHash,MetaUrl,CompactionStatus
         String[][] tablets = sql """ show tablets from ${tableName}; """
 
         // trigger compactions for all tablets in ${tableName}
         for (String[] tablet in tablets) {
             String tablet_id = tablet[0]
+            backend_id = tablet[2]
             StringBuilder sb = new StringBuilder();
             sb.append("curl -X POST http://")
-            sb.append(context.config.beHttpAddress)
+            sb.append(backendId_to_backendIP.get(backend_id))
+            sb.append(":")
+            sb.append(backendId_to_backendHttpPort.get(backend_id))
             sb.append("/api/compaction/run?tablet_id=")
             sb.append(tablet_id)
             sb.append("&compact_type=cumulative")
@@ -128,13 +148,17 @@ suite("test_compaction_uniq_keys") {
             do {
                 Thread.sleep(1000)
                 String tablet_id = tablet[0]
+                backend_id = tablet[2]
                 StringBuilder sb = new StringBuilder();
                 sb.append("curl -X GET http://")
-                sb.append(context.config.beHttpAddress)
+                sb.append(backendId_to_backendIP.get(backend_id))
+                sb.append(":")
+                sb.append(backendId_to_backendHttpPort.get(backend_id))
                 sb.append("/api/compaction/run_status?tablet_id=")
                 sb.append(tablet_id)
 
                 String command = sb.toString()
+                logger.info(command)
                 process = command.execute()
                 code = process.waitFor()
                 err = IOGroovyMethods.getText(new BufferedReader(new InputStreamReader(process.getErrorStream())));
@@ -151,10 +175,9 @@ suite("test_compaction_uniq_keys") {
         for (String[] tablet in tablets) {
             String tablet_id = tablet[0]
             StringBuilder sb = new StringBuilder();
-            sb.append("curl -X GET http://")
-            sb.append(context.config.beHttpAddress)
-            sb.append("/api/compaction/show?tablet_id=")
-            sb.append(tablet_id)
+            def compactionStatusUrlIndex = 16
+            sb.append("curl -X GET ")
+            sb.append(tablet[compactionStatusUrlIndex])
             String command = sb.toString()
             // wait for cleaning stale_rowsets
             process = command.execute()


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