This is an automated email from the ASF dual-hosted git repository. xiangweiwei pushed a commit to branch nextChunkBug in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c60b8d811fba2efa3a9b04707a18e900f9d54242 Author: Alima777 <[email protected]> AuthorDate: Thu Jun 24 09:13:15 2021 +0800 fix hasNextChunk bug --- .../java/org/apache/iotdb/db/query/reader/series/SeriesReader.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/server/src/main/java/org/apache/iotdb/db/query/reader/series/SeriesReader.java b/server/src/main/java/org/apache/iotdb/db/query/reader/series/SeriesReader.java index 7c1213f..b225a0f 100644 --- a/server/src/main/java/org/apache/iotdb/db/query/reader/series/SeriesReader.java +++ b/server/src/main/java/org/apache/iotdb/db/query/reader/series/SeriesReader.java @@ -320,13 +320,16 @@ public class SeriesReader { /* * first time series metadata is already unpacked, consume cached ChunkMetadata */ - if (!cachedChunkMetadata.isEmpty()) { + while (!cachedChunkMetadata.isEmpty()) { firstChunkMetadata = cachedChunkMetadata.peek(); unpackAllOverlappedTsFilesToTimeSeriesMetadata( orderUtils.getOverlapCheckTime(firstChunkMetadata.getStatistics())); unpackAllOverlappedTimeSeriesMetadataToCachedChunkMetadata( orderUtils.getOverlapCheckTime(firstChunkMetadata.getStatistics()), false); - firstChunkMetadata = cachedChunkMetadata.poll(); + if (firstChunkMetadata.equals(cachedChunkMetadata.peek())) { + firstChunkMetadata = cachedChunkMetadata.poll(); + break; + } } }
