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();