From e956fc9ff63212e4ed7b5cf7dc9c03e7d335d45b Mon Sep 17 00:00:00 2001 From: morningman Date: Thu, 19 Sep 2024 13:11:15 +0800 Subject: [PATCH] [fix](explain) fix NPE when explain verbose with partition batch mode --- .../org/apache/doris/datasource/FileScanNode.java | 2 +- .../hive/test_hive_partitions.groovy | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/FileScanNode.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/FileScanNode.java index 333472e3838b79..af4ef196ad4ff3 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/datasource/FileScanNode.java +++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/FileScanNode.java @@ -133,7 +133,7 @@ public String getNodeExplainString(String prefix, TExplainLevel detailLevel) { output.append(prefix).append("partition=").append(selectedPartitionNum).append("/").append(totalPartitionNum) .append("\n"); - if (detailLevel == TExplainLevel.VERBOSE) { + if (detailLevel == TExplainLevel.VERBOSE && !isBatchMode()) { output.append(prefix).append("backends:").append("\n"); Multimap scanRangeLocationsMap = ArrayListMultimap.create(); // 1. group by backend id 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 67d565fc2c1cb9..0e41adc31278c5 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 @@ -91,7 +91,16 @@ suite("test_hive_partitions", "p0,external,hive,external_docker,external_docker_ q01() - sql """drop catalog if exists ${catalog_name}""" + sql """set num_partitions_in_batch_mode=1""" + explain { + sql ("select * from partition_table") + verbose (true) + + contains "(approximate)inputSplitNum=60" + } + sql """unset variable num_partitions_in_batch_mode""" + + // sql """drop catalog if exists ${catalog_name}""" } finally { } }