This is an automated email from the ASF dual-hosted git repository. shuwenwei pushed a commit to branch addMoreCheckpointsInSeriesScan in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 24744a0de588ee191e8fc96257675a729b73f843 Author: shuwenwei <[email protected]> AuthorDate: Wed Jul 2 16:19:45 2025 +0800 fix --- .../AbstractSeriesAggregationScanOperator.java | 8 ++---- .../source/AbstractSeriesScanOperator.java | 33 ++++++++++------------ 2 files changed, 18 insertions(+), 23 deletions(-) diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/AbstractSeriesAggregationScanOperator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/AbstractSeriesAggregationScanOperator.java index 6f59deb17a5..3c0b5ce82d8 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/AbstractSeriesAggregationScanOperator.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/AbstractSeriesAggregationScanOperator.java @@ -194,11 +194,9 @@ public abstract class AbstractSeriesAggregationScanOperator extends AbstractData if (!b.isPresent()) { return b; } - if (!b.get()) { - if (readAndCalcFromFile()) { - updateResultTsBlock(); - return Optional.of(true); - } + if (!b.get() && readAndCalcFromFile()) { + updateResultTsBlock(); + return Optional.of(true); } } diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/AbstractSeriesScanOperator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/AbstractSeriesScanOperator.java index c798670ae67..cad688be185 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/AbstractSeriesScanOperator.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/AbstractSeriesScanOperator.java @@ -98,30 +98,27 @@ public abstract class AbstractSeriesScanOperator extends AbstractDataSourceOpera } protected Optional<Boolean> readFileData() throws IOException { - while (true) { - Optional<Boolean> b = seriesScanUtil.hasNextFile(); - if (!b.isPresent() || !b.get()) { - return b; - } - b = readChunkData(); - if (!b.isPresent() || !b.get()) { - return b; - } - return Optional.of(true); + Optional<Boolean> b = seriesScanUtil.hasNextFile(); + if (!b.isPresent() || !b.get()) { + return b; + } + b = readChunkData(); + if (!b.isPresent() || b.get()) { + return b; } + return Optional.empty(); } protected Optional<Boolean> readChunkData() throws IOException { - while (true) { - Optional<Boolean> b = seriesScanUtil.hasNextChunk(); - if (!b.isPresent() || !b.get()) { - return b; - } + Optional<Boolean> b = seriesScanUtil.hasNextChunk(); + if (!b.isPresent() || !b.get()) { + return b; + } - if (readPageData()) { - return Optional.of(true); - } + if (readPageData()) { + return Optional.of(true); } + return Optional.empty(); } protected boolean readPageData() throws IOException {
