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/03/12 08:08:41 UTC

[iotdb] 06/07: format code

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

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

commit bfa823bbbed5ae114a8074e3c97876330f8cc831
Author: JackieTien97 <Ja...@foxmail.com>
AuthorDate: Fri Mar 12 11:13:22 2021 +0800

    format code
---
 .../iotdb/db/engine/merge/task/MergeFileTask.java   | 18 +++++++++---------
 .../db/engine/storagegroup/TsFileResource.java      |  3 ++-
 .../db/query/executor/fill/LastPointReader.java     | 11 +++++++----
 .../chunk/metadata/MemChunkMetadataLoader.java      | 10 +++++-----
 .../org/apache/iotdb/db/utils/FileLoaderUtils.java  |  3 ++-
 .../java/org/apache/iotdb/db/utils/QueryUtils.java  |  2 +-
 .../db/writelog/recover/UnseqTsFileRecoverTest.java |  5 +++--
 .../iotdb/tsfile/read/TsFileSequenceReader.java     | 21 ++++++++++++---------
 .../iotdb/tsfile/write/writer/TsFileIOWriter.java   |  4 ++--
 ...MeasurementChunkMetadataListMapIteratorTest.java |  7 ++++---
 10 files changed, 47 insertions(+), 37 deletions(-)

diff --git a/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeFileTask.java b/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeFileTask.java
index 1f60fa1..96364a8 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeFileTask.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeFileTask.java
@@ -174,16 +174,16 @@ class MergeFileTask {
       newFileWriter.close();
       try (TsFileSequenceReader newFileReader =
           new TsFileSequenceReader(newFileWriter.getFile().getPath())) {
-        Map<String, List<IChunkMetadata>> chunkMetadataListInChunkGroups =
+        Map<String, List<ChunkMetadata>> chunkMetadataListInChunkGroups =
             newFileWriter.getDeviceChunkMetadataMap();
         if (logger.isDebugEnabled()) {
           logger.debug(
               "{} find {} merged chunk groups", taskName, chunkMetadataListInChunkGroups.size());
         }
-        for (Map.Entry<String, List<IChunkMetadata>> entry :
+        for (Map.Entry<String, List<ChunkMetadata>> entry :
             chunkMetadataListInChunkGroups.entrySet()) {
           String deviceId = entry.getKey();
-          List<IChunkMetadata> chunkMetadataList = entry.getValue();
+          List<ChunkMetadata> chunkMetadataList = entry.getValue();
           writeMergedChunkGroup(chunkMetadataList, deviceId, newFileReader, oldFileWriter);
 
           if (Thread.interrupted()) {
@@ -211,7 +211,7 @@ class MergeFileTask {
 
   private void updateStartTimeAndEndTime(TsFileResource seqFile, TsFileIOWriter fileWriter) {
     // TODO change to get one timeseries block each time
-    for (Entry<String, List<IChunkMetadata>> deviceChunkMetadataEntry :
+    for (Entry<String, List<ChunkMetadata>> deviceChunkMetadataEntry :
         fileWriter.getDeviceChunkMetadataMap().entrySet()) {
       String device = deviceChunkMetadataEntry.getKey();
       for (IChunkMetadata chunkMetadata : deviceChunkMetadataEntry.getValue()) {
@@ -264,16 +264,16 @@ class MergeFileTask {
   }
 
   private void writeMergedChunkGroup(
-      List<IChunkMetadata> chunkMetadataList,
+      List<ChunkMetadata> chunkMetadataList,
       String device,
       TsFileSequenceReader reader,
       TsFileIOWriter fileWriter)
       throws IOException {
     fileWriter.startChunkGroup(device);
-    for (IChunkMetadata chunkMetaData : chunkMetadataList) {
-      Chunk chunk = reader.readMemChunk((ChunkMetadata) chunkMetaData);
-      fileWriter.writeChunk(chunk, (ChunkMetadata) chunkMetaData);
-      context.incTotalPointWritten(((ChunkMetadata) chunkMetaData).getNumOfPoints());
+    for (ChunkMetadata chunkMetaData : chunkMetadataList) {
+      Chunk chunk = reader.readMemChunk(chunkMetaData);
+      fileWriter.writeChunk(chunk, chunkMetaData);
+      context.incTotalPointWritten(chunkMetaData.getNumOfPoints());
     }
     fileWriter.endChunkGroup();
   }
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
index 4447255..6d4f58b 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
@@ -33,6 +33,7 @@ import org.apache.iotdb.db.utils.FilePathUtils;
 import org.apache.iotdb.db.utils.TestOnly;
 import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
 import org.apache.iotdb.tsfile.file.metadata.ChunkMetadata;
+import org.apache.iotdb.tsfile.file.metadata.IChunkMetadata;
 import org.apache.iotdb.tsfile.file.metadata.TimeseriesMetadata;
 import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 import org.apache.iotdb.tsfile.file.metadata.statistics.Statistics;
@@ -330,7 +331,7 @@ public class TsFileResource {
     return fsFactory.getFile(file + RESOURCE_SUFFIX).exists();
   }
 
-  public List<ChunkMetadata> getChunkMetadataList() {
+  public List<IChunkMetadata> getChunkMetadataList() {
     return new ArrayList<>(chunkMetadataList);
   }
 
diff --git a/server/src/main/java/org/apache/iotdb/db/query/executor/fill/LastPointReader.java b/server/src/main/java/org/apache/iotdb/db/query/executor/fill/LastPointReader.java
index dada7da..49522f6 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/executor/fill/LastPointReader.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/executor/fill/LastPointReader.java
@@ -24,6 +24,7 @@ import org.apache.iotdb.db.metadata.PartialPath;
 import org.apache.iotdb.db.query.context.QueryContext;
 import org.apache.iotdb.db.utils.FileLoaderUtils;
 import org.apache.iotdb.tsfile.file.metadata.ChunkMetadata;
+import org.apache.iotdb.tsfile.file.metadata.IChunkMetadata;
 import org.apache.iotdb.tsfile.file.metadata.TimeseriesMetadata;
 import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 import org.apache.iotdb.tsfile.file.metadata.statistics.Statistics;
@@ -113,9 +114,9 @@ public class LastPointReader {
               timeseriesMetadata.getStatistics().getLastValue(),
               dataType);
         } else {
-          List<ChunkMetadata> seqChunkMetadataList = timeseriesMetadata.loadChunkMetadataList();
+          List<IChunkMetadata> seqChunkMetadataList = timeseriesMetadata.loadChunkMetadataList();
           for (int i = seqChunkMetadataList.size() - 1; i >= 0; i--) {
-            lastPoint = getChunkLastPoint(seqChunkMetadataList.get(i));
+            lastPoint = getChunkLastPoint((ChunkMetadata) seqChunkMetadataList.get(i));
             // last point of this sequence chunk is valid, quit the loop
             if (lastPoint.getValue() != null) {
               return lastPoint;
@@ -203,7 +204,7 @@ public class LastPointReader {
     return unseqTsFilesSet;
   }
 
-  private PriorityQueue<ChunkMetadata> sortUnseqChunkMetadatasByEndtime() throws IOException {
+  private PriorityQueue<ChunkMetadata> sortUnseqChunkMetadatasByEndtime() {
     PriorityQueue<ChunkMetadata> chunkMetadataList =
         new PriorityQueue<>(
             (o1, o2) -> {
@@ -223,7 +224,9 @@ public class LastPointReader {
             });
     for (TimeseriesMetadata timeseriesMetadata : unseqTimeseriesMetadataList) {
       if (timeseriesMetadata != null) {
-        chunkMetadataList.addAll(timeseriesMetadata.loadChunkMetadataList());
+        for (IChunkMetadata chunkMetadata : timeseriesMetadata.getChunkMetadataList()) {
+          chunkMetadataList.add((ChunkMetadata) chunkMetadata);
+        }
       }
     }
     return chunkMetadataList;
diff --git a/server/src/main/java/org/apache/iotdb/db/query/reader/chunk/metadata/MemChunkMetadataLoader.java b/server/src/main/java/org/apache/iotdb/db/query/reader/chunk/metadata/MemChunkMetadataLoader.java
index 0d7b1d5..8a22d0b 100644
--- a/server/src/main/java/org/apache/iotdb/db/query/reader/chunk/metadata/MemChunkMetadataLoader.java
+++ b/server/src/main/java/org/apache/iotdb/db/query/reader/chunk/metadata/MemChunkMetadataLoader.java
@@ -22,8 +22,8 @@ import org.apache.iotdb.db.engine.querycontext.ReadOnlyMemChunk;
 import org.apache.iotdb.db.engine.storagegroup.TsFileResource;
 import org.apache.iotdb.db.metadata.PartialPath;
 import org.apache.iotdb.db.query.context.QueryContext;
-import org.apache.iotdb.tsfile.file.metadata.ChunkMetadata;
-import org.apache.iotdb.tsfile.file.metadata.TimeseriesMetadata;
+import org.apache.iotdb.tsfile.file.metadata.IChunkMetadata;
+import org.apache.iotdb.tsfile.file.metadata.ITimeSeriesMetadata;
 import org.apache.iotdb.tsfile.read.controller.IChunkMetadataLoader;
 import org.apache.iotdb.tsfile.read.filter.basic.Filter;
 
@@ -45,8 +45,8 @@ public class MemChunkMetadataLoader implements IChunkMetadataLoader {
   }
 
   @Override
-  public List<ChunkMetadata> loadChunkMetadataList(TimeseriesMetadata timeseriesMetadata) {
-    List<ChunkMetadata> chunkMetadataList = resource.getChunkMetadataList();
+  public List<IChunkMetadata> loadChunkMetadataList(ITimeSeriesMetadata timeseriesMetadata) {
+    List<IChunkMetadata> chunkMetadataList = resource.getChunkMetadataList();
 
     DiskChunkMetadataLoader.setDiskChunkLoader(chunkMetadataList, resource, seriesPath, context);
 
@@ -68,7 +68,7 @@ public class MemChunkMetadataLoader implements IChunkMetadataLoader {
                         chunkMetaData.getStartTime(), chunkMetaData.getEndTime()))
                 || chunkMetaData.getStartTime() > chunkMetaData.getEndTime());
 
-    for (ChunkMetadata metadata : chunkMetadataList) {
+    for (IChunkMetadata metadata : chunkMetadataList) {
       metadata.setVersion(resource.getVersion());
     }
     return chunkMetadataList;
diff --git a/server/src/main/java/org/apache/iotdb/db/utils/FileLoaderUtils.java b/server/src/main/java/org/apache/iotdb/db/utils/FileLoaderUtils.java
index 0a87b75..050de31 100644
--- a/server/src/main/java/org/apache/iotdb/db/utils/FileLoaderUtils.java
+++ b/server/src/main/java/org/apache/iotdb/db/utils/FileLoaderUtils.java
@@ -44,6 +44,7 @@ import org.apache.iotdb.tsfile.read.reader.chunk.ChunkReader;
 import org.apache.iotdb.tsfile.read.reader.chunk.VectorChunkReader;
 
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map.Entry;
 import java.util.Set;
@@ -184,6 +185,6 @@ public class FileLoaderUtils {
   public static List<IChunkMetadata> getChunkMetadataList(Path path, String filePath)
       throws IOException {
     TsFileSequenceReader tsFileReader = FileReaderManager.getInstance().get(filePath, true);
-    return tsFileReader.getChunkMetadataList(path);
+    return new ArrayList<>(tsFileReader.getChunkMetadataList(path));
   }
 }
diff --git a/server/src/main/java/org/apache/iotdb/db/utils/QueryUtils.java b/server/src/main/java/org/apache/iotdb/db/utils/QueryUtils.java
index b958b93..4e07b2a 100644
--- a/server/src/main/java/org/apache/iotdb/db/utils/QueryUtils.java
+++ b/server/src/main/java/org/apache/iotdb/db/utils/QueryUtils.java
@@ -46,7 +46,7 @@ public class QueryUtils {
    */
   @SuppressWarnings("squid:S3776") // Suppress high Cognitive Complexity warning
   public static void modifyChunkMetaData(
-      List<IChunkMetadata> chunkMetaData, List<Modification> modifications) {
+      List<? extends IChunkMetadata> chunkMetaData, List<Modification> modifications) {
     for (int metaIndex = 0; metaIndex < chunkMetaData.size(); metaIndex++) {
       IChunkMetadata metaData = chunkMetaData.get(metaIndex);
       for (Modification modification : modifications) {
diff --git a/server/src/test/java/org/apache/iotdb/db/writelog/recover/UnseqTsFileRecoverTest.java b/server/src/test/java/org/apache/iotdb/db/writelog/recover/UnseqTsFileRecoverTest.java
index 92dec08..77f7940 100644
--- a/server/src/test/java/org/apache/iotdb/db/writelog/recover/UnseqTsFileRecoverTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/writelog/recover/UnseqTsFileRecoverTest.java
@@ -40,6 +40,7 @@ import org.apache.iotdb.db.writelog.node.WriteLogNode;
 import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
 import org.apache.iotdb.tsfile.exception.write.WriteProcessException;
 import org.apache.iotdb.tsfile.file.metadata.ChunkMetadata;
+import org.apache.iotdb.tsfile.file.metadata.IChunkMetadata;
 import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
 import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
 import org.apache.iotdb.tsfile.read.TimeValuePair;
@@ -258,8 +259,8 @@ public class UnseqTsFileRecoverTest {
 
     PriorityMergeReader unSeqMergeReader = new PriorityMergeReader();
     int priorityValue = 1;
-    for (ChunkMetadata chunkMetaData : metadataQuerier.getChunkMetaDataList(path)) {
-      Chunk chunk = chunkLoader.loadChunk(chunkMetaData);
+    for (IChunkMetadata chunkMetaData : metadataQuerier.getChunkMetaDataList(path)) {
+      Chunk chunk = chunkLoader.loadChunk((ChunkMetadata) chunkMetaData);
       ChunkReader chunkReader = new ChunkReader(chunk, null);
       unSeqMergeReader.addReader(new ChunkDataIterator(chunkReader), priorityValue++);
     }
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java
index 85a8144..a538f22 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java
@@ -1260,7 +1260,7 @@ public class TsFileSequenceReader implements AutoCloseable {
     return maxPlanIndex;
   }
 
-  public Iterator<Map<String, List<IChunkMetadata>>> getMeasurementChunkMetadataListMapIterator(
+  public Iterator<Map<String, List<ChunkMetadata>>> getMeasurementChunkMetadataListMapIterator(
       String device) throws IOException {
     readFileMetadata();
 
@@ -1269,7 +1269,7 @@ public class TsFileSequenceReader implements AutoCloseable {
         getMetadataAndEndOffset(metadataIndexNode, device, true, true);
 
     if (metadataIndexPair == null) {
-      return new Iterator<Map<String, List<IChunkMetadata>>>() {
+      return new Iterator<Map<String, List<ChunkMetadata>>>() {
 
         @Override
         public boolean hasNext() {
@@ -1277,7 +1277,7 @@ public class TsFileSequenceReader implements AutoCloseable {
         }
 
         @Override
-        public Map<String, List<IChunkMetadata>> next() {
+        public Map<String, List<ChunkMetadata>> next() {
           throw new NoSuchElementException();
         }
       };
@@ -1287,7 +1287,7 @@ public class TsFileSequenceReader implements AutoCloseable {
     ByteBuffer buffer = readData(metadataIndexPair.left.getOffset(), metadataIndexPair.right);
     collectEachLeafMeasurementNodeOffsetRange(buffer, queue);
 
-    return new Iterator<Map<String, List<IChunkMetadata>>>() {
+    return new Iterator<Map<String, List<ChunkMetadata>>>() {
 
       @Override
       public boolean hasNext() {
@@ -1295,12 +1295,12 @@ public class TsFileSequenceReader implements AutoCloseable {
       }
 
       @Override
-      public Map<String, List<IChunkMetadata>> next() {
+      public Map<String, List<ChunkMetadata>> next() {
         if (!hasNext()) {
           throw new NoSuchElementException();
         }
         Pair<Long, Long> startEndPair = queue.remove();
-        Map<String, List<IChunkMetadata>> measurementChunkMetadataList = new HashMap<>();
+        Map<String, List<ChunkMetadata>> measurementChunkMetadataList = new HashMap<>();
         try {
           List<TimeseriesMetadata> timeseriesMetadataList = new ArrayList<>();
           ByteBuffer nextBuffer = readData(startEndPair.left, startEndPair.right);
@@ -1308,9 +1308,12 @@ public class TsFileSequenceReader implements AutoCloseable {
             timeseriesMetadataList.add(TimeseriesMetadata.deserializeFrom(nextBuffer, true));
           }
           for (TimeseriesMetadata timeseriesMetadata : timeseriesMetadataList) {
-            measurementChunkMetadataList
-                .computeIfAbsent(timeseriesMetadata.getMeasurementId(), m -> new ArrayList<>())
-                .addAll(timeseriesMetadata.getChunkMetadataList());
+            List<ChunkMetadata> list =
+                measurementChunkMetadataList.computeIfAbsent(
+                    timeseriesMetadata.getMeasurementId(), m -> new ArrayList<>());
+            for (IChunkMetadata chunkMetadata : timeseriesMetadata.getChunkMetadataList()) {
+              list.add((ChunkMetadata) chunkMetadata);
+            }
           }
           return measurementChunkMetadataList;
         } catch (IOException e) {
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/write/writer/TsFileIOWriter.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/write/writer/TsFileIOWriter.java
index dd0cd4a..7c977a1 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/write/writer/TsFileIOWriter.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/write/writer/TsFileIOWriter.java
@@ -342,8 +342,8 @@ public class TsFileIOWriter {
   }
 
   // device -> ChunkMetadataList
-  public Map<String, List<IChunkMetadata>> getDeviceChunkMetadataMap() {
-    Map<String, List<IChunkMetadata>> deviceChunkMetadataMap = new HashMap<>();
+  public Map<String, List<ChunkMetadata>> getDeviceChunkMetadataMap() {
+    Map<String, List<ChunkMetadata>> deviceChunkMetadataMap = new HashMap<>();
 
     for (ChunkGroupMetadata chunkGroupMetadata : chunkGroupMetadataList) {
       deviceChunkMetadataMap
diff --git a/tsfile/src/test/java/org/apache/iotdb/tsfile/read/MeasurementChunkMetadataListMapIteratorTest.java b/tsfile/src/test/java/org/apache/iotdb/tsfile/read/MeasurementChunkMetadataListMapIteratorTest.java
index e2d27aa..c7afdf2 100644
--- a/tsfile/src/test/java/org/apache/iotdb/tsfile/read/MeasurementChunkMetadataListMapIteratorTest.java
+++ b/tsfile/src/test/java/org/apache/iotdb/tsfile/read/MeasurementChunkMetadataListMapIteratorTest.java
@@ -21,6 +21,7 @@ package org.apache.iotdb.tsfile.read;
 
 import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
 import org.apache.iotdb.tsfile.common.conf.TSFileDescriptor;
+import org.apache.iotdb.tsfile.file.metadata.ChunkMetadata;
 import org.apache.iotdb.tsfile.file.metadata.IChunkMetadata;
 import org.apache.iotdb.tsfile.read.common.Path;
 import org.apache.iotdb.tsfile.utils.FileGenerator;
@@ -121,11 +122,11 @@ public class MeasurementChunkMetadataListMapIteratorTest {
             expectedDeviceMeasurementChunkMetadataListMap.get(device);
 
         Map<String, List<IChunkMetadata>> actual = new HashMap<>();
-        Iterator<Map<String, List<IChunkMetadata>>> iterator =
+        Iterator<Map<String, List<ChunkMetadata>>> iterator =
             fileReader.getMeasurementChunkMetadataListMapIterator(device);
         while (iterator.hasNext()) {
-          Map<String, List<IChunkMetadata>> next = iterator.next();
-          for (Entry<String, List<IChunkMetadata>> entry : next.entrySet()) {
+          Map<String, List<ChunkMetadata>> next = iterator.next();
+          for (Entry<String, List<ChunkMetadata>> entry : next.entrySet()) {
             actual.computeIfAbsent(entry.getKey(), m -> new ArrayList<>()).addAll(entry.getValue());
           }
         }