You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by kx...@apache.org on 2023/11/09 10:42:22 UTC

(doris) branch branch-2.0 updated: [Branch-2.0](regression-test) Add tvf regression tests #26322 #26455 (#26566)

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

kxiao 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 b6908134f8a [Branch-2.0](regression-test) Add tvf regression tests #26322 #26455 (#26566)
b6908134f8a is described below

commit b6908134f8ada61c34a2f1b451feb4beb1165e00
Author: Tiewei Fang <43...@users.noreply.github.com>
AuthorDate: Thu Nov 9 18:42:14 2023 +0800

    [Branch-2.0](regression-test) Add tvf regression tests #26322 #26455 (#26566)
---
 .../data/external_table_p0/tvf/test_hdfs_tvf.out   | 259 +++++++++++++++++++++
 .../data/external_table_p0/tvf/test_s3_tvf.out     |  29 +++
 .../external_table_p2/tvf/test_iceberg_meta.out    |  22 ++
 .../external_table_p0/tvf/test_backends_tvf.groovy |   9 +
 .../external_table_p0/tvf/test_catalogs_tvf.groovy |   8 +
 .../tvf/test_frontends_tvf.groovy                  |   8 +
 .../external_table_p0/tvf/test_hdfs_tvf.groovy     |  86 +++++++
 .../external_table_p0/tvf/test_numbers.groovy      |  45 ++--
 .../external_table_p0/tvf/test_s3_tvf.groovy       | 120 ++++++++++
 .../external_table_p2/tvf/test_iceberg_meta.groovy |  51 ++++
 10 files changed, 622 insertions(+), 15 deletions(-)

diff --git a/regression-test/data/external_table_p0/tvf/test_hdfs_tvf.out b/regression-test/data/external_table_p0/tvf/test_hdfs_tvf.out
index 3b92df238be..98a1324abd7 100644
--- a/regression-test/data/external_table_p0/tvf/test_hdfs_tvf.out
+++ b/regression-test/data/external_table_p0/tvf/test_hdfs_tvf.out
@@ -357,3 +357,262 @@ s_phone	TEXT	Yes	false	\N	NONE
 s_acctbal	DECIMAL(12, 2)	Yes	false	\N	NONE
 s_comment	TEXT	Yes	false	\N	NONE
 
+-- !hdfs_compatible --
+0	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+1	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+10	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+100	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+101	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+102	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+103	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+104	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+105	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+106	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+107	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+108	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+109	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+11	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+110	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+111	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+112	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+113	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+114	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+115	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+116	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+117	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+118	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+119	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+12	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+13	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+14	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+15	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+16	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+17	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+18	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+19	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+2	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+20	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+21	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+22	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+23	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+24	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+25	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+26	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+27	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+28	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+29	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+3	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+30	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+31	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+32	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+33	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+34	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+35	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+36	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+37	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+38	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+39	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+4	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+40	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+41	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+42	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+43	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+44	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+45	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+46	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+47	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+48	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+49	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+5	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+50	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+51	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+52	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+53	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+54	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+55	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+56	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+57	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+58	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+59	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+6	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+60	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+61	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+62	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+63	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+64	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+65	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+66	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+67	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+68	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+69	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+7	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+70	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+71	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+72	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+73	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+74	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+75	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+76	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+77	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+78	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+79	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+8	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+80	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+81	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+82	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+83	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+84	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+85	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+86	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+87	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+88	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+89	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+9	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+90	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+91	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+92	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+93	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+94	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+95	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+96	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+97	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+98	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+99	2	3	4	5	6.6	7.7	8.8	abc	def	ghiaaaaaa	2020-10-10	2020-10-10 11:12:59
+
+-- !hdfs_csv_schema --
+0	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+1	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+10	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+100	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+101	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+102	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+103	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+104	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+105	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+106	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+107	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+108	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+109	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+11	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+110	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+111	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+112	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+113	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+114	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+115	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+116	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+117	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+118	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+119	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+12	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+13	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+14	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+15	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+16	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+17	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+18	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+19	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+2	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+20	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+21	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+22	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+23	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+24	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+25	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+26	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+27	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+28	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+29	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+3	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+30	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+31	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+32	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+33	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+34	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+35	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+36	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+37	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+38	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+39	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+4	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+40	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+41	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+42	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+43	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+44	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+45	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+46	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+47	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+48	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+49	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+5	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+50	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+51	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+52	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+53	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+54	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+55	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+56	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+57	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+58	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+59	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+6	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+60	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+61	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+62	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+63	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+64	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+65	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+66	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+67	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+68	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+69	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+7	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+70	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+71	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+72	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+73	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+74	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+75	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+76	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+77	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+78	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+79	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+8	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+80	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+81	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+82	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+83	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+84	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+85	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+86	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+87	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+88	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+89	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+9	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+90	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+91	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+92	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+93	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+94	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+95	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+96	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+97	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+98	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+99	2	3	4	5	6.6	7.7	8.80000	abc	abc	abc	2020-10-10	2020-10-10T11:12:59
+
+-- !hdfs_desc_csv_schema --
+bigint_col	BIGINT	Yes	false	\N	NONE
+date_col	DATE	Yes	false	\N	NONE
+datetime_col	DATETIME(3)	Yes	false	\N	NONE
+decimal_col	DECIMAL(10, 5)	Yes	false	\N	NONE
+double_col	DOUBLE	Yes	false	\N	NONE
+float_col	FLOAT	Yes	false	\N	NONE
+id	INT	Yes	false	\N	NONE
+largeint_col	LARGEINT	Yes	false	\N	NONE
+smallint_col	SMALLINT	Yes	false	\N	NONE
+string_col	TEXT	Yes	false	\N	NONE
+string_col	TEXT	Yes	false	\N	NONE
+string_col	TEXT	Yes	false	\N	NONE
+tinyint_col	TINYINT	Yes	false	\N	NONE
+
diff --git a/regression-test/data/external_table_p0/tvf/test_s3_tvf.out b/regression-test/data/external_table_p0/tvf/test_s3_tvf.out
new file mode 100644
index 00000000000..3128c590bc8
--- /dev/null
+++ b/regression-test/data/external_table_p0/tvf/test_s3_tvf.out
@@ -0,0 +1,29 @@
+-- This file is automatically generated. You should know what you did if you want to edit this
+-- !select_base --
+1	doris1	18
+2	doris2	19
+3	doris3	99
+4	doris4	\N
+5	doris5	15
+
+-- !select_1 --
+1	doris1	18
+2	doris2	19
+3	doris3	99
+4	doris4	\N
+5	doris5	15
+
+-- !select_2 --
+1	doris1	18
+2	doris2	19
+3	doris3	99
+4	doris4	\N
+5	doris5	15
+
+-- !select_3 --
+1	doris1	18
+2	doris2	19
+3	doris3	99
+4	doris4	\N
+5	doris5	15
+
diff --git a/regression-test/data/external_table_p2/tvf/test_iceberg_meta.out b/regression-test/data/external_table_p2/tvf/test_iceberg_meta.out
new file mode 100644
index 00000000000..b62e2d7510a
--- /dev/null
+++ b/regression-test/data/external_table_p2/tvf/test_iceberg_meta.out
@@ -0,0 +1,22 @@
+-- This file is automatically generated. You should know what you did if you want to edit this
+-- !q01 --
+2879562
+
+-- !q02 --
+1
+11
+3
+5
+6
+7
+8
+
+-- !tvf_1 --
+2023-10-16T21:01:06	4012471924714711043	5784892960796156942	append
+2023-10-16T21:01:06	5784892960796156942	-1	append
+2023-10-16T21:01:06	7235593032487457798	4012471924714711043	append
+2023-10-16T21:01:07	1953697979105284524	7235593032487457798	append
+
+-- !tvf_2 --
+2023-10-16T21:01:06	7235593032487457798	4012471924714711043	append
+
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 be497ee25a8..2705119a1b7 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
@@ -58,4 +58,13 @@ suite("test_backends_tvf","p0,external,tvf,external_docker") {
             MaxDiskUsedPct, RemoteUsedCapacity, Tag, ErrMsg, Version, Status
             HeartbeatFailureCounter, NodeRole from backends();
     """
+
+
+    // test exception
+    test {
+        sql """ select * from backends("backendId" = "10003"); """
+
+        // check exception
+        exception "backends table-valued-function does not support any params"
+    }
 }
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 aec1a3ccc26..a59953cf567 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
@@ -68,4 +68,12 @@ suite("test_catalogs_tvf","p0,external,tvf,external_docker") {
     qt_create """ select CatalogName,CatalogType,Property,Value from catalogs() where CatalogName in ("catalog_test_es00","catalog_test_hive00") and Property="type" order by Value"""
     
     sql """ drop catalog catalog_test_es00 """
+
+    // test exception
+    test {
+        sql """ select * from catalogs("Host" = "127.0.0.1"); """
+
+        // check exception
+        exception "catalogs table-valued-function does not support any params"
+    }
 }
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 e247f8bdf1a..5f276ac08bb 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
@@ -47,4 +47,12 @@ suite("test_frontends_tvf","p0,external,tvf,external_docker") {
             `Join`, Alive, ReplayedJournalId, LastHeartbeat
             IsHelper, ErrMsg, Version, CurrentConnected from frontends();
     """
+
+    // test exception
+    test {
+        sql """ select * from frontends("Host" = "127.0.0.1"); """
+
+        // check exception
+        exception "frontends table-valued-function does not support any params"
+    }
 }
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 61c049a0a04..2c2754739a5 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
@@ -246,7 +246,93 @@ suite("test_hdfs_tvf","external,hive,tvf,external_docker") {
                             "uri" = "${uri}",
                             "hadoop.username" = "${hdfsUserName}",
                             "format" = "${format}"); """
+
+
+            // test hdfs function compatible
+            // because the property `fs.defaultFS` has been delete by pr https://github.com/apache/doris/pull/24706
+            // we should test the compatible of `fs.defaultFS`
+            uri = "${defaultFS}" + "/user/doris/preinstalled_data/csv_format_test/all_types.csv"
+            format = "csv"
+            order_qt_hdfs_compatible """ select * from HDFS(
+                        "uri" = "${uri}",
+                        "fs.defaultFS"= "${defaultFS}",
+                        "hadoop.username" = "${hdfsUserName}",
+                        "column_separator" = ",",
+                        "format" = "${format}") order by c1; """
+
+            // test csv_schema property
+            uri = "${defaultFS}" + "/user/doris/preinstalled_data/csv_format_test/all_types.csv"
+            format = "csv"
+            order_qt_hdfs_csv_schema """ select * from HDFS(
+                        "uri" = "${uri}",
+                        "csv_schema" = "id:int;tinyint_col:tinyint;smallint_col:smallint;bigint_col:bigint;largeint_col:largeint;float_col:float;double_col:double;decimal_col:decimal(10,5);string_col:string;string_col:string;string_col:string;date_col:date;datetime_col:datetime(3)",
+                        "hadoop.username" = "${hdfsUserName}",
+                        "column_separator" = ",",
+                        "format" = "${format}") order by id; """
+
+            order_qt_hdfs_desc_csv_schema """ desc function HDFS(
+                        "uri" = "${uri}",
+                        "csv_schema" = "id:int;tinyint_col:tinyint;smallint_col:smallint;bigint_col:bigint;largeint_col:largeint;float_col:float;double_col:double;decimal_col:decimal(10,5);string_col:string;string_col:string;string_col:string;date_col:date;datetime_col:datetime(3)",
+                        "hadoop.username" = "${hdfsUserName}",
+                        "column_separator" = ",",
+                        "format" = "${format}"); """
+
         } finally {
         }
     }
+
+    // test exception
+    test {
+        sql """ select * from HDFS(
+                        "uri" = "",
+                        "hadoop.username" = "${hdfsUserName}",
+                        "column_separator" = ",",
+                        "format" = "csv") order by c1;
+            """
+
+        // check exception
+        exception """Properties 'uri' is required"""
+    }
+
+    // test exception
+    test {
+        sql """ select * from HDFS(
+                        "uri" = "xx",
+                        "hadoop.username" = "${hdfsUserName}",
+                        "column_separator" = ",",
+                        "format" = "csv") order by c1;
+            """
+
+        // check exception
+        exception """Invalid export path, there is no schema of URI found. please check your path"""
+    }
+
+    // test exception
+    test {
+        sql """ select * from HDFS(
+                        "uri" = "xx",
+                        "hadoop.username" = "${hdfsUserName}",
+                        "column_separator" = "",
+                        "format" = "csv") order by c1;
+            """
+
+        // check exception
+        exception """column_separator can not be empty"""
+    }
+
+
+    // test exception
+    test {
+        sql """ select * from HDFS(
+                        "uri" = "xx",
+                        "hadoop.username" = "${hdfsUserName}",
+                        "line_delimiter" = "",
+                        "format" = "csv") order by c1;
+            """
+
+        // check exception
+        exception """line_delimiter can not be empty"""
+    }
+
+
 }
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 d3341eb54ea..05c18f51b59 100644
--- a/regression-test/suites/external_table_p0/tvf/test_numbers.groovy
+++ b/regression-test/suites/external_table_p0/tvf/test_numbers.groovy
@@ -1,19 +1,19 @@
 // Licensed to the Apache Software Foundation (ASF) under one
- // or more contributor license agreements.  See the NOTICE file
- // distributed with this work for additional information
- // regarding copyright ownership.  The ASF licenses this file
- // to you under the Apache License, Version 2.0 (the
- // "License"); you may not use this file except in compliance
- // with the License.  You may obtain a copy of the License at
- //
- //   http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing,
- // software distributed under the License is distributed on an
- // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- // KIND, either express or implied.  See the License for the
- // specific language governing permissions and limitations
- // under the License.
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
 
 
  suite("test_numbers","external,hive,tvf,external_docker") {
@@ -123,4 +123,19 @@
     // test subquery
     order_qt_subquery_1 """ with a as (select number from numbers("number"="3")) select * from a; """
     order_qt_subquery_2 """ select * from (select number from numbers("number"="3")) a join (select * from (select number from numbers("number"="1")) a join (select 1) b) b; """
+
+    // test exception
+    test {
+        sql """ select * from numbers('number' = 'abc'); """
+
+        // check exception
+        exception "can not parse `number` param to natural number"
+    }
+
+    test {
+        sql """ select * from numbers(); """
+
+        // check exception
+        exception """can not find `number` param, please specify `number`, like: numbers("number" = "10")"""
+    }
  }
diff --git a/regression-test/suites/external_table_p0/tvf/test_s3_tvf.groovy b/regression-test/suites/external_table_p0/tvf/test_s3_tvf.groovy
new file mode 100644
index 00000000000..0a4110d0472
--- /dev/null
+++ b/regression-test/suites/external_table_p0/tvf/test_s3_tvf.groovy
@@ -0,0 +1,120 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+suite("test_s3_tvf", "p0") {
+    // open nereids
+    sql """ set enable_nereids_planner=true """
+    sql """ set enable_fallback_to_original_planner=false """
+
+    String ak = getS3AK()
+    String sk = getS3SK()
+    String s3_endpoint = getS3Endpoint()
+    String region = getS3Region()
+    String bucket = context.config.otherConfigs.get("s3BucketName");
+
+
+    def export_table_name = "test_s3_tvf_export_test"
+    def outFilePath = "${bucket}/test_s3_tvf/export_test/exp_"
+
+
+    def create_table = {table_name ->
+        sql """ DROP TABLE IF EXISTS ${table_name} """
+        sql """
+        CREATE TABLE IF NOT EXISTS ${table_name} (
+            `user_id` LARGEINT NOT NULL COMMENT "用户id",
+            `name` STRING COMMENT "用户名称",
+            `age` INT COMMENT "用户年龄",
+            )
+            DISTRIBUTED BY HASH(user_id) PROPERTIES("replication_num" = "1");
+        """
+    }
+
+    def outfile_to_S3 = {
+        // select ... into outfile ...
+        def res = sql """
+            SELECT * FROM ${export_table_name} t ORDER BY user_id
+            INTO OUTFILE "s3://${outFilePath}"
+            FORMAT AS ORC
+            PROPERTIES (
+                "s3.endpoint" = "${s3_endpoint}",
+                "s3.region" = "${region}",
+                "s3.secret_key"="${sk}",
+                "s3.access_key" = "${ak}"
+            );
+        """
+
+        return res[0][3]
+    }
+
+    // create table to export data
+    create_table(export_table_name)
+
+    // insert data
+    sql """ insert into ${export_table_name} values (1, 'doris1', 18); """
+    sql """ insert into ${export_table_name} values (2, 'doris2', 19); """
+    sql """ insert into ${export_table_name} values (3, 'doris3', 99); """
+    sql """ insert into ${export_table_name} values (4, 'doris4', null); """
+    sql """ insert into ${export_table_name} values (5, 'doris5', 15); """
+
+    // test base data
+    qt_select_base """ SELECT * FROM ${export_table_name} t ORDER BY user_id; """
+
+    // test outfile to s3
+    def outfile_url = outfile_to_S3()
+
+    // 1. normal
+    try {
+        order_qt_select_1 """ SELECT * FROM S3 (
+                            "uri" = "http://${s3_endpoint}${outfile_url.substring(4)}0.orc",
+                            "ACCESS_KEY"= "${ak}",
+                            "SECRET_KEY" = "${sk}",
+                            "format" = "orc",
+                            "region" = "${region}"
+                        );
+                        """
+    } finally {
+    }
+
+
+    // 2. test endpoint property
+    try {
+        order_qt_select_2 """ SELECT * FROM S3 (
+                            "uri" = "http://${outfile_url.substring(5)}0.orc",
+                            "s3.access_key"= "${ak}",
+                            "s3.secret_key" = "${sk}",
+                            "s3.endpoint" = "${s3_endpoint}",
+                            "format" = "orc",
+                            "region" = "${region}"
+                        );
+                        """
+    } finally {
+    }
+
+    // 3.test use_path_style
+    try {
+        order_qt_select_3 """ SELECT * FROM S3 (
+                            "uri" = "http://${s3_endpoint}${outfile_url.substring(4)}0.orc",
+                            "s3.access_key"= "${ak}",
+                            "s3.secret_key" = "${sk}",
+                            "format" = "orc",
+                            "use_path_style" = "true",
+                            "region" = "${region}"
+                        );
+                        """
+    } finally {
+    }
+}
diff --git a/regression-test/suites/external_table_p2/tvf/test_iceberg_meta.groovy b/regression-test/suites/external_table_p2/tvf/test_iceberg_meta.groovy
new file mode 100644
index 00000000000..de13c48727a
--- /dev/null
+++ b/regression-test/suites/external_table_p2/tvf/test_iceberg_meta.groovy
@@ -0,0 +1,51 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+suite("test_iceberg_meta", "p2,external,iceberg,external_remote,external_remote_iceberg") {
+    String enabled = context.config.otherConfigs.get("enableExternalHiveTest")
+    if (enabled != null && enabled.equalsIgnoreCase("true")) {
+        String iceberg_catalog_name = "test_iceberg_meta_tvf"
+        String extHiveHmsHost = context.config.otherConfigs.get("extHiveHmsHost")
+        String extHdfsPort = context.config.otherConfigs.get("extHdfsPort")
+        String db = "multi_catalog"
+        sql """drop catalog if exists ${iceberg_catalog_name};"""
+        sql """
+            create catalog if not exists ${iceberg_catalog_name} properties (
+                'type'='iceberg',
+                'iceberg.catalog.type'='hadoop',
+                'warehouse' = 'hdfs://${extHiveHmsHost}:${extHdfsPort}/usr/hive/warehouse/hadoop_catalog'
+            );
+        """
+
+        sql """switch ${iceberg_catalog_name};"""
+        sql """ use `${db}`; """
+
+        order_qt_q01 """ select count(*) from iceberg_hadoop_catalog """
+        order_qt_q02 """ select c_custkey from iceberg_hadoop_catalog group by c_custkey order by c_custkey limit 7 """
+
+        order_qt_tvf_1 """ select committed_at, snapshot_id, parent_id, operation from iceberg_meta(
+                            "table" = "${iceberg_catalog_name}.${db}.multi_partition",
+                            "query_type" = "snapshots");
+                        """
+
+        order_qt_tvf_2 """ select committed_at, snapshot_id, parent_id, operation from iceberg_meta(
+                            "table" = "${iceberg_catalog_name}.${db}.multi_partition",
+                            "query_type" = "snapshots")
+                            where snapshot_id = 7235593032487457798;
+                        """
+    }
+}
\ No newline at end of file


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