This is an automated email from the ASF dual-hosted git repository. dataroaring pushed a commit to branch branch-2.1 in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-2.1 by this push: new 08b3b73c3a5 [fix](regression) Fix regression run in cloud use non-root user #34340 (#37279) 08b3b73c3a5 is described below commit 08b3b73c3a541e14acd506e7868e0bb8dc19e785 Author: deardeng <565620...@qq.com> AuthorDate: Tue Jul 9 20:48:30 2024 +0800 [fix](regression) Fix regression run in cloud use non-root user #34340 (#37279) cherry pick from #34340 --- .../org/apache/doris/regression/Config.groovy | 25 ++++++++++++++++++++++ .../org/apache/doris/regression/suite/Suite.groovy | 7 ++++-- .../doris/regression/suite/SuiteContext.groovy | 2 +- 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/regression-test/framework/src/main/groovy/org/apache/doris/regression/Config.groovy b/regression-test/framework/src/main/groovy/org/apache/doris/regression/Config.groovy index 7d8a45d7209..cfd13ac94ec 100644 --- a/regression-test/framework/src/main/groovy/org/apache/doris/regression/Config.groovy +++ b/regression-test/framework/src/main/groovy/org/apache/doris/regression/Config.groovy @@ -33,6 +33,12 @@ import static org.apache.doris.regression.ConfigOptions.* import org.apache.doris.thrift.TNetworkAddress; +enum RunMode { + UNKNOWN, + NOT_CLOUD, + CLOUD +} + @Slf4j @CompileStatic class Config { @@ -57,6 +63,8 @@ class Config { public String metaServiceHttpAddress + public RunMode isCloudMode = RunMode.UNKNOWN + public String suitePath public String dataPath public String realDataPath @@ -544,10 +552,27 @@ class Config { } } + boolean fetchRunMode() { + if (isCloudMode == RunMode.UNKNOWN) { + try { + def result = JdbcUtils.executeToMapArray(getRootConnection(), "SHOW FRONTEND CONFIG LIKE 'cloud_unique_id'") + isCloudMode = result[0].Value.toString().isEmpty() ? RunMode.NOT_CLOUD : RunMode.CLOUD + } catch (Throwable t) { + throw new IllegalStateException("Fetch server config 'cloud_unique_id' failed, jdbcUrl: ${jdbcUrl}", t) + } + } + return isCloudMode == RunMode.CLOUD + + } + Connection getConnection() { return DriverManager.getConnection(jdbcUrl, jdbcUser, jdbcPassword) } + Connection getRootConnection() { + return DriverManager.getConnection(jdbcUrl, 'root', '') + } + Connection getConnectionByDbName(String dbName) { String dbUrl = buildUrlWithDb(jdbcUrl, dbName) tryCreateDbIfNotExist(dbName) diff --git a/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Suite.groovy b/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Suite.groovy index a5a2ccb2a50..2f64ea40fc2 100644 --- a/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Suite.groovy +++ b/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Suite.groovy @@ -41,7 +41,9 @@ import org.apache.doris.regression.util.JdbcUtils import org.apache.doris.regression.util.Hdfs import org.apache.doris.regression.util.SuiteUtils import org.apache.doris.regression.util.DebugPoint +import org.apache.doris.regression.RunMode import org.junit.jupiter.api.Assertions + import org.slf4j.Logger import org.slf4j.LoggerFactory import groovy.util.logging.Slf4j @@ -1193,8 +1195,9 @@ class Suite implements GroovyInterceptable { return result.last().get(0); } - boolean isCloudCluster() { - return !getFeConfig("cloud_unique_id").isEmpty() + boolean isCloudMode() { + // APPR: in 2.1 branch not have cloud, so just return false + return false } String getFeConfig(String key) { diff --git a/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/SuiteContext.groovy b/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/SuiteContext.groovy index 906e90fcee0..d9268643a44 100644 --- a/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/SuiteContext.groovy +++ b/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/SuiteContext.groovy @@ -144,7 +144,7 @@ class SuiteContext implements Closeable { if (threadConnInfo == null) { threadConnInfo = new ConnectionInfo() threadConnInfo.conn = config.getConnectionByDbName(dbName) - threadConnInfo.username = config.jdbcUser + threadConnInfo.username = config.jdbcUser threadConnInfo.password = config.jdbcPassword threadLocalConn.set(threadConnInfo) } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org