You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xi...@apache.org on 2021/06/25 03:07:50 UTC
[iotdb] branch rel/0.12 updated: [ISSUE-3316] Fix constructing
firstChunkMetaDatahasNextChunk logic in hasNextChunk() (#3444) (#3451)
This is an automated email from the ASF dual-hosted git repository.
xiangweiwei pushed a commit to branch rel/0.12
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/rel/0.12 by this push:
new df14c65 [ISSUE-3316] Fix constructing firstChunkMetaDatahasNextChunk logic in hasNextChunk() (#3444) (#3451)
df14c65 is described below
commit df14c6562b5924ba2e361eb69f8b83f43b4b3ee1
Author: Xiangwei Wei <34...@users.noreply.github.com>
AuthorDate: Fri Jun 25 11:07:25 2021 +0800
[ISSUE-3316] Fix constructing firstChunkMetaDatahasNextChunk logic in hasNextChunk() (#3444) (#3451)
(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;
+ }
}
}