diff --git a/be/src/vec/exec/format/parquet/schema_desc.cpp b/be/src/vec/exec/format/parquet/schema_desc.cpp index a3ef4fb222b5e9..67b6147b2390cb 100644 --- a/be/src/vec/exec/format/parquet/schema_desc.cpp +++ b/be/src/vec/exec/format/parquet/schema_desc.cpp @@ -306,8 +306,12 @@ std::pair FieldDescriptor::convert_to_doris_type( } else if (logicalType.__isset.JSON) { ans.first = DataTypeFactory::instance().create_data_type(TYPE_STRING, nullable); } else if (logicalType.__isset.UUID) { - ans.first = - DataTypeFactory::instance().create_data_type(TYPE_VARBINARY, nullable, -1, -1, 16); + if (_enable_mapping_varbinary) { + ans.first = DataTypeFactory::instance().create_data_type(TYPE_VARBINARY, nullable, -1, + -1, 16); + } else { + ans.first = DataTypeFactory::instance().create_data_type(TYPE_STRING, nullable); + } } else if (logicalType.__isset.FLOAT16) { ans.first = DataTypeFactory::instance().create_data_type(TYPE_FLOAT, nullable); } else { diff --git a/regression-test/data/external_table_p0/tvf/test_hdfs_parquet_group6.out b/regression-test/data/external_table_p0/tvf/test_hdfs_parquet_group6.out index a35fcd8e130fc8..a797eca8601867 100644 --- a/regression-test/data/external_table_p0/tvf/test_hdfs_parquet_group6.out +++ b/regression-test/data/external_table_p0/tvf/test_hdfs_parquet_group6.out @@ -795,10 +795,10 @@ true -- !test_98 -- \N \N \N -0x6162634465464768696A6B4C6D6E4F70 682.56 1212 -0x6162634465464768696A6B4C6D6E4F70 682.56 1212 -0x6162634465464768696A6B4C6D6E4F70 682.56 1212 -0x6162634465464768696A6B4C6D6E4F70 682.56 1212 +abcDeFGhijkLmnOp 682.56 1212 +abcDeFGhijkLmnOp 682.56 1212 +abcDeFGhijkLmnOp 682.56 1212 +abcDeFGhijkLmnOp 682.56 1212 -- !test_100 -- 1317017856 1 18752152 809291 1089176 19951117 3-MEDIUM 0 40 4801000 16034243 9 4368910 72015 3 19951228 RAIL Customer#018752152 q4gN2btSpiKXdN,6 ALGERIA 1 ALGERIA AFRICA 10-753-996-8708 MACHINERY Supplier#001089176 ROidEL1L6yeFsJqnUjD EGYPT 5 EGYPT MIDDLE EAST 14-807-108-7869 blanched gainsboro MFGR#4 MFGR#43 MFGR#433 brown MEDIUM BRUSHED STEEL 42 MED BAG @@ -851,3 +851,15 @@ true 1172064 32655 5159 1 19.000000000 30165.350000000 0.060000000 0.060000000 R F 1994-12-08 1995-02-10 1994-12-12 TAKE BACK RETURN RAIL s are carefully express, final packag 1172064 77399 9907 3 49.000000000 67443.110000000 0.060000000 0.010000000 A F 1995-03-22 1995-02-14 1995-04-18 TAKE BACK RETURN RAIL gle. even dependencies a +-- !test_107 -- +\N \N \N +0x6162634465464768696A6B4C6D6E4F70 682.56 1212 +0x6162634465464768696A6B4C6D6E4F70 682.56 1212 +0x6162634465464768696A6B4C6D6E4F70 682.56 1212 +0x6162634465464768696A6B4C6D6E4F70 682.56 1212 + +-- !test_107_desc -- +decimal_flba decimal(5,2) Yes false \N NONE +interval text Yes false \N NONE +uuid varbinary(16) Yes false \N NONE + diff --git a/regression-test/suites/external_table_p0/tvf/test_hdfs_parquet_group6.groovy b/regression-test/suites/external_table_p0/tvf/test_hdfs_parquet_group6.groovy index af548a9ae50be5..d9896ea68beba4 100644 --- a/regression-test/suites/external_table_p0/tvf/test_hdfs_parquet_group6.groovy +++ b/regression-test/suites/external_table_p0/tvf/test_hdfs_parquet_group6.groovy @@ -795,6 +795,21 @@ suite("test_hdfs_parquet_group6","external,hive,tvf,external_docker") { "uri" = "${uri}", "hadoop.username" = "${hdfsUserName}", "format" = "parquet") limit 10; """ + + + uri = "${defaultFS}" + "/user/doris/tvf_data/test_hdfs_parquet/group6/fixed_len_byte_array.parquet" + order_qt_test_107 """ select * from HDFS( + "uri" = "${uri}", + "hadoop.username" = "${hdfsUserName}", + "enable_mapping_varbinary"="true", + "format" = "parquet") limit 10; """ + + order_qt_test_107_desc """ desc function HDFS( + "uri" = "${uri}", + "hadoop.username" = "${hdfsUserName}", + "enable_mapping_varbinary"="true", + "format" = "parquet"); """ + } finally { } }