From fedb7e15a07f68f5f7fffa8cdc2cf23eedb2f59e Mon Sep 17 00:00:00 2001 From: zhengyu Date: Thu, 6 Jun 2024 16:47:30 +0800 Subject: [PATCH] [fix](statistics) NPE when drop partition during publish (pick #35475) (#35977) skip null partition when get base tablets for each be (for further usage in dedup updated row count in MV) This may cause publish fail cherry pick master #35475 --- .../org/apache/doris/transaction/PublishVersionDaemon.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/transaction/PublishVersionDaemon.java b/fe/fe-core/src/main/java/org/apache/doris/transaction/PublishVersionDaemon.java index f4158cae88..a6665c2e22 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/transaction/PublishVersionDaemon.java +++ b/fe/fe-core/src/main/java/org/apache/doris/transaction/PublishVersionDaemon.java @@ -46,6 +46,7 @@ import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Map; +import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -219,7 +220,9 @@ public class PublishVersionDaemon extends MasterDaemon { .getIdToPartitionCommitInfo() .values().stream() .map(PartitionCommitInfo::getPartitionId) - .map(table::getPartition) + .map(partitionId -> Optional.ofNullable(table.getPartition(partitionId))) + .filter(Optional::isPresent) + .map(Optional::get) .map(Partition::getBaseIndex) .map(MaterializedIndex::getTablets) .flatMap(Collection::stream)