This is an automated email from the ASF dual-hosted git repository.
morningman pushed a commit to branch branch-2.1
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-2.1 by this push:
new c78c7f6b45c [branch-2.1](test) fix some tests in external p0 (#36127)
c78c7f6b45c is described below
commit c78c7f6b45c1dac34f0c41c839e2eb090be603ca
Author: Mingyu Chen <[email protected]>
AuthorDate: Tue Jun 11 22:15:28 2024 +0800
[branch-2.1](test) fix some tests in external p0 (#36127)
Also move the analysis exception of "Not support insert with partition
spec in hive catalog."
from create sink phase to bind sink phase.
So that when `set enable_fallback_to_original_planner=false;`, the
return error will be correct.
---
.../org/apache/doris/nereids/analyzer/UnboundTableSinkCreator.java | 3 ---
.../main/java/org/apache/doris/nereids/rules/analysis/BindSink.java | 6 +++++-
.../external_table_p0/hive/write/test_hive_write_insert.groovy | 2 ++
.../suites/external_table_p2/hive/test_external_catalog_hive.groovy | 5 +++--
4 files changed, 10 insertions(+), 6 deletions(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundTableSinkCreator.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundTableSinkCreator.java
index 6784f66ab7d..e1c771b6a4c 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundTableSinkCreator.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundTableSinkCreator.java
@@ -105,9 +105,6 @@ public class UnboundTableSinkCreator {
isPartialUpdate, dmlCommandType, Optional.empty(),
Optional.empty(), plan);
} else if (curCatalog instanceof HMSExternalCatalog &&
!isAutoDetectPartition) {
- if (!partitions.isEmpty()) {
- throw new AnalysisException("Not support insert with partition
spec in hive catalog.");
- }
return new UnboundHiveTableSink<>(nameParts, colNames, hints,
partitions,
dmlCommandType, Optional.empty(), Optional.empty(), plan);
} else if (curCatalog instanceof IcebergExternalCatalog &&
!isAutoDetectPartition) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/BindSink.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/BindSink.java
index 63f6db8fad9..0c0f9e2e25f 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/BindSink.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/BindSink.java
@@ -391,6 +391,10 @@ public class BindSink implements AnalysisRuleFactory {
HMSExternalTable table = pair.second;
LogicalPlan child = ((LogicalPlan) sink.child());
+ if (!sink.getPartitions().isEmpty()) {
+ throw new AnalysisException("Not support insert with partition
spec in hive catalog.");
+ }
+
List<Column> bindColumns;
if (sink.getColNames().isEmpty()) {
bindColumns =
table.getBaseSchema(true).stream().collect(ImmutableList.toImmutableList());
@@ -399,7 +403,7 @@ public class BindSink implements AnalysisRuleFactory {
Column column = table.getColumn(cn);
if (column == null) {
throw new AnalysisException(String.format("column %s is
not found in table %s",
- cn, table.getName()));
+ cn, table.getName()));
}
return column;
}).collect(ImmutableList.toImmutableList());
diff --git
a/regression-test/suites/external_table_p0/hive/write/test_hive_write_insert.groovy
b/regression-test/suites/external_table_p0/hive/write/test_hive_write_insert.groovy
index 30b6d55c61c..f7c60e6df39 100644
---
a/regression-test/suites/external_table_p0/hive/write/test_hive_write_insert.groovy
+++
b/regression-test/suites/external_table_p0/hive/write/test_hive_write_insert.groovy
@@ -393,6 +393,7 @@ suite("test_hive_write_insert",
"p0,external,hive,external_docker,external_docke
logger.info("hive sql: " + """ truncate table
all_types_${format_compression}; """)
hive_docker """ truncate table all_types_${format_compression}; """
+ sql """refresh catalog ${catalog_name};"""
order_qt_q06 """ select * from all_types_${format_compression};
"""
}
@@ -444,6 +445,7 @@ suite("test_hive_write_insert",
"p0,external,hive,external_docker,external_docke
logger.info("hive sql: " + """ truncate table
all_types_${format_compression}; """)
hive_docker """ truncate table all_types_${format_compression}; """
+ sql """refresh catalog ${catalog_name};"""
order_qt_q05 """
select * from all_types_${format_compression};
"""
diff --git
a/regression-test/suites/external_table_p2/hive/test_external_catalog_hive.groovy
b/regression-test/suites/external_table_p2/hive/test_external_catalog_hive.groovy
index 7bc2979b914..813f316df29 100644
---
a/regression-test/suites/external_table_p2/hive/test_external_catalog_hive.groovy
+++
b/regression-test/suites/external_table_p2/hive/test_external_catalog_hive.groovy
@@ -23,6 +23,7 @@ suite("test_external_catalog_hive",
"p2,external,hive,external_remote,external_r
String extHiveHmsPort =
context.config.otherConfigs.get("extHiveHmsPort")
String catalog_name = "test_external_catalog_hive"
+ sql """set enable_fallback_to_original_planner=false"""
sql """drop catalog if exists ${catalog_name};"""
sql """
@@ -47,7 +48,7 @@ suite("test_external_catalog_hive",
"p2,external,hive,external_remote,external_r
sql """switch ${catalog_name};"""
// test small table(text format)
def q01 = {
- qt_q01 """ select name, count(1) as c from student group by name
order by c desc;"""
+ qt_q01 """ select name, count(1) as c from student group by name
order by name desc;"""
qt_q02 """ select lo_orderkey, count(1) as c from lineorder group
by lo_orderkey order by lo_orderkey asc;"""
qt_q03 """ select * from test1 order by col_1;"""
qt_q04 """ select * from string_table order by p_partkey desc;"""
@@ -148,7 +149,7 @@ suite("test_external_catalog_hive",
"p2,external,hive,external_remote,external_r
'type'='hms',
'hive.metastore.uris' =
'thrift://${extHiveHmsHost}:${extHiveHmsPort}',
'access_controller.properties.ranger.service.name' =
'hive_wrong',
- 'access_controller.class' =
'org.apache.doris.catalog.authorizer.RangerHiveAccessControllerFactory'
+ 'access_controller.class' =
'org.apache.doris.catalog.authorizer.ranger.hive.RangerHiveAccessControllerFactory'
);
"""
exception "Failed to init access controller: bound must be
positive"
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]