From fc0b4b9ced7dfa4ed94eaf8b5a94e2d33d4c1a19 Mon Sep 17 00:00:00 2001 From: Mingyu Chen Date: Tue, 24 Sep 2024 21:10:13 +0800 Subject: [PATCH] [fix](explain) fix NPE when explain verbose with partition batch mode (#40969) (#41231) bp #40969 --- .../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 c94ffc8d29..a8392a948e 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 @@ -131,7 +131,7 @@ public abstract class FileScanNode extends ExternalScanNode { 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 67d565fc2c..0e41adc312 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 { } }