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