This is an automated email from the ASF dual-hosted git repository.

jackietien pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/tsfile.git


The following commit(s) were added to refs/heads/develop by this push:
     new 6cbbba76 Fix TsBlockBuilder bug in AlignedPageReader and PageReader.
6cbbba76 is described below

commit 6cbbba76d2dca5593d98ec5147ddc21ee747046d
Author: Jackie Tien <[email protected]>
AuthorDate: Tue May 14 18:22:22 2024 +0800

    Fix TsBlockBuilder bug in AlignedPageReader and PageReader.
---
 .../java/org/apache/tsfile/read/reader/page/AlignedPageReader.java    | 2 +-
 .../src/main/java/org/apache/tsfile/read/reader/page/PageReader.java  | 2 +-
 .../org/apache/tsfile/read/reader/series/PaginationController.java    | 4 ++++
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git 
a/java/tsfile/src/main/java/org/apache/tsfile/read/reader/page/AlignedPageReader.java
 
b/java/tsfile/src/main/java/org/apache/tsfile/read/reader/page/AlignedPageReader.java
index 383f4195..b1ff14e3 100644
--- 
a/java/tsfile/src/main/java/org/apache/tsfile/read/reader/page/AlignedPageReader.java
+++ 
b/java/tsfile/src/main/java/org/apache/tsfile/read/reader/page/AlignedPageReader.java
@@ -422,7 +422,7 @@ public class AlignedPageReader implements IPageReader {
 
   @Override
   public void initTsBlockBuilder(List<TSDataType> dataTypes) {
-    if (paginationController.hasCurLimit()) {
+    if (paginationController.hasLimit()) {
       builder =
           new TsBlockBuilder(
               (int)
diff --git 
a/java/tsfile/src/main/java/org/apache/tsfile/read/reader/page/PageReader.java 
b/java/tsfile/src/main/java/org/apache/tsfile/read/reader/page/PageReader.java
index 646c9f4e..d4208f31 100644
--- 
a/java/tsfile/src/main/java/org/apache/tsfile/read/reader/page/PageReader.java
+++ 
b/java/tsfile/src/main/java/org/apache/tsfile/read/reader/page/PageReader.java
@@ -174,7 +174,7 @@ public class PageReader implements IPageReader {
   public TsBlock getAllSatisfiedData() throws IOException {
     TsBlockBuilder builder;
     int initialExpectedEntries = (int) pageHeader.getStatistics().getCount();
-    if (paginationController.hasCurLimit()) {
+    if (paginationController.hasLimit()) {
       initialExpectedEntries =
           (int) Math.min(initialExpectedEntries, 
paginationController.getCurLimit());
     }
diff --git 
a/java/tsfile/src/main/java/org/apache/tsfile/read/reader/series/PaginationController.java
 
b/java/tsfile/src/main/java/org/apache/tsfile/read/reader/series/PaginationController.java
index 5fe4137e..cbd72a86 100644
--- 
a/java/tsfile/src/main/java/org/apache/tsfile/read/reader/series/PaginationController.java
+++ 
b/java/tsfile/src/main/java/org/apache/tsfile/read/reader/series/PaginationController.java
@@ -80,6 +80,10 @@ public class PaginationController {
     }
   }
 
+  public boolean hasLimit() {
+    return hasLimit && curLimit > 0;
+  }
+
   public TsBlock applyTsBlock(TsBlock resultTsBlock) {
     int fromIndex = 0;
     int length = resultTsBlock.getPositionCount();

Reply via email to