This is an automated email from the ASF dual-hosted git repository. marklau99 pushed a commit to branch fix-compaction-null-pointer in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit b39f2fd1c5284ce960b24ffe5afc18a0283f1c57 Author: Liu Xuxin <[email protected]> AuthorDate: Thu May 18 15:22:57 2023 +0800 fix compaction null pointer exception --- .../execute/utils/MultiTsFileDeviceIterator.java | 28 +++++++++++----------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/execute/utils/MultiTsFileDeviceIterator.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/execute/utils/MultiTsFileDeviceIterator.java index 388cb48f0f..cf0db40696 100644 --- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/execute/utils/MultiTsFileDeviceIterator.java +++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/execute/utils/MultiTsFileDeviceIterator.java @@ -18,6 +18,18 @@ */ package org.apache.iotdb.db.engine.compaction.execute.utils; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.Iterator; +import java.util.LinkedHashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.TreeMap; +import java.util.concurrent.ConcurrentHashMap; +import java.util.stream.Collectors; import org.apache.iotdb.commons.exception.IllegalPathException; import org.apache.iotdb.commons.path.PartialPath; import org.apache.iotdb.db.engine.modification.Modification; @@ -34,19 +46,6 @@ import org.apache.iotdb.tsfile.read.TsFileSequenceReader; import org.apache.iotdb.tsfile.utils.Pair; import org.apache.iotdb.tsfile.write.schema.MeasurementSchema; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.Iterator; -import java.util.LinkedHashMap; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; -import java.util.TreeMap; -import java.util.concurrent.ConcurrentHashMap; -import java.util.stream.Collectors; - public class MultiTsFileDeviceIterator implements AutoCloseable { // sort from the newest to the oldest by version (Used by FastPerformer and ReadPointPerformer) @@ -362,7 +361,8 @@ public class MultiTsFileDeviceIterator implements AutoCloseable { if (modification.getDevice().equals(currentDevice.left)) { for (int i = 0; i < valueChunkMetadataList.size(); ++i) { IChunkMetadata chunkMetadata = valueChunkMetadataList.get(i); - if (modification.getMeasurement().equals(chunkMetadata.getMeasurementUid())) { + if (chunkMetadata != null + && modification.getMeasurement().equals(chunkMetadata.getMeasurementUid())) { modificationForCurDevice.get(i).add(modification); } }
