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

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


The following commit(s) were added to refs/heads/branch-2.0 by this push:
     new fecc6055c85 [Enhance](regression)add external_docker tag for some 
external case (#26106)
fecc6055c85 is described below

commit fecc6055c8506c17ed2a7c49fa059b8d39efb51b
Author: zhangguoqiang <18372634...@163.com>
AuthorDate: Tue Oct 31 19:33:48 2023 +0800

    [Enhance](regression)add external_docker tag for some external case (#26106)
    
    add external_docker tag for some external case
---
 .../docker-compose/mysql/init/01-drop-db.sql       |  1 +
 .../docker-compose/mysql/init/02-create-db.sql     |  1 +
 .../docker-compose/mysql/init/03-create-table.sql  | 14 +++++
 .../docker-compose/mysql/init/04-insert.sql        |  6 +++
 .../docker-compose/sqlserver/init/04-insert.sql    |  1 +
 .../docker-compose/sqlserver/sqlserver.yaml.tpl    | 27 +++++++++-
 .../paimon/test_paimon_catalog.out                 |  2 +-
 .../external_table_p0/es/test_es_query.groovy      | 32 ++++++------
 .../es/test_es_query_nereids.groovy                | 29 ++++++-----
 .../es/test_es_query_no_http_url.groovy            | 59 +++++++++++-----------
 .../hive/hive_tpch_sf1_orc.groovy                  |  2 +-
 .../hive/hive_tpch_sf1_parquet.groovy              |  2 +-
 .../hive/test_different_column_orders.groovy       |  6 ++-
 .../hive/test_different_parquet_types.groovy       |  6 +--
 .../hive/test_hive_basic_type.groovy               |  2 +-
 .../external_table_p0/hive/test_hive_orc.groovy    |  8 +--
 .../external_table_p0/hive/test_hive_other.groovy  |  6 ++-
 .../hive/test_hive_parquet.groovy                  |  6 ++-
 .../hive/test_hive_partitions.groovy               |  6 ++-
 .../hive/test_transactional_hive.groovy            |  6 ++-
 .../jdbc/test_clickhouse_jdbc_catalog.groovy       | 12 +++--
 .../jdbc/test_jdbc_query_mysql.groovy              |  2 +-
 .../jdbc/test_jdbc_query_pg.groovy                 |  2 +-
 .../jdbc/test_mysql_jdbc_catalog.groovy            | 44 +++++++++-------
 .../jdbc/test_mysql_jdbc_catalog_nereids.groovy    | 16 ++++--
 .../jdbc/test_oracle_jdbc_catalog.groovy           | 34 ++++++++-----
 .../jdbc/test_pg_jdbc_catalog.groovy               | 40 ++++++++-------
 .../jdbc/test_sqlserver_jdbc_catalog.groovy        | 20 +++++---
 .../paimon/test_paimon_catalog.groovy              |  6 ++-
 .../external_table_p0/tvf/test_backends_tvf.groovy |  2 +-
 .../external_table_p0/tvf/test_catalogs_tvf.groovy |  2 +-
 .../tvf/test_create_view_from_tvf.groovy           |  2 +-
 .../tvf/test_frontends_tvf.groovy                  |  2 +-
 .../external_table_p0/tvf/test_hdfs_tvf.groovy     |  2 +-
 .../test_insert_from_tvf_with_common_user.groovy   |  2 +-
 .../tvf/test_local_tvf_with_complex_type.groovy    |  2 +-
 ...t_local_tvf_with_complex_type_element_at.groovy |  2 +-
 ...l_tvf_with_complex_type_insertinto_doris.groovy |  2 +-
 .../external_table_p0/tvf/test_numbers.groovy      |  2 +-
 39 files changed, 259 insertions(+), 159 deletions(-)

diff --git a/docker/thirdparties/docker-compose/mysql/init/01-drop-db.sql 
b/docker/thirdparties/docker-compose/mysql/init/01-drop-db.sql
index d0db4a7e1ac..b399ce00e51 100644
--- a/docker/thirdparties/docker-compose/mysql/init/01-drop-db.sql
+++ b/docker/thirdparties/docker-compose/mysql/init/01-drop-db.sql
@@ -16,3 +16,4 @@
 -- under the License.
 
 drop database if exists doris_test;
+drop database if exists show_test_do_not_modify;
\ No newline at end of file
diff --git a/docker/thirdparties/docker-compose/mysql/init/02-create-db.sql 
b/docker/thirdparties/docker-compose/mysql/init/02-create-db.sql
index f87b6922d9f..6ed6f967578 100644
--- a/docker/thirdparties/docker-compose/mysql/init/02-create-db.sql
+++ b/docker/thirdparties/docker-compose/mysql/init/02-create-db.sql
@@ -16,3 +16,4 @@
 -- under the License.
 
 create database doris_test;
+create database show_test_do_not_modify;
\ No newline at end of file
diff --git a/docker/thirdparties/docker-compose/mysql/init/03-create-table.sql 
b/docker/thirdparties/docker-compose/mysql/init/03-create-table.sql
index 0b5b6bb6364..484391f8a19 100644
--- a/docker/thirdparties/docker-compose/mysql/init/03-create-table.sql
+++ b/docker/thirdparties/docker-compose/mysql/init/03-create-table.sql
@@ -308,3 +308,17 @@ CREATE TABLE doris_test.dt_null (
 CREATE VIEW doris_test.mysql_view as
 select 10086 as col_1, 4294967295 as col_2, tinyint_u as col_3  from 
doris_test.all_types where tinyint_u=201;
 
+
+CREATE TABLE show_test_do_not_modify.ex_tb0 (
+  `id` int PRIMARY KEY,
+  `name` varchar(128)
+);
+
+CREATE TABLE show_test_do_not_modify.ex_tb1 (
+  id varchar(128)
+);
+
+CREATE TABLE show_test_do_not_modify.ex_tb2 (
+  id int,
+  count_value varchar(20)
+);
diff --git a/docker/thirdparties/docker-compose/mysql/init/04-insert.sql 
b/docker/thirdparties/docker-compose/mysql/init/04-insert.sql
index fbbe2221bb4..93ae8c9b63e 100644
--- a/docker/thirdparties/docker-compose/mysql/init/04-insert.sql
+++ b/docker/thirdparties/docker-compose/mysql/init/04-insert.sql
@@ -15,6 +15,12 @@
 -- specific language governing permissions and limitations
 -- under the License.
 
+insert into show_test_do_not_modify.ex_tb0 values (111, 'abc'), (112, 'abd'), 
(113, 'abe'),(114, 'abf'),(115, 'abg');
+
+insert into show_test_do_not_modify.ex_tb1 values ('{"k1":"v1", "k2":"v2"}');
+
+insert into show_test_do_not_modify.ex_tb2 values (123, '10'), (123, '15'), 
(123, '20');
+
 insert into doris_test.test1 values
 (true, 'abc', 'efg', '2022-10-01', 3.4, 1, 2, 0, 100000, 1.2, '2022-10-02 
12:59:01', 24.000),
 (true, 'abc', 'efg', '2022-10-01', 3.4, 1, 2, 1, 100000, 1.2, '2022-10-02 
12:59:01', 24.000),
diff --git a/docker/thirdparties/docker-compose/sqlserver/init/04-insert.sql 
b/docker/thirdparties/docker-compose/sqlserver/init/04-insert.sql
index 3c1f54515c4..f4f67523dfb 100644
--- a/docker/thirdparties/docker-compose/sqlserver/init/04-insert.sql
+++ b/docker/thirdparties/docker-compose/sqlserver/init/04-insert.sql
@@ -14,6 +14,7 @@
 -- KIND, either express or implied.  See the License for the
 -- specific language governing permissions and limitations
 -- under the License.
+use doris_test;
 
 Insert into dbo.student values (1, 'doris', 18), (2, 'alice', 19), (3, 'bob', 
20);
 
diff --git a/docker/thirdparties/docker-compose/sqlserver/sqlserver.yaml.tpl 
b/docker/thirdparties/docker-compose/sqlserver/sqlserver.yaml.tpl
index 02f909f5d5d..04b5eb976e6 100644
--- a/docker/thirdparties/docker-compose/sqlserver/sqlserver.yaml.tpl
+++ b/docker/thirdparties/docker-compose/sqlserver/sqlserver.yaml.tpl
@@ -29,6 +29,31 @@ services:
       retries: 120
     volumes:
         - ./init:/docker-entrypoint-initdb.d
+    command:
+      - /bin/bash
+      - -c
+      - |
+        # Launch MSSQL and send to background
+        /opt/mssql/bin/sqlservr &
+        # Wait for it to be available
+        echo "Waiting for MS SQL to be available ⏳"
+        /opt/mssql-tools/bin/sqlcmd -l 30 -S localhost -h-1 -V1 -U sa -P 
Doris123456 -Q "SET NOCOUNT ON SELECT \"YAY WE ARE UP\" , @@servername"
+        is_up=$$?
+        while [ $$is_up -ne 0 ] ; do
+          echo -e $$(date)
+          /opt/mssql-tools/bin/sqlcmd -l 30 -S localhost -h-1 -V1 -U sa -P 
Doris123456 -Q "SET NOCOUNT ON SELECT \"YAY WE ARE UP\" , @@servername"
+          is_up=$$?
+          sleep 5
+        done
+        # Run every script in /scripts
+        # TODO set a flag so that this is only done once on creation,
+        #      and not every time the container runs
+        for foo in /docker-entrypoint-initdb.d/*.sql
+          do /opt/mssql-tools/bin/sqlcmd -U sa -P Doris123456 -l 30 -e -i $$foo
+        done
+        # So that the container doesn't shut down, sleep this thread
+        sleep infinity
+
     restart: always
     environment:
       # Accept the end user license Agreement
@@ -44,4 +69,4 @@ services:
           condition: service_healthy
 
 networks:
-  doris--sqlserver_2022:
\ No newline at end of file
+  doris--sqlserver_2022:
diff --git 
a/regression-test/data/external_table_p0/paimon/test_paimon_catalog.out 
b/regression-test/data/external_table_p0/paimon/test_paimon_catalog.out
index 4918db4555c..16884b82e80 100644
--- a/regression-test/data/external_table_p0/paimon/test_paimon_catalog.out
+++ b/regression-test/data/external_table_p0/paimon/test_paimon_catalog.out
@@ -55,8 +55,8 @@
 1      2       3       4       5       6       7       8       9.1     10.1    
11.10   2020-02-02      13str   14varchar       a       true    aaaa    
2023-08-13T09:32:38.530
 
 -- !c19 --
-11     22      aa      bb      cc
 1      2       a       b       c
+11     22      aa      bb      cc
 
 -- !c20 --
 1      2       a       b       c
diff --git a/regression-test/suites/external_table_p0/es/test_es_query.groovy 
b/regression-test/suites/external_table_p0/es/test_es_query.groovy
index 85ccbbda5e8..c0cec5c82dd 100644
--- a/regression-test/suites/external_table_p0/es/test_es_query.groovy
+++ b/regression-test/suites/external_table_p0/es/test_es_query.groovy
@@ -15,43 +15,43 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_es_query", "p0") {
-
+suite("test_es_query", "p0,external,es,external_docker,external_docker_es") {
     String enabled = context.config.otherConfigs.get("enableEsTest")
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
+        String externalEnvIp = context.config.otherConfigs.get("externalEnvIp")
         String es_6_port = context.config.otherConfigs.get("es_6_port")
         String es_7_port = context.config.otherConfigs.get("es_7_port")
         String es_8_port = context.config.otherConfigs.get("es_8_port")
 
-        sql """drop catalog if exists es6;"""
-        sql """drop catalog if exists es7;"""
-        sql """drop catalog if exists es8;"""
+        sql """drop catalog if exists test_es_query_es6;"""
+        sql """drop catalog if exists test_es_query_es7;"""
+        sql """drop catalog if exists test_es_query_es8;"""
         sql """drop table if exists test_v1;"""
         sql """drop table if exists test_v2;"""
 
         // test old create-catalog syntax for compatibility
         sql """
-            create catalog es6
+            create catalog test_es_query_es6
             properties (
                 "type"="es",
-                "elasticsearch.hosts"="http://127.0.0.1:$es_6_port";,
+                "elasticsearch.hosts"="http://${externalEnvIp}:$es_6_port";,
                 "elasticsearch.nodes_discovery"="false",
                 "elasticsearch.keyword_sniff"="true"
             );
         """
 
         // test new create catalog syntax
-        sql """create catalog if not exists es7 properties(
+        sql """create catalog if not exists test_es_query_es7 properties(
             "type"="es",
-            "hosts"="http://127.0.0.1:$es_7_port";,
+            "hosts"="http://${externalEnvIp}:$es_7_port";,
             "nodes_discovery"="false",
             "enable_keyword_sniff"="true"
         );
         """
 
-        sql """create catalog if not exists es8 properties(
+        sql """create catalog if not exists test_es_query_es8 properties(
             "type"="es",
-            "hosts"="http://127.0.0.1:$es_8_port";,
+            "hosts"="http://${externalEnvIp}:$es_8_port";,
             "nodes_discovery"="false",
             "enable_keyword_sniff"="true"
         );
@@ -105,7 +105,7 @@ suite("test_es_query", "p0") {
             ) ENGINE=ELASTICSEARCH
             COMMENT 'ELASTICSEARCH'
             PROPERTIES (
-                "hosts" = "http://127.0.0.1:$es_8_port";,
+                "hosts" = "http://${externalEnvIp}:$es_8_port";,
                 "index" = "test1",
                 "nodes_discovery"="false",
                 "enable_keyword_sniff"="true",
@@ -145,7 +145,7 @@ suite("test_es_query", "p0") {
             ) ENGINE=ELASTICSEARCH
             COMMENT 'ELASTICSEARCH'
             PROPERTIES (
-                "hosts" = "http://127.0.0.1:$es_8_port";,
+                "hosts" = "http://${externalEnvIp}:$es_8_port";,
                 "index" = "test1",
                 "nodes_discovery"="false",
                 "enable_keyword_sniff"="true",
@@ -156,7 +156,7 @@ suite("test_es_query", "p0") {
         order_qt_sql05 """select * from test_v2 where esquery(test2, 
'{"match":{"test2":"text#1"}}')"""
         order_qt_sql06 """select test4,test5,test6,test7,test8 from test_v2 
order by test8"""
 
-        sql """switch es6"""
+        sql """switch test_es_query_es6"""
         // order_qt_sql_6_01 """show tables"""
         order_qt_sql_6_02 """select * from test1 where test2='text#1'"""
         order_qt_sql_6_03 """select * from test2_20220808 where test4 >= 
'2022-08-08 00:00:00' and test4 < '2022-08-08 23:59:59'"""
@@ -192,7 +192,7 @@ suite("test_es_query", "p0") {
         }
         assertTrue(containHide)
 
-        sql """switch es7"""
+        sql """switch test_es_query_es7"""
         // order_qt_sql_7_01 """show tables"""
         order_qt_sql_7_02 """select * from test1 where test2='text#1'"""
         order_qt_sql_7_03 """select * from test2_20220808 where test4 >= 
'2022-08-08 00:00:00' and test4 < '2022-08-08 23:59:59'"""
@@ -233,7 +233,7 @@ suite("test_es_query", "p0") {
 
         order_qt_sql_7_19 """select * from test3_20231005"""
 
-        sql """switch es8"""
+        sql """switch test_es_query_es8"""
         order_qt_sql_8_01 """select * from test1 where test2='text#1'"""
         order_qt_sql_8_02 """select * from test2_20220808 where test4 >= 
'2022-08-08 00:00:00' and test4 < '2022-08-08 23:59:59'"""
         order_qt_sql_8_03 """select c_bool[1], c_byte[1], c_short[1], 
c_integer[1], c_long[1], c_unsigned_long[1], c_float[1], c_half_float[1], 
c_double[1], c_scaled_float[1], c_date[1], c_datetime[1], c_keyword[1], 
c_text[1], c_ip[1], c_person[1] from test1"""
diff --git 
a/regression-test/suites/external_table_p0/es/test_es_query_nereids.groovy 
b/regression-test/suites/external_table_p0/es/test_es_query_nereids.groovy
index 835f78b11d5..2a6c9c1527d 100644
--- a/regression-test/suites/external_table_p0/es/test_es_query_nereids.groovy
+++ b/regression-test/suites/external_table_p0/es/test_es_query_nereids.groovy
@@ -15,10 +15,10 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_es_query_nereids", "p0") {
-
+suite("test_es_query_nereids", 
"p0,external,es,external_docker,external_docker_es") {
     String enabled = context.config.otherConfigs.get("enableEsTest")
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
+        String externalEnvIp = context.config.otherConfigs.get("externalEnvIp")
         String es_6_port = context.config.otherConfigs.get("es_6_port")
         String es_7_port = context.config.otherConfigs.get("es_7_port")
         String es_8_port = context.config.otherConfigs.get("es_8_port")
@@ -29,14 +29,13 @@ suite("test_es_query_nereids", "p0") {
         sql """drop table if exists test_v1_nereids;"""
         sql """drop table if exists test_v2_nereids;"""
         sql """set enable_nereids_planner=true;"""
-        sql """set enable_fallback_to_original_planner=false;"""
 
         // test old create-catalog syntax for compatibility
         sql """
             create catalog es6_nereids
             properties (
                 "type"="es",
-                "elasticsearch.hosts"="http://127.0.0.1:$es_6_port";,
+                "elasticsearch.hosts"="http://${externalEnvIp}:$es_6_port";,
                 "elasticsearch.nodes_discovery"="false",
                 "elasticsearch.keyword_sniff"="true"
             );
@@ -45,7 +44,7 @@ suite("test_es_query_nereids", "p0") {
         // test new create catalog syntax
         sql """create catalog if not exists es7_nereids properties(
             "type"="es",
-            "hosts"="http://127.0.0.1:$es_7_port";,
+            "hosts"="http://${externalEnvIp}:$es_7_port";,
             "nodes_discovery"="false",
             "enable_keyword_sniff"="true"
         );
@@ -53,7 +52,7 @@ suite("test_es_query_nereids", "p0") {
 
         sql """create catalog if not exists es8_nereids properties(
             "type"="es",
-            "hosts"="http://127.0.0.1:$es_8_port";,
+            "hosts"="http://${externalEnvIp}:$es_8_port";,
             "nodes_discovery"="false",
             "enable_keyword_sniff"="true"
         );
@@ -88,7 +87,7 @@ suite("test_es_query_nereids", "p0") {
             ) ENGINE=ELASTICSEARCH
             COMMENT 'ELASTICSEARCH'
             PROPERTIES (
-                "hosts" = "http://127.0.0.1:$es_8_port";,
+                "hosts" = "http://${externalEnvIp}:$es_8_port";,
                 "index" = "test1",
                 "nodes_discovery"="false",
                 "enable_keyword_sniff"="true",
@@ -126,13 +125,16 @@ suite("test_es_query_nereids", "p0") {
             ) ENGINE=ELASTICSEARCH
             COMMENT 'ELASTICSEARCH'
             PROPERTIES (
-                "hosts" = "http://127.0.0.1:$es_8_port";,
+                "hosts" = "http://${externalEnvIp}:$es_8_port";,
                 "index" = "test1",
                 "nodes_discovery"="false",
                 "enable_keyword_sniff"="true",
                 "http_ssl_enabled"="false"
             );
         """
+
+        sql """set enable_fallback_to_original_planner=false;"""
+
         // TODO(ftw): should open these annotation when nereids support es 
external table
         // order_qt_sql51 """select * from test_v2_nereids where 
test2='text#1'"""
 
@@ -150,9 +152,10 @@ suite("test_es_query_nereids", "p0") {
 
 
         sql """switch es7_nereids"""
-        order_qt_sql72 """select test1, test2, test3, test4, test5, test6, 
test7, test8 from test1"""
-        order_qt_sql73 """select test1, test2, test3, test4, test5, test6, 
test7, test8 from test2_20220808"""
-        order_qt_sql74 """select test1, test2, test3, test4, test5, test6, 
test7, test8 from test2_20220808"""
+        // Expected value of type: BIGINT; but found type: Varchar/Char; 
Document value is: "1659931810000"
+        // order_qt_sql72 """select test1, test2, test3, test4, test5, test6, 
test7, test8 from test1"""
+        // order_qt_sql73 """select test1, test2, test3, test4, test5, test6, 
test7, test8 from test2_20220808"""
+        // order_qt_sql74 """select test1, test2, test3, test4, test5, test6, 
test7, test8 from test2_20220808"""
         // TODO(ftw): should open these annotation when nereids support ARRAY
         // order_qt_sql72 """select * from test1 where test2='text#1'"""
         // order_qt_sql73 """select * from test2_20220808 where 
test4='2022-08-08'"""
@@ -162,8 +165,8 @@ suite("test_es_query_nereids", "p0") {
         
         
         sql """switch es8_nereids"""
-        order_qt_sql81 """select test1, test2, test3, test4, test5, test6, 
test7, test8 from test1"""
-        order_qt_sql82 """select test1, test2, test3, test4, test5, test6, 
test7, test8 from test2_20220808"""
+        // order_qt_sql81 """select test1, test2, test3, test4, test5, test6, 
test7, test8 from test1"""
+        // order_qt_sql82 """select test1, test2, test3, test4, test5, test6, 
test7, test8 from test2_20220808"""
         // TODO(ftw): should open these annotation when nereids support ARRAY
         // order_qt_sql81 """select * from test1 where test2='text#1'"""
         // order_qt_sql82 """select * from test2_20220808 where 
test4='2022-08-08'"""
diff --git 
a/regression-test/suites/external_table_p0/es/test_es_query_no_http_url.groovy 
b/regression-test/suites/external_table_p0/es/test_es_query_no_http_url.groovy
index 3f712fe778c..004c1aea31e 100644
--- 
a/regression-test/suites/external_table_p0/es/test_es_query_no_http_url.groovy
+++ 
b/regression-test/suites/external_table_p0/es/test_es_query_no_http_url.groovy
@@ -15,51 +15,52 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_es_query_no_http_url", "p0") {
-
+suite("test_es_query_no_http_url", 
"p0,external,es,external_docker,external_docker_es") {
     String enabled = context.config.otherConfigs.get("enableEsTest")
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
+        String externalEnvIp = context.config.otherConfigs.get("externalEnvIp")
         String es_6_port = context.config.otherConfigs.get("es_6_port")
         String es_7_port = context.config.otherConfigs.get("es_7_port")
         String es_8_port = context.config.otherConfigs.get("es_8_port")
 
-        sql """drop catalog if exists es6;"""
-        sql """drop catalog if exists es7;"""
-        sql """drop catalog if exists es8;"""
-        sql """drop table if exists test_v1;"""
-        sql """drop table if exists test_v2;"""
+        sql """drop catalog if exists es6_no_http_url;"""
+        sql """drop catalog if exists es7_no_http_url;"""
+        sql """drop catalog if exists es8_no_http_url;"""
+        sql """drop table if exists test_v1_no_http_url;"""
+        sql """drop table if exists test_v2_no_http_url;"""
 
         // test old create-catalog syntax for compatibility
         sql """
-            create catalog es6
-            properties (
+            create catalog if not exists es6_no_http_url properties (
                 "type"="es",
-                "elasticsearch.hosts"="127.0.0.1:$es_6_port",
+                "elasticsearch.hosts"="${externalEnvIp}:$es_6_port",
                 "elasticsearch.nodes_discovery"="false",
                 "elasticsearch.keyword_sniff"="true"
             );
         """
 
         // test new create catalog syntax
-        sql """create catalog if not exists es7 properties(
-            "type"="es",
-            "hosts"="127.0.0.1:$es_7_port",
-            "nodes_discovery"="false",
-            "enable_keyword_sniff"="true"
+        sql """
+            create catalog if not exists es7_no_http_url properties(
+                "type"="es",
+                "hosts"="${externalEnvIp}:$es_7_port",
+                "nodes_discovery"="false",
+                "enable_keyword_sniff"="true"
         );
         """
 
-        sql """create catalog if not exists es8 properties(
-            "type"="es",
-            "hosts"="127.0.0.1:$es_8_port",
-            "nodes_discovery"="false",
-            "enable_keyword_sniff"="true"
+        sql """
+            create catalog if not exists es8_no_http_url properties(
+                "type"="es",
+                "hosts"="${externalEnvIp}:$es_8_port",
+                "nodes_discovery"="false",
+                "enable_keyword_sniff"="true"
         );
         """
 
         // test external table for datetime
         sql """
-            CREATE TABLE `test_v1` (
+            CREATE TABLE `test_v1_no_http_url` (
                 `c_datetime` array<datev2> NULL,
                 `c_long` array<bigint(20)> NULL,
                 `c_unsigned_long` array<largeint(40)> NULL,
@@ -87,17 +88,17 @@ suite("test_es_query_no_http_url", "p0") {
             ) ENGINE=ELASTICSEARCH
             COMMENT 'ELASTICSEARCH'
             PROPERTIES (
-                "hosts" = "127.0.0.1:$es_7_port",
+                "hosts" = "${externalEnvIp}:$es_7_port",
                 "index" = "test1",
                 "nodes_discovery"="false",
                 "enable_keyword_sniff"="true",
                 "http_ssl_enabled"="false"
             );
         """
-        order_qt_sql51 """select * from test_v1 where test2='text#1'"""
+        order_qt_sql51 """select * from test_v1_no_http_url where 
test2='text#1'"""
 
        sql """
-            CREATE TABLE `test_v2` (
+            CREATE TABLE `test_v2_no_http_url` (
                 `c_datetime` array<datev2> NULL,
                 `c_long` array<bigint(20)> NULL,
                 `c_unsigned_long` array<largeint(40)> NULL,
@@ -125,23 +126,23 @@ suite("test_es_query_no_http_url", "p0") {
             ) ENGINE=ELASTICSEARCH
             COMMENT 'ELASTICSEARCH'
             PROPERTIES (
-                "hosts" = "127.0.0.1:$es_8_port",
+                "hosts" = "${externalEnvIp}:$es_8_port",
                 "index" = "test1",
                 "nodes_discovery"="false",
                 "enable_keyword_sniff"="true",
                 "http_ssl_enabled"="false"
             );
         """
-        order_qt_sql52 """select * from test_v2 where test2='text#1'"""
+        order_qt_sql52 """select * from test_v2_no_http_url where 
test2='text#1'"""
 
         // es6
-        sql """switch es6"""
+        sql """switch es6_no_http_url"""
         order_qt_sql61 """select * from test1 where test2='text#1'"""
         // es7
-        sql """switch es7"""
+        sql """switch es7_no_http_url"""
         order_qt_sql71 """select * from test1 where test2='text#1'"""
         // es8
-        sql """switch es8"""
+        sql """switch es8_no_http_url"""
         order_qt_sql81 """select * from test1 where test2='text#1'"""
     }
 }
diff --git 
a/regression-test/suites/external_table_p0/hive/hive_tpch_sf1_orc.groovy 
b/regression-test/suites/external_table_p0/hive/hive_tpch_sf1_orc.groovy
index bcd779ce3b2..caefc7f6534 100644
--- a/regression-test/suites/external_table_p0/hive/hive_tpch_sf1_orc.groovy
+++ b/regression-test/suites/external_table_p0/hive/hive_tpch_sf1_orc.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_catalog_hive_orc", "p0") {
+suite("test_catalog_hive_orc", 
"p0,external,hive,external_docker,external_docker_hive") {
 
     String enable_file_cache = "false"
 
diff --git 
a/regression-test/suites/external_table_p0/hive/hive_tpch_sf1_parquet.groovy 
b/regression-test/suites/external_table_p0/hive/hive_tpch_sf1_parquet.groovy
index 1bca42981b0..c5e04c448c5 100644
--- a/regression-test/suites/external_table_p0/hive/hive_tpch_sf1_parquet.groovy
+++ b/regression-test/suites/external_table_p0/hive/hive_tpch_sf1_parquet.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_catalog_hive_parquet", "p0") {
+suite("test_catalog_hive_parquet", 
"p0,external,hive,external_docker,external_docker_hive") {
 
     String enable_file_cache = "false"
 
diff --git 
a/regression-test/suites/external_table_p0/hive/test_different_column_orders.groovy
 
b/regression-test/suites/external_table_p0/hive/test_different_column_orders.groovy
index 3fcb5a3c3f2..31b0ca3cc07 100644
--- 
a/regression-test/suites/external_table_p0/hive/test_different_column_orders.groovy
+++ 
b/regression-test/suites/external_table_p0/hive/test_different_column_orders.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_different_column_orders", "p0") {
+suite("test_different_column_orders", 
"p0,external,hive,external_docker,external_docker_hive") {
     def q_parquet = {
         qt_q01 """
         select * from test_different_column_orders_parquet order by id;
@@ -43,10 +43,12 @@ suite("test_different_column_orders", "p0") {
         try {
             String hms_port = context.config.otherConfigs.get("hms_port")
             String catalog_name = "test_different_column_orders"
+            String externalEnvIp = 
context.config.otherConfigs.get("externalEnvIp")
+
             sql """drop catalog if exists ${catalog_name}"""
             sql """create catalog if not exists ${catalog_name} properties (
                 "type"="hms",
-                'hive.metastore.uris' = 'thrift://127.0.0.1:${hms_port}'
+                'hive.metastore.uris' = 'thrift://${externalEnvIp}:${hms_port}'
             );"""
             sql """use `${catalog_name}`.`default`"""
 
diff --git 
a/regression-test/suites/external_table_p0/hive/test_different_parquet_types.groovy
 
b/regression-test/suites/external_table_p0/hive/test_different_parquet_types.groovy
index b9005037a5c..928fac62d0a 100644
--- 
a/regression-test/suites/external_table_p0/hive/test_different_parquet_types.groovy
+++ 
b/regression-test/suites/external_table_p0/hive/test_different_parquet_types.groovy
@@ -16,7 +16,7 @@ package suites.external_catalog_p0.hive
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_different_parquet_types", "p0") {
+suite("test_different_parquet_types", 
"p0,external,hive,external_docker,external_docker_hive") {
 
     String hms_port = context.config.otherConfigs.get("hms_port")
     String hdfs_port = context.config.otherConfigs.get("hdfs_port")
@@ -176,8 +176,6 @@ suite("test_different_parquet_types", "p0") {
     }
 
 
-    
-
     String enabled = context.config.otherConfigs.get("enableHiveTest")
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
         try {
@@ -186,7 +184,7 @@ suite("test_different_parquet_types", "p0") {
 
             sql """create catalog if not exists ${catalog_name} properties (
                 "type"="hms",
-                'hive.metastore.uris' = 'thrift://127.0.0.1:${hms_port}'
+                'hive.metastore.uris' = 'thrift://${externalEnvIp}:${hms_port}'
             );"""
             sql """use `${catalog_name}`.`default`"""
 
diff --git 
a/regression-test/suites/external_table_p0/hive/test_hive_basic_type.groovy 
b/regression-test/suites/external_table_p0/hive/test_hive_basic_type.groovy
index 392a1a003cf..3e7cacdf2e1 100644
--- a/regression-test/suites/external_table_p0/hive/test_hive_basic_type.groovy
+++ b/regression-test/suites/external_table_p0/hive/test_hive_basic_type.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_hive_basic_type", 
"external_docker,hive,external_docker_hive,p0,external") {
+suite("test_hive_basic_type", 
"p0,external,hive,external_docker,external_docker_hive") {
     String enabled = context.config.otherConfigs.get("enableHiveTest")
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
         String catalog_name = "test_hive_basic_type"
diff --git a/regression-test/suites/external_table_p0/hive/test_hive_orc.groovy 
b/regression-test/suites/external_table_p0/hive/test_hive_orc.groovy
index 64b919bff2a..b6bccfb286c 100644
--- a/regression-test/suites/external_table_p0/hive/test_hive_orc.groovy
+++ b/regression-test/suites/external_table_p0/hive/test_hive_orc.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_hive_orc", "all_types") {
+suite("test_hive_orc", 
"all_types,p0,external,hive,external_docker,external_docker_hive") {
     // Ensure that all types are parsed correctly
     def select_top50 = {
         qt_select_top50 """select * from orc_all_types order by int_col desc 
limit 50;"""
@@ -79,10 +79,12 @@ suite("test_hive_orc", "all_types") {
         try {
             String hms_port = context.config.otherConfigs.get("hms_port")
             String catalog_name = "hive_test_orc"
+            String externalEnvIp = 
context.config.otherConfigs.get("externalEnvIp")
+
             sql """drop catalog if exists ${catalog_name}"""
             sql """create catalog if not exists ${catalog_name} properties (
                 "type"="hms",
-                'hive.metastore.uris' = 'thrift://127.0.0.1:${hms_port}'
+                'hive.metastore.uris' = 'thrift://${externalEnvIp}:${hms_port}'
             );"""
             sql """use `${catalog_name}`.`default`"""
 
@@ -100,7 +102,7 @@ suite("test_hive_orc", "all_types") {
             sql """
                 create catalog if not exists ${catalog_name} properties (
                     "type"="hms",
-                    'hive.metastore.uris' = 'thrift://127.0.0.1:${hms_port}'
+                    'hive.metastore.uris' = 
'thrift://${externalEnvIp}:${hms_port}'
                 );
             """
             sql """use `${catalog_name}`.`default`"""
diff --git 
a/regression-test/suites/external_table_p0/hive/test_hive_other.groovy 
b/regression-test/suites/external_table_p0/hive/test_hive_other.groovy
index 253d6f5aa92..5400c94fc81 100644
--- a/regression-test/suites/external_table_p0/hive/test_hive_other.groovy
+++ b/regression-test/suites/external_table_p0/hive/test_hive_other.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_hive_other", "p0") {
+suite("test_hive_other", 
"p0,external,hive,external_docker,external_docker_hive") {
 
     def q01 = {
         qt_q24 """ select name, count(1) as c from student group by name order 
by c desc;"""
@@ -54,12 +54,14 @@ suite("test_hive_other", "p0") {
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
         String hms_port = context.config.otherConfigs.get("hms_port")
         String hdfs_port = context.config.otherConfigs.get("hdfs_port")
+        String externalEnvIp = context.config.otherConfigs.get("externalEnvIp")
+
         String catalog_name = "hive_test_other"
 
         sql """drop catalog if exists ${catalog_name}"""
         sql """create catalog if not exists ${catalog_name} properties (
             "type"="hms",
-            'hive.metastore.uris' = 'thrift://127.0.0.1:${hms_port}'
+            'hive.metastore.uris' = 'thrift://${externalEnvIp}:${hms_port}'
         );"""
 
         // test user's grants on external catalog
diff --git 
a/regression-test/suites/external_table_p0/hive/test_hive_parquet.groovy 
b/regression-test/suites/external_table_p0/hive/test_hive_parquet.groovy
index cc16ca27d16..2daac80d71e 100644
--- a/regression-test/suites/external_table_p0/hive/test_hive_parquet.groovy
+++ b/regression-test/suites/external_table_p0/hive/test_hive_parquet.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_hive_parquet", "p0") {
+suite("test_hive_parquet", 
"p0,external,hive,external_docker,external_docker_hive") {
     def q01 = {
         qt_q01 """
         select * from partition_table order by l_orderkey, l_partkey, 
l_suppkey;
@@ -144,10 +144,12 @@ suite("test_hive_parquet", "p0") {
         try {
             String hms_port = context.config.otherConfigs.get("hms_port")
             String catalog_name = "hive_test_parquet"
+            String externalEnvIp = 
context.config.otherConfigs.get("externalEnvIp")
+
             sql """drop catalog if exists ${catalog_name}"""
             sql """create catalog if not exists ${catalog_name} properties (
                 "type"="hms",
-                'hive.metastore.uris' = 'thrift://127.0.0.1:${hms_port}'
+                'hive.metastore.uris' = 'thrift://${externalEnvIp}:${hms_port}'
             );"""
             sql """use `${catalog_name}`.`default`"""
 
diff --git 
a/regression-test/suites/external_table_p0/hive/test_hive_partitions.groovy 
b/regression-test/suites/external_table_p0/hive/test_hive_partitions.groovy
index 7e70f5729aa..8eae4e82e63 100644
--- a/regression-test/suites/external_table_p0/hive/test_hive_partitions.groovy
+++ b/regression-test/suites/external_table_p0/hive/test_hive_partitions.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_hive_partitions", "p0") {
+suite("test_hive_partitions", 
"p0,external,hive,external_docker,external_docker_hive") {
     def q01 = {
         qt_q01 """
         select id, data from table_with_pars where dt_par = '2023-02-01' order 
by id;
@@ -42,10 +42,12 @@ suite("test_hive_partitions", "p0") {
         try {
             String hms_port = context.config.otherConfigs.get("hms_port")
             String catalog_name = "hive_test_partitions"
+            String externalEnvIp = 
context.config.otherConfigs.get("externalEnvIp")
+
             sql """drop catalog if exists ${catalog_name}"""
             sql """create catalog if not exists ${catalog_name} properties (
                 "type"="hms",
-                'hive.metastore.uris' = 'thrift://127.0.0.1:${hms_port}'
+                'hive.metastore.uris' = 'thrift://${externalEnvIp}:${hms_port}'
             );"""
             sql """use `${catalog_name}`.`default`"""
 
diff --git 
a/regression-test/suites/external_table_p0/hive/test_transactional_hive.groovy 
b/regression-test/suites/external_table_p0/hive/test_transactional_hive.groovy
index d15f49749f0..6c8d4d100b3 100644
--- 
a/regression-test/suites/external_table_p0/hive/test_transactional_hive.groovy
+++ 
b/regression-test/suites/external_table_p0/hive/test_transactional_hive.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_transactional_hive", "p0") {
+suite("test_transactional_hive", 
"p0,external,hive,external_docker,external_docker_hive") {
     def q01 = {
         qt_q01 """
         select * from orc_full_acid order by id;
@@ -44,10 +44,12 @@ suite("test_transactional_hive", "p0") {
         try {
             String hms_port = context.config.otherConfigs.get("hms_port")
             String catalog_name = "test_transactional_hive"
+            String externalEnvIp = 
context.config.otherConfigs.get("externalEnvIp")
+
             sql """drop catalog if exists ${catalog_name}"""
             sql """create catalog if not exists ${catalog_name} properties (
                 "type"="hms",
-                'hive.metastore.uris' = 'thrift://127.0.0.1:${hms_port}'
+                'hive.metastore.uris' = 'thrift://${externalEnvIp}:${hms_port}'
             );"""
             sql """use `${catalog_name}`.`default`"""
 
diff --git 
a/regression-test/suites/external_table_p0/jdbc/test_clickhouse_jdbc_catalog.groovy
 
b/regression-test/suites/external_table_p0/jdbc/test_clickhouse_jdbc_catalog.groovy
index 015ccbd9606..8fb0f323992 100644
--- 
a/regression-test/suites/external_table_p0/jdbc/test_clickhouse_jdbc_catalog.groovy
+++ 
b/regression-test/suites/external_table_p0/jdbc/test_clickhouse_jdbc_catalog.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_clickhouse_jdbc_catalog", "p0") {
+suite("test_clickhouse_jdbc_catalog", 
"p0,external,clickhouse,external_docker,external_docker_clickhouse") {
     String enabled = context.config.otherConfigs.get("enableJdbcTest")
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
         String catalog_name = "clickhouse_catalog";
@@ -27,7 +27,9 @@ suite("test_clickhouse_jdbc_catalog", "p0") {
         String bucket = getS3BucketName()
         String driver_url = 
"https://${bucket}.${s3_endpoint}/regression/jdbc_driver/clickhouse-jdbc-0.4.2-all.jar";
 
-        String inDorisTable = "doris_in_tb";
+        String inDorisTable = "test_clickhouse_jdbc_doris_in_tb";
+
+        sql """create database if not exists ${internal_db_name}; """
 
         sql """ drop catalog if exists ${catalog_name} """
 
@@ -39,10 +41,10 @@ suite("test_clickhouse_jdbc_catalog", "p0") {
                     "driver_url" = "${driver_url}",
                     "driver_class" = "com.clickhouse.jdbc.ClickHouseDriver"
         );"""
-
-        sql  """ drop table if exists ${inDorisTable} """
+        sql """use ${internal_db_name}"""
+        sql  """ drop table if exists ${internal_db_name}.${inDorisTable} """
         sql  """
-              CREATE TABLE ${inDorisTable} (
+              CREATE TABLE ${internal_db_name}.${inDorisTable} (
                 `id` INT NULL COMMENT "主键id",
                 `name` string NULL COMMENT "名字",
                 `age` INT NULL COMMENT "年龄"
diff --git 
a/regression-test/suites/external_table_p0/jdbc/test_jdbc_query_mysql.groovy 
b/regression-test/suites/external_table_p0/jdbc/test_jdbc_query_mysql.groovy
index b06f14de4ee..8b3f294b61e 100644
--- a/regression-test/suites/external_table_p0/jdbc/test_jdbc_query_mysql.groovy
+++ b/regression-test/suites/external_table_p0/jdbc/test_jdbc_query_mysql.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_jdbc_query_mysql", "p0") {
+suite("test_jdbc_query_mysql", 
"p0,external,mysql,external_docker,external_docker_mysql") {
 
     String enabled = context.config.otherConfigs.get("enableJdbcTest")
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
diff --git 
a/regression-test/suites/external_table_p0/jdbc/test_jdbc_query_pg.groovy 
b/regression-test/suites/external_table_p0/jdbc/test_jdbc_query_pg.groovy
index 9e8a4510696..7a41885d7cc 100644
--- a/regression-test/suites/external_table_p0/jdbc/test_jdbc_query_pg.groovy
+++ b/regression-test/suites/external_table_p0/jdbc/test_jdbc_query_pg.groovy
@@ -17,7 +17,7 @@
 
 import java.nio.charset.Charset;
 
-suite("test_jdbc_query_pg", "p0") {
+suite("test_jdbc_query_pg", 
"p0,external,pg,external_docker,external_docker_pg") {
 
     String enabled = context.config.otherConfigs.get("enableJdbcTest")
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
diff --git 
a/regression-test/suites/external_table_p0/jdbc/test_mysql_jdbc_catalog.groovy 
b/regression-test/suites/external_table_p0/jdbc/test_mysql_jdbc_catalog.groovy
index 2d63f2b458b..6cb48e9f57f 100644
--- 
a/regression-test/suites/external_table_p0/jdbc/test_mysql_jdbc_catalog.groovy
+++ 
b/regression-test/suites/external_table_p0/jdbc/test_mysql_jdbc_catalog.groovy
@@ -15,16 +15,20 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_mysql_jdbc_catalog", "p0") {
+suite("test_mysql_jdbc_catalog", 
"p0,external,mysql,external_docker,external_docker_mysql") {
     qt_sql """select current_catalog()"""
 
     String enabled = context.config.otherConfigs.get("enableJdbcTest")
+    String externalEnvIp = context.config.otherConfigs.get("externalEnvIp")
+    String s3_endpoint = getS3Endpoint()
+    String bucket = getS3BucketName()
+    String driver_url = 
"https://${bucket}.${s3_endpoint}/regression/jdbc_driver/mysql-connector-java-8.0.25.jar";
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
         String catalog_name = "mysql_jdbc_catalog";
         String internal_db_name = "regression_test_jdbc_catalog_p0";
         String ex_db_name = "doris_test";
         String mysql_port = context.config.otherConfigs.get("mysql_57_port");
-        String inDorisTable = "doris_in_tb";
+        String inDorisTable = "test_mysql_jdbc_doris_in_tb";
         String ex_tb0 = "ex_tb0";
         String ex_tb1 = "ex_tb1";
         String ex_tb2 = "ex_tb2";
@@ -52,20 +56,23 @@ suite("test_mysql_jdbc_catalog", "p0") {
         String dt = "dt";
         String dt_null = "dt_null";
 
+        sql """create database if not exists ${internal_db_name}; """
+
         sql """drop catalog if exists ${catalog_name} """
 
         sql """create catalog if not exists ${catalog_name} properties(
             "type"="jdbc",
             "user"="root",
             "password"="123456",
-            "jdbc_url" = 
"jdbc:mysql://127.0.0.1:${mysql_port}/doris_test?useSSL=false&zeroDateTimeBehavior=convertToNull",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/mysql-connector-java-8.0.25.jar";,
+            "jdbc_url" = 
"jdbc:mysql://${externalEnvIp}:${mysql_port}/doris_test?useSSL=false&zeroDateTimeBehavior=convertToNull",
+            "driver_url" = "${driver_url}",
             "driver_class" = "com.mysql.cj.jdbc.Driver"
         );"""
 
-        sql  """ drop table if exists ${inDorisTable} """
+        sql """use ${internal_db_name}"""
+        sql  """ drop table if exists ${internal_db_name}.${inDorisTable} """
         sql  """
-              CREATE TABLE ${inDorisTable} (
+              CREATE TABLE ${internal_db_name}.${inDorisTable} (
                 `id` INT NULL COMMENT "主键id",
                 `name` string NULL COMMENT "名字"
                 ) DISTRIBUTED BY HASH(id) BUCKETS 10
@@ -109,6 +116,7 @@ suite("test_mysql_jdbc_catalog", "p0") {
         // test insert
         String uuid1 = UUID.randomUUID().toString();
         sql """ insert into ${test_insert} values ('${uuid1}', 'doris1', 18) 
"""
+
         order_qt_test_insert1 """ select name, age from ${test_insert} where 
id = '${uuid1}' order by age """
 
         String uuid2 = UUID.randomUUID().toString();
@@ -130,8 +138,8 @@ suite("test_mysql_jdbc_catalog", "p0") {
             "type"="jdbc",
             "user"="root",
             "password"="123456",
-            "jdbc_url" = 
"jdbc:mysql://127.0.0.1:${mysql_port}/doris_test?useSSL=false",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/mysql-connector-java-8.0.25.jar";,
+            "jdbc_url" = 
"jdbc:mysql://${externalEnvIp}:${mysql_port}/doris_test?useSSL=false",
+            "driver_url" = "${driver_url}",
             "driver_class" = "com.mysql.cj.jdbc.Driver",
             "only_specified_database" = "true"
         );"""
@@ -147,8 +155,8 @@ suite("test_mysql_jdbc_catalog", "p0") {
             "type"="jdbc",
             "user"="root",
             "password"="123456",
-            "jdbc_url" = "jdbc:mysql://127.0.0.1:${mysql_port}?useSSL=false",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/mysql-connector-java-8.0.25.jar";,
+            "jdbc_url" = 
"jdbc:mysql://${externalEnvIp}:${mysql_port}?useSSL=false",
+            "driver_url" = "${driver_url}",
             "driver_class" = "com.mysql.cj.jdbc.Driver",
             "only_specified_database" = "true",
             "include_database_list" = "doris_test"
@@ -165,8 +173,8 @@ suite("test_mysql_jdbc_catalog", "p0") {
             "type"="jdbc",
             "user"="root",
             "password"="123456",
-            "jdbc_url" = "jdbc:mysql://127.0.0.1:${mysql_port}?useSSL=false",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/mysql-connector-java-8.0.25.jar";,
+            "jdbc_url" = 
"jdbc:mysql://${externalEnvIp}:${mysql_port}?useSSL=false",
+            "driver_url" = "${driver_url}",
             "driver_class" = "com.mysql.cj.jdbc.Driver",
             "only_specified_database" = "true",
             "exclude_database_list" = "doris_test"
@@ -183,8 +191,8 @@ suite("test_mysql_jdbc_catalog", "p0") {
             "type"="jdbc",
             "user"="root",
             "password"="123456",
-            "jdbc_url" = "jdbc:mysql://127.0.0.1:${mysql_port}?useSSL=false",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/mysql-connector-java-8.0.25.jar";,
+            "jdbc_url" = 
"jdbc:mysql://${externalEnvIp}:${mysql_port}?useSSL=false",
+            "driver_url" = "${driver_url}",
             "driver_class" = "com.mysql.cj.jdbc.Driver",
             "only_specified_database" = "true",
             "include_database_list" = "doris_test",
@@ -202,8 +210,8 @@ suite("test_mysql_jdbc_catalog", "p0") {
             "type"="jdbc",
             "jdbc.user"="root",
             "jdbc.password"="123456",
-            "jdbc.jdbc_url" = 
"jdbc:mysql://127.0.0.1:${mysql_port}/doris_test?useSSL=false",
-            "jdbc.driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/mysql-connector-java-8.0.25.jar";,
+            "jdbc.jdbc_url" = 
"jdbc:mysql://${externalEnvIp}:${mysql_port}/doris_test?useSSL=false",
+            "jdbc.driver_url" = "${driver_url}",
             "jdbc.driver_class" = "com.mysql.cj.jdbc.Driver");
         """
         sql """ switch ${catalog_name} """
@@ -222,8 +230,8 @@ suite("test_mysql_jdbc_catalog", "p0") {
             "type"="jdbc",
             "jdbc.user"="root",
             "jdbc.password"="123456",
-            "jdbc.jdbc_url" = 
"jdbc:mysql://127.0.0.1:${mysql_port}/doris_test?useSSL=false",
-            "jdbc.driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/mysql-connector-java-8.0.25.jar";,
+            "jdbc.jdbc_url" = 
"jdbc:mysql://${externalEnvIp}:${mysql_port}/doris_test?useSSL=false",
+            "jdbc.driver_url" = "${driver_url}",
             "jdbc.driver_class" = "com.mysql.cj.jdbc.Driver");
         """
         qt_mysql_view """ select * from view_catalog.doris_test.mysql_view 
order by col_1;"""
diff --git 
a/regression-test/suites/external_table_p0/jdbc/test_mysql_jdbc_catalog_nereids.groovy
 
b/regression-test/suites/external_table_p0/jdbc/test_mysql_jdbc_catalog_nereids.groovy
index 60c42a369c9..a25ce87ac98 100644
--- 
a/regression-test/suites/external_table_p0/jdbc/test_mysql_jdbc_catalog_nereids.groovy
+++ 
b/regression-test/suites/external_table_p0/jdbc/test_mysql_jdbc_catalog_nereids.groovy
@@ -15,8 +15,12 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_mysql_jdbc_catalog_nereids", "p0") {
+suite("test_mysql_jdbc_catalog_nereids", 
"p0,external,mysql,external_docker,external_docker_mysql") {
     String enabled = context.config.otherConfigs.get("enableJdbcTest")
+    String externalEnvIp = context.config.otherConfigs.get("externalEnvIp")
+    String s3_endpoint = getS3Endpoint()
+    String bucket = getS3BucketName()
+    String driver_url = 
"https://${bucket}.${s3_endpoint}/regression/jdbc_driver/mysql-connector-java-8.0.25.jar";
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
         String catalog_name = "mysql_jdbc_catalog_nereids";
         String internal_db_name = "regression_test_jdbc_catalog_p0";
@@ -47,6 +51,8 @@ suite("test_mysql_jdbc_catalog_nereids", "p0") {
         String test_insert = "test_insert";
         String test_insert2 = "test_insert2";
 
+        sql """create database if not exists ${internal_db_name}; """
+
         sql """ADMIN SET FRONTEND CONFIG ("enable_decimal_conversion" = 
"true");"""
         sql """drop catalog if exists ${catalog_name} """
 
@@ -57,8 +63,8 @@ suite("test_mysql_jdbc_catalog_nereids", "p0") {
             "type"="jdbc",
             "user"="root",
             "password"="123456",
-            "jdbc_url" = 
"jdbc:mysql://127.0.0.1:${mysql_port}/doris_test?useSSL=false",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/mysql-connector-java-8.0.25.jar";,
+            "jdbc_url" = 
"jdbc:mysql://${externalEnvIp}:${mysql_port}/doris_test?useSSL=false",
+            "driver_url" = "${driver_url}",
             "driver_class" = "com.mysql.cj.jdbc.Driver"
         );"""
         sql """use internal.${internal_db_name}"""
@@ -133,8 +139,8 @@ suite("test_mysql_jdbc_catalog_nereids", "p0") {
             "type"="jdbc",
             "jdbc.user"="root",
             "jdbc.password"="123456",
-            "jdbc.jdbc_url" = 
"jdbc:mysql://127.0.0.1:${mysql_port}/doris_test?useSSL=false",
-            "jdbc.driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/mysql-connector-java-8.0.25.jar";,
+            "jdbc.jdbc_url" = 
"jdbc:mysql://${externalEnvIp}:${mysql_port}/doris_test?useSSL=false",
+            "jdbc.driver_url" = "${driver_url}",
             "jdbc.driver_class" = "com.mysql.cj.jdbc.Driver");
         """
         sql """ switch ${catalog_name} """
diff --git 
a/regression-test/suites/external_table_p0/jdbc/test_oracle_jdbc_catalog.groovy 
b/regression-test/suites/external_table_p0/jdbc/test_oracle_jdbc_catalog.groovy
index 9809b39657b..77d3015239c 100644
--- 
a/regression-test/suites/external_table_p0/jdbc/test_oracle_jdbc_catalog.groovy
+++ 
b/regression-test/suites/external_table_p0/jdbc/test_oracle_jdbc_catalog.groovy
@@ -15,8 +15,12 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_oracle_jdbc_catalog", "p0") {
+suite("test_oracle_jdbc_catalog", 
"p0,external,oracle,external_docker,external_docker_oracle") {
     String enabled = context.config.otherConfigs.get("enableJdbcTest");
+    String externalEnvIp = context.config.otherConfigs.get("externalEnvIp")
+    String s3_endpoint = getS3Endpoint()
+    String bucket = getS3BucketName()
+    String driver_url = 
"https://${bucket}.${s3_endpoint}/regression/jdbc_driver/ojdbc8.jar";
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
         String catalog_name = "oracle_catalog";
         String internal_db_name = "regression_test_jdbc_catalog_p0";
@@ -28,20 +32,22 @@ suite("test_oracle_jdbc_catalog", "p0") {
 
         String inDorisTable = "doris_in_tb";
 
+        sql """create database if not exists ${internal_db_name}; """
+
         sql """drop catalog if exists ${catalog_name} """
 
         sql """create catalog if not exists ${catalog_name} properties(
                     "type"="jdbc",
                     "user"="doris_test",
                     "password"="123456",
-                    "jdbc_url" = 
"jdbc:oracle:thin:@127.0.0.1:${oracle_port}:${SID}",
-                    "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/ojdbc8.jar";,
+                    "jdbc_url" = 
"jdbc:oracle:thin:@${externalEnvIp}:${oracle_port}:${SID}",
+                    "driver_url" = "${driver_url}",
                     "driver_class" = "oracle.jdbc.driver.OracleDriver"
         );"""
-
-        sql  """ drop table if exists ${inDorisTable} """
+        sql """use ${internal_db_name}"""
+        sql  """ drop table if exists ${internal_db_name}.${inDorisTable} """
         sql  """
-              CREATE TABLE ${inDorisTable} (
+              CREATE TABLE ${internal_db_name}.${inDorisTable} (
                 `id` INT NULL COMMENT "主键id",
                 `name` string NULL COMMENT "名字",
                 `age` INT NULL COMMENT "年龄"
@@ -99,8 +105,8 @@ suite("test_oracle_jdbc_catalog", "p0") {
                     "type"="jdbc",
                     "user"="doris_test",
                     "password"="123456",
-                    "jdbc_url" = 
"jdbc:oracle:thin:@127.0.0.1:${oracle_port}:${SID}",
-                    "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/ojdbc8.jar";,
+                    "jdbc_url" = 
"jdbc:oracle:thin:@${externalEnvIp}:${oracle_port}:${SID}",
+                    "driver_url" = "${driver_url}",
                     "driver_class" = "oracle.jdbc.driver.OracleDriver",
                     "only_specified_database" = "true"
         );"""
@@ -114,8 +120,8 @@ suite("test_oracle_jdbc_catalog", "p0") {
                     "type"="jdbc",
                     "user"="doris_test",
                     "password"="123456",
-                    "jdbc_url" = 
"jdbc:oracle:thin:@127.0.0.1:${oracle_port}:${SID}",
-                    "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/ojdbc8.jar";,
+                    "jdbc_url" = 
"jdbc:oracle:thin:@${externalEnvIp}:${oracle_port}:${SID}",
+                    "driver_url" = "${driver_url}",
                     "driver_class" = "oracle.jdbc.driver.OracleDriver",
                     "only_specified_database" = "true",
                     "include_database_list" = "${ex_db_name}"
@@ -130,8 +136,8 @@ suite("test_oracle_jdbc_catalog", "p0") {
                     "type"="jdbc",
                     "user"="doris_test",
                     "password"="123456",
-                    "jdbc_url" = 
"jdbc:oracle:thin:@127.0.0.1:${oracle_port}:${SID}",
-                    "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/ojdbc8.jar";,
+                    "jdbc_url" = 
"jdbc:oracle:thin:@${externalEnvIp}:${oracle_port}:${SID}",
+                    "driver_url" = "${driver_url}",
                     "driver_class" = "oracle.jdbc.driver.OracleDriver",
                     "lower_case_table_names" = "true"
         );"""
@@ -152,8 +158,8 @@ suite("test_oracle_jdbc_catalog", "p0") {
                     "type"="jdbc",
                     "user"="doris_test",
                     "password"="123456",
-                    "jdbc_url" = 
"jdbc:oracle:thin:@127.0.0.1:${oracle_port}:${SID}",
-                    "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/ojdbc8.jar";,
+                    "jdbc_url" = 
"jdbc:oracle:thin:@${externalEnvIp}:${oracle_port}:${SID}",
+                    "driver_url" = "${driver_url}",
                     "driver_class" = "oracle.jdbc.driver.OracleDriver",
                     "lower_case_table_names" = "true"
         );"""
diff --git 
a/regression-test/suites/external_table_p0/jdbc/test_pg_jdbc_catalog.groovy 
b/regression-test/suites/external_table_p0/jdbc/test_pg_jdbc_catalog.groovy
index db7374d929e..f92bb37be68 100644
--- a/regression-test/suites/external_table_p0/jdbc/test_pg_jdbc_catalog.groovy
+++ b/regression-test/suites/external_table_p0/jdbc/test_pg_jdbc_catalog.groovy
@@ -15,31 +15,37 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_pg_jdbc_catalog", "p0") {
+suite("test_pg_jdbc_catalog", 
"p0,external,pg,external_docker,external_docker_pg") {
     String enabled = context.config.otherConfigs.get("enableJdbcTest")
+    String externalEnvIp = context.config.otherConfigs.get("externalEnvIp")
+    String s3_endpoint = getS3Endpoint()
+    String bucket = getS3BucketName()
+    String driver_url = 
"https://${bucket}.${s3_endpoint}/regression/jdbc_driver/postgresql-42.5.0.jar";
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
         String catalog_name = "pg_jdbc_catalog";
         String internal_db_name = "regression_test_jdbc_catalog_p0";
         String ex_schema_name = "doris_test";
         String ex_schema_name2 = "catalog_pg_test";
         String pg_port = context.config.otherConfigs.get("pg_14_port");
-        String inDorisTable = "doris_in_tb";
+        String inDorisTable = "test_pg_jdbc_doris_in_tb";
         String test_insert = "test_insert";
 
+        sql """create database if not exists ${internal_db_name}; """
+
         sql """drop catalog if exists ${catalog_name} """
 
         sql """create catalog if not exists ${catalog_name} properties(
             "type"="jdbc",
             "user"="postgres",
             "password"="123456",
-            "jdbc_url" = 
"jdbc:postgresql://127.0.0.1:${pg_port}/postgres?currentSchema=doris_test&useSSL=false",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/postgresql-42.5.0.jar";,
+            "jdbc_url" = 
"jdbc:postgresql://${externalEnvIp}:${pg_port}/postgres?currentSchema=doris_test&useSSL=false",
+            "driver_url" = "${driver_url}",
             "driver_class" = "org.postgresql.Driver"
         );"""
-
-        sql  """ drop table if exists ${inDorisTable} """
+        sql """use ${internal_db_name}"""
+        sql  """ drop table if exists ${internal_db_name}.${inDorisTable} """
         sql  """
-              CREATE TABLE ${inDorisTable} (
+              CREATE TABLE ${internal_db_name}.${inDorisTable} (
                 `id` INT NULL COMMENT "主键id",
                 `name` string NULL COMMENT "名字"
                 ) DISTRIBUTED BY HASH(id) BUCKETS 10
@@ -106,8 +112,8 @@ suite("test_pg_jdbc_catalog", "p0") {
             "type"="jdbc",
             "user"="postgres",
             "password"="123456",
-            "jdbc_url" = 
"jdbc:postgresql://127.0.0.1:${pg_port}/postgres?currentSchema=doris_test&useSSL=false",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/postgresql-42.5.0.jar";,
+            "jdbc_url" = 
"jdbc:postgresql://${externalEnvIp}:${pg_port}/postgres?currentSchema=doris_test&useSSL=false",
+            "driver_url" = "${driver_url}",
             "driver_class" = "org.postgresql.Driver",
             "only_specified_database" = "true"
         );"""
@@ -121,8 +127,8 @@ suite("test_pg_jdbc_catalog", "p0") {
             "type"="jdbc",
             "user"="postgres",
             "password"="123456",
-            "jdbc_url" = 
"jdbc:postgresql://127.0.0.1:${pg_port}/postgres?currentSchema=doris_test&useSSL=false",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/postgresql-42.5.0.jar";,
+            "jdbc_url" = 
"jdbc:postgresql://${externalEnvIp}:${pg_port}/postgres?currentSchema=doris_test&useSSL=false",
+            "driver_url" = "${driver_url}",
             "driver_class" = "org.postgresql.Driver",
             "only_specified_database" = "true",
             "include_database_list" = "doris_test"
@@ -137,8 +143,8 @@ suite("test_pg_jdbc_catalog", "p0") {
             "type"="jdbc",
             "user"="postgres",
             "password"="123456",
-            "jdbc_url" = 
"jdbc:postgresql://127.0.0.1:${pg_port}/postgres?currentSchema=doris_test&useSSL=false",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/postgresql-42.5.0.jar";,
+            "jdbc_url" = 
"jdbc:postgresql://${externalEnvIp}:${pg_port}/postgres?currentSchema=doris_test&useSSL=false",
+            "driver_url" = "${driver_url}",
             "driver_class" = "org.postgresql.Driver",
             "only_specified_database" = "true",
             "exclude_database_list" = "doris_test"
@@ -153,8 +159,8 @@ suite("test_pg_jdbc_catalog", "p0") {
             "type"="jdbc",
             "user"="postgres",
             "password"="123456",
-            "jdbc_url" = 
"jdbc:postgresql://127.0.0.1:${pg_port}/postgres?currentSchema=doris_test&useSSL=false",
-            "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/postgresql-42.5.0.jar";,
+            "jdbc_url" = 
"jdbc:postgresql://${externalEnvIp}:${pg_port}/postgres?currentSchema=doris_test&useSSL=false",
+            "driver_url" = "${driver_url}",
             "driver_class" = "org.postgresql.Driver",
             "only_specified_database" = "true",
             "include_database_list" = "doris_test",
@@ -169,8 +175,8 @@ suite("test_pg_jdbc_catalog", "p0") {
             "type"="jdbc",
             "jdbc.user"="postgres",
             "jdbc.password"="123456",
-            "jdbc.jdbc_url" = 
"jdbc:postgresql://127.0.0.1:${pg_port}/postgres?useSSL=false&currentSchema=doris_test",
-            "jdbc.driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/postgresql-42.5.0.jar";,
+            "jdbc.jdbc_url" = 
"jdbc:postgresql://${externalEnvIp}:${pg_port}/postgres?useSSL=false&currentSchema=doris_test",
+            "jdbc.driver_url" = "${driver_url}",
             "jdbc.driver_class" = "org.postgresql.Driver");
         """
 
diff --git 
a/regression-test/suites/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.groovy
 
b/regression-test/suites/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.groovy
index f1184df91a7..65a85a8fd3a 100644
--- 
a/regression-test/suites/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.groovy
+++ 
b/regression-test/suites/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.groovy
@@ -15,27 +15,33 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_sqlserver_jdbc_catalog", "p0") {
+suite("test_sqlserver_jdbc_catalog", 
"p0,external,sqlserver,external_docker,external_docker_sqlserver") {
     String enabled = context.config.otherConfigs.get("enableJdbcTest");
+    String externalEnvIp = context.config.otherConfigs.get("externalEnvIp")
+    String s3_endpoint = getS3Endpoint()
+    String bucket = getS3BucketName()
+    String driver_url = 
"https://${bucket}.${s3_endpoint}/regression/jdbc_driver/mssql-jdbc-11.2.3.jre8.jar";
     if (enabled != null && enabled.equalsIgnoreCase("true")) {
         String catalog_name = "sqlserver_catalog";
-        String internal_db_name = "regression_test_jdbc_catalog_p0";
+        String internal_db_name = "sqlserver_jdbc_catalog_p0";
         String ex_db_name = "dbo";
         String sqlserver_port = 
context.config.otherConfigs.get("sqlserver_2022_port");
 
-        String inDorisTable = "doris_in_tb";
+        String inDorisTable = "test_sqlserver_doris_in_tb";
 
         sql """ drop catalog if exists ${catalog_name} """
 
         sql """ create catalog if not exists ${catalog_name} properties(
                     "type"="jdbc",
-                    "user"="SA",
+                    "user"="sa",
                     "password"="Doris123456",
-                    "jdbc_url" = 
"jdbc:sqlserver://127.0.0.1:${sqlserver_port};encrypt=false;DataBaseName=doris_test",
-                    "driver_url" = 
"https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/jdbc_driver/mssql-jdbc-11.2.3.jre8.jar";,
+                    "jdbc_url" = 
"jdbc:sqlserver://${externalEnvIp}:${sqlserver_port};encrypt=false;databaseName=doris_test;",
+                    "driver_url" = "${driver_url}",
                     "driver_class" = 
"com.microsoft.sqlserver.jdbc.SQLServerDriver"
         );"""
-
+        sql """drop database if exists ${internal_db_name}"""
+        sql """create database if not exists ${internal_db_name}"""
+        sql """use ${internal_db_name}"""
         sql  """ drop table if exists ${inDorisTable} """
         sql  """
               CREATE TABLE ${inDorisTable} (
diff --git 
a/regression-test/suites/external_table_p0/paimon/test_paimon_catalog.groovy 
b/regression-test/suites/external_table_p0/paimon/test_paimon_catalog.groovy
index ad72a47e64d..8c4e257f1f1 100644
--- a/regression-test/suites/external_table_p0/paimon/test_paimon_catalog.groovy
+++ b/regression-test/suites/external_table_p0/paimon/test_paimon_catalog.groovy
@@ -72,10 +72,14 @@ suite("test_paimon_catalog", 
"p0,external,doris,external_docker,external_docker_
             def c15 = """select * from all_table where c15='a';"""
             def c16 = """select * from all_table where c16=true;"""
             def c18 = """select * from all_table where c18='2023-08-13 
09:32:38.53';"""
-            def c19 = """select * from auto_bucket;"""
+            def c19 = """select * from auto_bucket order by user_id;"""
             def c20 = """select * from auto_bucket where dt="b";"""
             def c21 = """select * from auto_bucket where dt="b" and hh="c";"""
             def c22 = """select * from auto_bucket where dt="d";"""
+            def c23 = """select * from complex_tab order by c1;"""
+            def c24 = """select * from complex_tab where c1=1;"""
+            def c26 = """select array_max(c2) from complex_tab"""
+            def c25 = """select c3['a_test'], c3['b_test'], c3['bbb'], 
c3['ccc'] from complex_tab"""
 
             String hdfs_port = context.config.otherConfigs.get("hdfs_port")
             String catalog_name = "paimon1"
diff --git 
a/regression-test/suites/external_table_p0/tvf/test_backends_tvf.groovy 
b/regression-test/suites/external_table_p0/tvf/test_backends_tvf.groovy
index e448e50b852..be497ee25a8 100644
--- a/regression-test/suites/external_table_p0/tvf/test_backends_tvf.groovy
+++ b/regression-test/suites/external_table_p0/tvf/test_backends_tvf.groovy
@@ -16,7 +16,7 @@
 // under the License.
 
 // This suit test the `backends` tvf
-suite("test_backends_tvf") {
+suite("test_backends_tvf","p0,external,tvf,external_docker") {
     List<List<Object>> table =  sql """ select * from backends(); """
     assertTrue(table.size() > 0)
     assertEquals(24, table[0].size)
diff --git 
a/regression-test/suites/external_table_p0/tvf/test_catalogs_tvf.groovy 
b/regression-test/suites/external_table_p0/tvf/test_catalogs_tvf.groovy
index e1a98b00375..aec1a3ccc26 100644
--- a/regression-test/suites/external_table_p0/tvf/test_catalogs_tvf.groovy
+++ b/regression-test/suites/external_table_p0/tvf/test_catalogs_tvf.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_catalogs_tvf") {
+suite("test_catalogs_tvf","p0,external,tvf,external_docker") {
     List<List<Object>> table =  sql """ select * from catalogs(); """
     assertTrue(table.size() > 0)
     assertEquals(5, table[0].size)
diff --git 
a/regression-test/suites/external_table_p0/tvf/test_create_view_from_tvf.groovy 
b/regression-test/suites/external_table_p0/tvf/test_create_view_from_tvf.groovy
index c98cfb328e1..d845d6f8129 100644
--- 
a/regression-test/suites/external_table_p0/tvf/test_create_view_from_tvf.groovy
+++ 
b/regression-test/suites/external_table_p0/tvf/test_create_view_from_tvf.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
- suite("test_create_view_from_tvf") {
+ suite("test_create_view_from_tvf","p0,external,tvf,external_docker") {
     String testViewName = "test_view_from_number"
 
     def create_view = {createViewSql -> 
diff --git 
a/regression-test/suites/external_table_p0/tvf/test_frontends_tvf.groovy 
b/regression-test/suites/external_table_p0/tvf/test_frontends_tvf.groovy
index 05f85eb85a5..e247f8bdf1a 100644
--- a/regression-test/suites/external_table_p0/tvf/test_frontends_tvf.groovy
+++ b/regression-test/suites/external_table_p0/tvf/test_frontends_tvf.groovy
@@ -16,7 +16,7 @@
 // under the License.
 
 // This suit test the `frontends` tvf
-suite("test_frontends_tvf") {
+suite("test_frontends_tvf","p0,external,tvf,external_docker") {
     List<List<Object>> table =  sql """ select * from `frontends`(); """
     assertTrue(table.size() > 0)
     assertTrue(table[0].size == 17)
diff --git a/regression-test/suites/external_table_p0/tvf/test_hdfs_tvf.groovy 
b/regression-test/suites/external_table_p0/tvf/test_hdfs_tvf.groovy
index a4b9bdd71c8..856646fff21 100644
--- a/regression-test/suites/external_table_p0/tvf/test_hdfs_tvf.groovy
+++ b/regression-test/suites/external_table_p0/tvf/test_hdfs_tvf.groovy
@@ -15,7 +15,7 @@
 // specific language governing permissions and limitations
 // under the License.
 
-suite("test_hdfs_tvf") {
+suite("test_hdfs_tvf","external,hive,tvf,external_docker") {
     String hdfs_port = context.config.otherConfigs.get("hdfs_port")
     // It's okay to use random `hdfsUser`, but can not be empty.
     def hdfsUserName = "doris"
diff --git 
a/regression-test/suites/external_table_p0/tvf/test_insert_from_tvf_with_common_user.groovy
 
b/regression-test/suites/external_table_p0/tvf/test_insert_from_tvf_with_common_user.groovy
index c83c247f11b..48ebfe91fac 100644
--- 
a/regression-test/suites/external_table_p0/tvf/test_insert_from_tvf_with_common_user.groovy
+++ 
b/regression-test/suites/external_table_p0/tvf/test_insert_from_tvf_with_common_user.groovy
@@ -21,7 +21,7 @@ import java.nio.charset.StandardCharsets
 import java.nio.file.Files
 import java.nio.file.Paths
 
-suite("test_insert_from_tvf_with_common_user", "p0") {
+suite("test_insert_from_tvf_with_common_user","p0,external,hive,tvf,external_docker")
 {
     String ak = getS3AK()
     String sk = getS3SK()
     String s3_endpoint = getS3Endpoint()
diff --git 
a/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type.groovy
 
b/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type.groovy
index cd5948b22c3..bd7c6cda549 100644
--- 
a/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type.groovy
+++ 
b/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type.groovy
@@ -18,7 +18,7 @@ import org.junit.Assert
 // under the License.
 
 // This suit test the `backends` tvf
-suite("test_local_tvf_with_complex_type", "p0") {
+suite("test_local_tvf_with_complex_type","external,hive,tvf,external_docker") {
     List<List<Object>> backends =  sql """ show backends """
     def dataFilePath = context.config.dataPath + "/external_table_p0/tvf/"
 
diff --git 
a/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type_element_at.groovy
 
b/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type_element_at.groovy
index 91c00a9046a..01497d7f301 100644
--- 
a/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type_element_at.groovy
+++ 
b/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type_element_at.groovy
@@ -18,7 +18,7 @@ import org.junit.Assert
 // under the License.
 
 // This suit test the `backends` tvf
-suite("test_local_tvf_with_complex_type_element_at", "p0") {
+suite("test_local_tvf_with_complex_type_element_at","external,hive,tvf,external_docker")
 {
     List<List<Object>> backends =  sql """ show backends """
     assertTrue(backends.size() > 0)
     def be_id = backends[0][0]
diff --git 
a/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type_insertinto_doris.groovy
 
b/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type_insertinto_doris.groovy
index 04feab78ddb..5d68209b6db 100644
--- 
a/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type_insertinto_doris.groovy
+++ 
b/regression-test/suites/external_table_p0/tvf/test_local_tvf_with_complex_type_insertinto_doris.groovy
@@ -18,7 +18,7 @@ import org.junit.Assert
 // under the License.
 
 // This suit test the `backends` tvf
-suite("test_local_tvf_with_complex_type_insertinto_doris", "p0") {
+suite("test_local_tvf_with_complex_type_insertinto_doris","external,hive,tvf,external_docker")
 {
     sql """set enable_nereids_planner=false"""
     List<List<Object>> backends =  sql """ select * from backends(); """
     assertTrue(backends.size() > 0)
diff --git a/regression-test/suites/external_table_p0/tvf/test_numbers.groovy 
b/regression-test/suites/external_table_p0/tvf/test_numbers.groovy
index f7647b178db..d3341eb54ea 100644
--- a/regression-test/suites/external_table_p0/tvf/test_numbers.groovy
+++ b/regression-test/suites/external_table_p0/tvf/test_numbers.groovy
@@ -16,7 +16,7 @@
  // under the License.
 
 
- suite("test_numbers") {
+ suite("test_numbers","external,hive,tvf,external_docker") {
     // Test basic features
     qt_basic1 """ select * from numbers("number" = "1"); """
     qt_basic2 """ select * from numbers("number" = "10"); """


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

Reply via email to