This is an automated email from the ASF dual-hosted git repository. sunzesong pushed a commit to branch jira_1433_rel/0.12 in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 168060632f02e5f61c417e16b37e36778f163012 Author: samperson1997 <[email protected]> AuthorDate: Fri Jun 11 10:36:20 2021 +0800 [IOTDB-1433] [To rel/0.12] Fix bug in getMetadataAndEndOffset when querying non-exist device --- .../main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java | 2 +- .../tsfile/read/MeasurementChunkMetadataListMapIteratorTest.java | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java index 211a688..16d2704 100644 --- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java +++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java @@ -732,7 +732,7 @@ public class TsFileSequenceReader implements AutoCloseable { metadataIndex.getChildIndexEntry(name, false); ByteBuffer buffer = readData(childIndexEntry.left.getOffset(), childIndexEntry.right); return getMetadataAndEndOffset( - MetadataIndexNode.deserializeFrom(buffer), name, isDeviceLevel, false); + MetadataIndexNode.deserializeFrom(buffer), name, isDeviceLevel, exactSearch); } } catch (BufferOverflowException e) { logger.error("Something error happened while deserializing MetadataIndex of file {}", file); diff --git a/tsfile/src/test/java/org/apache/iotdb/tsfile/read/MeasurementChunkMetadataListMapIteratorTest.java b/tsfile/src/test/java/org/apache/iotdb/tsfile/read/MeasurementChunkMetadataListMapIteratorTest.java index e4a1313..bd4e560 100644 --- a/tsfile/src/test/java/org/apache/iotdb/tsfile/read/MeasurementChunkMetadataListMapIteratorTest.java +++ b/tsfile/src/test/java/org/apache/iotdb/tsfile/read/MeasurementChunkMetadataListMapIteratorTest.java @@ -151,6 +151,11 @@ public class MeasurementChunkMetadataListMapIteratorTest { } checkCorrectness(expected, actual); + + // test not exist device + Iterator<Map<String, List<ChunkMetadata>>> iterator = + fileReader.getMeasurementChunkMetadataListMapIterator("dd"); + Assert.assertFalse(iterator.hasNext()); } }
