apkipa 1 month ago
parent
commit
52adec4e3d
2 changed files with 6 additions and 2 deletions
  1. 5 1
      src/main/java/tsdb/TsdbApiEntryStream.java
  2. 1 1
      src/test/java/TestRun.java

+ 5 - 1
src/main/java/tsdb/TsdbApiEntryStream.java

@@ -179,9 +179,13 @@ public class TsdbApiEntryStream implements AutoCloseable {
         bufInput.flip();
         bufOutput.clear();
         if (directive == EndDirective.END) {
-            while (!compressCtx.compressDirectByteBufferStream(bufOutput, bufInput, directive)) {
+            while (true) {
                 // Write compressed data to the file
+                boolean done = compressCtx.compressDirectByteBufferStream(bufOutput, bufInput, directive);
                 flushOutputBufToFile();
+                if (done) {
+                    break;
+                }
             }
         } else {
             // Return value of `compressDirectByteBufferStream` is not interesting here

+ 1 - 1
src/test/java/TestRun.java

@@ -13,8 +13,8 @@ public class TestRun {
         db.setDataDir("/tmp/tsdb_data/");
         // 设置每 1_000_000 个数据进行一次分片存盘
         db.setPartSize(1_000_000);
-        // 新建传感器名为 test_java_pt1 的 stream 对象,从 UTC 时间 1000000 毫秒开始,两点间的时间间隔为 5000 纳秒
         long startTime = System.currentTimeMillis();
+        // 新建传感器名为 test_java_pt1 的 stream 对象,从 UTC 时间 1000000 毫秒开始,两点间的时间间隔为 5000 纳秒
         try (TsdbApiEntryStream stream = db.newStream("test_java_pt1", 1000000, 5000)) {
             // 批量插入 8 个数据点(不推荐此方式;如需调用,请直接使用 DoubleArrayList 来避免数据拷贝)
             {