You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ja...@apache.org on 2021/11/04 11:31:17 UTC

[iotdb] branch new_vector updated: replace IChunkWriter with ChunkWriterImpl (#4317)

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

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


The following commit(s) were added to refs/heads/new_vector by this push:
     new 9109e1f  replace IChunkWriter with ChunkWriterImpl (#4317)
9109e1f is described below

commit 9109e1fe0451c9fe5b98c8a7ef458ec1a12bee5c
Author: liuxuxin <37...@users.noreply.github.com>
AuthorDate: Thu Nov 4 19:30:47 2021 +0800

    replace IChunkWriter with ChunkWriterImpl (#4317)
---
 .../cross/inplace/manage/CrossSpaceMergeResource.java        |  5 ++---
 .../compaction/cross/inplace/task/MergeMultiChunkTask.java   | 12 ++++++------
 2 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/manage/CrossSpaceMergeResource.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/manage/CrossSpaceMergeResource.java
index 5920416..8c4548f 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/manage/CrossSpaceMergeResource.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/manage/CrossSpaceMergeResource.java
@@ -32,7 +32,6 @@ import org.apache.iotdb.tsfile.read.common.Chunk;
 import org.apache.iotdb.tsfile.read.reader.IPointReader;
 import org.apache.iotdb.tsfile.utils.Pair;
 import org.apache.iotdb.tsfile.write.chunk.ChunkWriterImpl;
-import org.apache.iotdb.tsfile.write.chunk.IChunkWriter;
 import org.apache.iotdb.tsfile.write.schema.IMeasurementSchema;
 import org.apache.iotdb.tsfile.write.writer.RestorableTsFileIOWriter;
 
@@ -67,7 +66,7 @@ public class CrossSpaceMergeResource {
       new HashMap<>(); // pair<startTime, endTime>
   private Map<PartialPath, IMeasurementSchema> measurementSchemaMap =
       new HashMap<>(); // is this too waste?
-  private Map<IMeasurementSchema, IChunkWriter> chunkWriterCache = new ConcurrentHashMap<>();
+  private Map<IMeasurementSchema, ChunkWriterImpl> chunkWriterCache = new ConcurrentHashMap<>();
 
   private long ttlLowerBound = Long.MIN_VALUE;
 
@@ -176,7 +175,7 @@ public class CrossSpaceMergeResource {
    * Construct the a new or get an existing ChunkWriter of a measurement. Different timeseries of
    * the same measurement and data type shares the same instance.
    */
-  public IChunkWriter getChunkWriter(IMeasurementSchema measurementSchema) {
+  public ChunkWriterImpl getChunkWriter(IMeasurementSchema measurementSchema) {
     return chunkWriterCache.computeIfAbsent(measurementSchema, ChunkWriterImpl::new);
   }
 
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/task/MergeMultiChunkTask.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/task/MergeMultiChunkTask.java
index d7c235d..c6dfac9 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/task/MergeMultiChunkTask.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/task/MergeMultiChunkTask.java
@@ -39,7 +39,7 @@ import org.apache.iotdb.tsfile.read.common.BatchData;
 import org.apache.iotdb.tsfile.read.common.Chunk;
 import org.apache.iotdb.tsfile.read.reader.IPointReader;
 import org.apache.iotdb.tsfile.read.reader.chunk.ChunkReader;
-import org.apache.iotdb.tsfile.write.chunk.IChunkWriter;
+import org.apache.iotdb.tsfile.write.chunk.ChunkWriterImpl;
 import org.apache.iotdb.tsfile.write.schema.IMeasurementSchema;
 import org.apache.iotdb.tsfile.write.writer.RestorableTsFileIOWriter;
 import org.apache.iotdb.tsfile.write.writer.TsFileIOWriter;
@@ -459,7 +459,7 @@ public class MergeMultiChunkTask {
       int pathIdx,
       TsFileIOWriter mergeFileWriter,
       IPointReader unseqReader,
-      IChunkWriter chunkWriter,
+      ChunkWriterImpl chunkWriter,
       TsFileResource currFile)
       throws IOException {
     int unclosedChunkPoint = lastUnclosedChunkPoint;
@@ -521,7 +521,7 @@ public class MergeMultiChunkTask {
   }
 
   private int writeRemainingUnseq(
-      IChunkWriter chunkWriter, IPointReader unseqReader, long timeLimit, int pathIdx)
+      ChunkWriterImpl chunkWriter, IPointReader unseqReader, long timeLimit, int pathIdx)
       throws IOException {
     int ptWritten = 0;
     while (currTimeValuePairs[pathIdx] != null
@@ -537,7 +537,7 @@ public class MergeMultiChunkTask {
 
   private int writeChunkWithUnseq(
       Chunk chunk,
-      IChunkWriter chunkWriter,
+      ChunkWriterImpl chunkWriter,
       IPointReader unseqReader,
       long chunkLimitTime,
       int pathIdx)
@@ -553,7 +553,7 @@ public class MergeMultiChunkTask {
   }
 
   private int mergeWriteBatch(
-      BatchData batchData, IChunkWriter chunkWriter, IPointReader unseqReader, int pathIdx)
+      BatchData batchData, ChunkWriterImpl chunkWriter, IPointReader unseqReader, int pathIdx)
       throws IOException {
     int cnt = 0;
     for (int i = 0; i < batchData.length(); i++) {
@@ -630,7 +630,7 @@ public class MergeMultiChunkTask {
         PartialPath path = currMergingPaths.get(pathIdx);
         IMeasurementSchema measurementSchema = resource.getSchema(path);
         // chunkWriter will keep the data in memory
-        IChunkWriter chunkWriter = resource.getChunkWriter(measurementSchema);
+        ChunkWriterImpl chunkWriter = resource.getChunkWriter(measurementSchema);
         if (Thread.interrupted()) {
           Thread.currentThread().interrupt();
           return;