This is an automated email from the ASF dual-hosted git repository. xiangweiwei pushed a commit to branch to0.12chunkbug in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 1c91b5452257cd0c06153420b0fa5f214010c5c0 Author: Xiangwei Wei <[email protected]> AuthorDate: Fri Jun 25 10:09:15 2021 +0800 [ISSUE-3316] Fix constructing firstChunkMetaDatahasNextChunk logic in hasNextChunk() (#3444) (cherry picked from commit 7ac39ef139e590b566acc60643bd2e29c0cb4bee) --- .../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 a03e8fa..7ded941 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 @@ -294,13 +294,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; + } } }
