You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tsfile.apache.org by ca...@apache.org on 2024/01/31 13:07:19 UTC

(tsfile) branch beyyes/develop created (now 9b6d4fd3)

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

caogaofei pushed a change to branch beyyes/develop
in repository https://gitbox.apache.org/repos/asf/tsfile.git


      at 9b6d4fd3 add maxTsBlockLineNumber variable in TsBlockBuilder

This branch includes the following new commits:

     new 9b6d4fd3 add maxTsBlockLineNumber variable in TsBlockBuilder

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



(tsfile) 01/01: add maxTsBlockLineNumber variable in TsBlockBuilder

Posted by ca...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 9b6d4fd3476c19cf6b4861a3d17227fc65da6ba4
Author: Beyyes <cg...@foxmail.com>
AuthorDate: Wed Jan 31 21:07:07 2024 +0800

    add maxTsBlockLineNumber variable in TsBlockBuilder
---
 .../apache/tsfile/read/common/block/TsBlockBuilder.java | 17 +++++++++++++----
 .../org/apache/tsfile/common/block/TsBlockTest.java     |  1 +
 2 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/tsfile/src/main/java/org/apache/tsfile/read/common/block/TsBlockBuilder.java b/tsfile/src/main/java/org/apache/tsfile/read/common/block/TsBlockBuilder.java
index b2ba141d..872372b7 100644
--- a/tsfile/src/main/java/org/apache/tsfile/read/common/block/TsBlockBuilder.java
+++ b/tsfile/src/main/java/org/apache/tsfile/read/common/block/TsBlockBuilder.java
@@ -49,9 +49,6 @@ public class TsBlockBuilder {
   // This could be any other small number.
   private static final int DEFAULT_INITIAL_EXPECTED_ENTRIES = 8;
 
-  public static final int MAX_LINE_NUMBER =
-      TSFileDescriptor.getInstance().getConfig().getMaxTsBlockLineNumber();
-
   private static final int DEFAULT_MAX_TSBLOCK_SIZE_IN_BYTES =
       TSFileDescriptor.getInstance().getConfig().getMaxTsBlockSizeInBytes();
 
@@ -60,6 +57,8 @@ public class TsBlockBuilder {
   private List<TSDataType> types;
   private TsBlockBuilderStatus tsBlockBuilderStatus;
   private int declaredPositions;
+  private int maxTsBlockLineNumber =
+      TSFileDescriptor.getInstance().getConfig().getMaxTsBlockLineNumber();
 
   private TsBlockBuilder() {}
 
@@ -266,7 +265,7 @@ public class TsBlockBuilder {
   }
 
   public boolean isFull() {
-    return declaredPositions >= MAX_LINE_NUMBER || tsBlockBuilderStatus.isFull();
+    return declaredPositions >= maxTsBlockLineNumber || tsBlockBuilderStatus.isFull();
   }
 
   public boolean isEmpty() {
@@ -277,6 +276,16 @@ public class TsBlockBuilder {
     return declaredPositions;
   }
 
+  public int getMaxTsBlockLineNumber() {
+    return this.maxTsBlockLineNumber;
+  }
+
+  public void setMaxTsBlockLineNumber(int maxTsBlockLineNumber) {
+    if (maxTsBlockLineNumber > 0) {
+      this.maxTsBlockLineNumber = maxTsBlockLineNumber;
+    }
+  }
+
   public long getSizeInBytes() {
     return tsBlockBuilderStatus.getSizeInBytes();
   }
diff --git a/tsfile/src/test/java/org/apache/tsfile/common/block/TsBlockTest.java b/tsfile/src/test/java/org/apache/tsfile/common/block/TsBlockTest.java
index 25755390..47db6562 100644
--- a/tsfile/src/test/java/org/apache/tsfile/common/block/TsBlockTest.java
+++ b/tsfile/src/test/java/org/apache/tsfile/common/block/TsBlockTest.java
@@ -74,6 +74,7 @@ public class TsBlockTest {
     long[] timeArray = {1L, 2L, 3L, 4L, 5L};
     int[] valueArray = {10, 20, 30, 40, 50};
     TsBlockBuilder builder = new TsBlockBuilder(Collections.singletonList(TSDataType.INT32));
+    builder.setMaxTsBlockLineNumber(2);
     for (int i = 0; i < timeArray.length; i++) {
       builder.getTimeColumnBuilder().writeLong(timeArray[i]);
       builder.getColumnBuilder(0).writeInt(valueArray[i]);