This is an automated email from the ASF dual-hosted git repository.
morningman pushed a commit to branch branch-4.0
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-4.0 by this push:
new 2b34904919a branch-4.0: [fix](test) fix flaky p2 test cases in
branch-4.0 (#64997)
2b34904919a is described below
commit 2b34904919a2c0d74d1197e818ef4f6172b40c94
Author: Mingyu Chen (Rayner) <[email protected]>
AuthorDate: Wed Jul 1 17:33:27 2026 +0800
branch-4.0: [fix](test) fix flaky p2 test cases in branch-4.0 (#64997)
---
.../create_table_use_dynamic_partition_by_hdfs.groovy | 3 ++-
.../create_table_use_policy_by_hdfs.groovy | 3 ++-
.../suites/cold_heat_separation_p2/load_colddata_to_hdfs.groovy | 3 ++-
.../table_modify_resouce_and_policy_by_hdfs.groovy | 3 ++-
.../external_table_p0/cache/test_file_cache_query_limit.groovy | 6 +++++-
.../suites/external_table_p0/tvf/test_http_tvf.groovy | 9 ++++++++-
regression-test/suites/load_p2/tvf/test_s3_tvf.groovy | 5 ++++-
.../ssb_unique_load_zstd/four/load_four_step.groovy | 2 ++
.../ssb_unique_load_zstd/three/load_three_step.groovy | 1 +
9 files changed, 28 insertions(+), 7 deletions(-)
diff --git
a/regression-test/suites/cold_heat_separation_p2/create_table_use_dynamic_partition_by_hdfs.groovy
b/regression-test/suites/cold_heat_separation_p2/create_table_use_dynamic_partition_by_hdfs.groovy
index bf811b217fb..9108b6e8d22 100644
---
a/regression-test/suites/cold_heat_separation_p2/create_table_use_dynamic_partition_by_hdfs.groovy
+++
b/regression-test/suites/cold_heat_separation_p2/create_table_use_dynamic_partition_by_hdfs.groovy
@@ -20,7 +20,8 @@ import java.time.LocalDate;
suite("cold_heat_dynamic_partition_by_hdfs") {
if (!enableHdfs()) {
- throw new RuntimeException("Hdfs is not enabled, if you want to skip
this case, please mute it in regression-conf.groovy");
+ logger.info("Hdfs is not enabled, skip
cold_heat_dynamic_partition_by_hdfs")
+ return
}
def fetchBeHttp = { check_func, meta_url ->
def i = meta_url.indexOf("/api")
diff --git
a/regression-test/suites/cold_heat_separation_p2/create_table_use_policy_by_hdfs.groovy
b/regression-test/suites/cold_heat_separation_p2/create_table_use_policy_by_hdfs.groovy
index 43e9e26cc94..37fa7243d19 100644
---
a/regression-test/suites/cold_heat_separation_p2/create_table_use_policy_by_hdfs.groovy
+++
b/regression-test/suites/cold_heat_separation_p2/create_table_use_policy_by_hdfs.groovy
@@ -19,7 +19,8 @@ import org.codehaus.groovy.runtime.IOGroovyMethods
suite("create_table_use_policy_by_hdfs") {
if (!enableHdfs()) {
- throw new RuntimeException("Hdfs is not enabled, if you want to skip
this case, please mute it in regression-conf.groovy");
+ logger.info("Hdfs is not enabled, skip
create_table_use_policy_by_hdfs")
+ return
}
def fetchBeHttp = { check_func, meta_url ->
def i = meta_url.indexOf("/api")
diff --git
a/regression-test/suites/cold_heat_separation_p2/load_colddata_to_hdfs.groovy
b/regression-test/suites/cold_heat_separation_p2/load_colddata_to_hdfs.groovy
index 089c89b72d5..2fa150afcac 100644
---
a/regression-test/suites/cold_heat_separation_p2/load_colddata_to_hdfs.groovy
+++
b/regression-test/suites/cold_heat_separation_p2/load_colddata_to_hdfs.groovy
@@ -19,7 +19,8 @@ import org.codehaus.groovy.runtime.IOGroovyMethods
suite("load_colddata_to_hdfs") {
if (!enableHdfs()) {
- throw new RuntimeException("Hdfs is not enabled, if you want to skip
this case, please mute it in regression-conf.groovy");
+ logger.info("Hdfs is not enabled, skip load_colddata_to_hdfs")
+ return
}
def fetchBeHttp = { check_func, meta_url ->
diff --git
a/regression-test/suites/cold_heat_separation_p2/table_modify_resouce_and_policy_by_hdfs.groovy
b/regression-test/suites/cold_heat_separation_p2/table_modify_resouce_and_policy_by_hdfs.groovy
index 574d9ef44fc..3efd3d2cc9b 100644
---
a/regression-test/suites/cold_heat_separation_p2/table_modify_resouce_and_policy_by_hdfs.groovy
+++
b/regression-test/suites/cold_heat_separation_p2/table_modify_resouce_and_policy_by_hdfs.groovy
@@ -19,7 +19,8 @@ import org.codehaus.groovy.runtime.IOGroovyMethods
suite("table_modify_resouce_by_hdfs") {
if (!enableHdfs()) {
- throw new RuntimeException("Hdfs is not enabled, if you want to skip
this case, please mute it in regression-conf.groovy");
+ logger.info("Hdfs is not enabled, skip table_modify_resouce_by_hdfs")
+ return
}
def fetchBeHttp = { check_func, meta_url ->
def i = meta_url.indexOf("/api")
diff --git
a/regression-test/suites/external_table_p0/cache/test_file_cache_query_limit.groovy
b/regression-test/suites/external_table_p0/cache/test_file_cache_query_limit.groovy
index 540c07fab66..cdeb9e9a77c 100644
---
a/regression-test/suites/external_table_p0/cache/test_file_cache_query_limit.groovy
+++
b/regression-test/suites/external_table_p0/cache/test_file_cache_query_limit.groovy
@@ -256,7 +256,11 @@ suite("test_file_cache_query_limit",
"external_docker,hive,external_docker_hive,
logger.info("==================== Start running file cache query limit
test 1 ====================")
- def fileCacheQueryLimitPercentTest1 = (fileCacheQueryLimitPercent / 2) as
Long
+ // file_cache_query_limit_percent only accepts integers in [1, 100]. When
the base query caches
+ // less than 2% of file_cache_capacity, "half of that percent" truncates
to 0 and the SET below is
+ // rejected ("should be between 1 and 100"). Clamp to at least 1 so the
limit stays valid and still
+ // caps the query below its natural footprint.
+ def fileCacheQueryLimitPercentTest1 = Math.max(1L,
(fileCacheQueryLimitPercent / 2) as Long)
logger.info("file_cache_query_limit_percent_test1: " +
fileCacheQueryLimitPercentTest1)
// Clear file cache
diff --git a/regression-test/suites/external_table_p0/tvf/test_http_tvf.groovy
b/regression-test/suites/external_table_p0/tvf/test_http_tvf.groovy
index 133b992e8c4..447963427c4 100644
--- a/regression-test/suites/external_table_p0/tvf/test_http_tvf.groovy
+++ b/regression-test/suites/external_table_p0/tvf/test_http_tvf.groovy
@@ -24,6 +24,14 @@ import java.nio.file.Paths
import java.net.InetSocketAddress
suite("test_http_tvf", "p2") {
+ def backendId_to_backendIP = [:]
+ def backendId_to_backendHttpPort = [:]
+ getBackendIpHttpPort(backendId_to_backendIP, backendId_to_backendHttpPort)
+ if (backendId_to_backendIP.size() > 1) {
+ logger.info("Skip test_http_tvf because BE node count is
${backendId_to_backendIP.size()}, only run with single BE")
+ return
+ }
+
// csv
qt_sql01 """
SELECT *
@@ -245,4 +253,3 @@ suite("test_http_tvf", "p2") {
) order by text limit 1;
"""
}
-
diff --git a/regression-test/suites/load_p2/tvf/test_s3_tvf.groovy
b/regression-test/suites/load_p2/tvf/test_s3_tvf.groovy
index 8c09187a44b..ec7e703688a 100644
--- a/regression-test/suites/load_p2/tvf/test_s3_tvf.groovy
+++ b/regression-test/suites/load_p2/tvf/test_s3_tvf.groovy
@@ -935,8 +935,11 @@ suite("test_s3_tvf", "p2") {
try {
sql """${sqlStr}"""
} catch (Exception ex) {
- assertTrue(attribute.expectFiled)
logger.info("error: ", ex)
+ if (!attribute.expectFiled) {
+ logger.info("unexpected failed sql: ${sqlStr}")
+ throw ex
+ }
}
qt_select """ select count(*) from $attribute.tableName """
++i
diff --git
a/regression-test/suites/unique_with_mow_p2/ssb_unique_load_zstd/four/load_four_step.groovy
b/regression-test/suites/unique_with_mow_p2/ssb_unique_load_zstd/four/load_four_step.groovy
index d0e93c322cc..55302a00c88 100644
---
a/regression-test/suites/unique_with_mow_p2/ssb_unique_load_zstd/four/load_four_step.groovy
+++
b/regression-test/suites/unique_with_mow_p2/ssb_unique_load_zstd/four/load_four_step.groovy
@@ -64,6 +64,7 @@ suite("load_four_step") {
def stateResult = sql "show load where Label = '${loadLabel}'"
def loadState = stateResult[stateResult.size() -
1][2].toString()
if ('CANCELLED'.equalsIgnoreCase(loadState)) {
+ logger.info("load ${loadLabel} cancelled, stateResult:
${stateResult}")
throw new IllegalStateException("load ${loadLabel}
failed.")
} else if ('FINISHED'.equalsIgnoreCase(loadState)) {
break
@@ -96,6 +97,7 @@ suite("load_four_step") {
def stateResult = sql "show load where Label = '${loadLabel}'"
def loadState = stateResult[stateResult.size() - 1][2].toString()
if ('CANCELLED'.equalsIgnoreCase(loadState)) {
+ logger.info("load ${loadLabel} cancelled, stateResult:
${stateResult}")
throw new IllegalStateException("load ${loadLabel} failed.")
} else if ('FINISHED'.equalsIgnoreCase(loadState)) {
break
diff --git
a/regression-test/suites/unique_with_mow_p2/ssb_unique_load_zstd/three/load_three_step.groovy
b/regression-test/suites/unique_with_mow_p2/ssb_unique_load_zstd/three/load_three_step.groovy
index 40225f73433..3a26ae503bd 100644
---
a/regression-test/suites/unique_with_mow_p2/ssb_unique_load_zstd/three/load_three_step.groovy
+++
b/regression-test/suites/unique_with_mow_p2/ssb_unique_load_zstd/three/load_three_step.groovy
@@ -61,6 +61,7 @@ suite("load_three_step") {
def stateResult = sql "show load where Label = '${loadLabel}'"
def loadState = stateResult[stateResult.size() -
1][2].toString()
if ('CANCELLED'.equalsIgnoreCase(loadState)) {
+ logger.info("load ${loadLabel} cancelled, stateResult:
${stateResult}")
throw new IllegalStateException("load ${loadLabel}
failed.")
} else if ('FINISHED'.equalsIgnoreCase(loadState)) {
break
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]