You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by qi...@apache.org on 2019/06/27 08:22:41 UTC
[incubator-iotdb] 04/04: reuse getSortedTimeValuePair,
because it is fast...
This is an automated email from the ASF dual-hosted git repository.
qiaojialin pushed a commit to branch feature_async_close_tsfile
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git
commit f2fc4785f9c5a6b52ae02e5924d2ab5d0fa0a02b
Author: qiaojialin <64...@qq.com>
AuthorDate: Thu Jun 27 16:22:21 2019 +0800
reuse getSortedTimeValuePair, because it is fast...
---
.../apache/iotdb/db/engine/memtable/MemTableFlushTaskV2.java | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/MemTableFlushTaskV2.java b/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/MemTableFlushTaskV2.java
index f933939..3271041 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/MemTableFlushTaskV2.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/MemTableFlushTaskV2.java
@@ -15,6 +15,7 @@
package org.apache.iotdb.db.engine.memtable;
import java.io.IOException;
+import java.util.List;
import java.util.concurrent.ConcurrentLinkedQueue;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Future;
@@ -80,7 +81,7 @@ public class MemTableFlushTaskV2 {
// TODO if we can not use TSFileIO writer, then we have to redesign the class of TSFileIO.
IWritableMemChunk series = memTable.getMemTableMap().get(deviceId).get(measurementId);
MeasurementSchema desc = fileSchema.getMeasurementSchema(measurementId);
- DeduplicatedSortedData sortedTimeValuePairs = series.getDeduplicatedSortedData();
+ List<TimeValuePair> sortedTimeValuePairs = series.getSortedTimeValuePairList();
sortTime += System.currentTimeMillis() - startTime;
encodingTaskQueue.add(new Pair<>(sortedTimeValuePairs, desc));
}
@@ -132,7 +133,7 @@ public class MemTableFlushTaskV2 {
ioTaskQueue.add(task);
} else {
long starTime = System.currentTimeMillis();
- Pair<DeduplicatedSortedData, MeasurementSchema> encodingMessage = (Pair<DeduplicatedSortedData, MeasurementSchema>) task;
+ Pair<List<TimeValuePair>, MeasurementSchema> encodingMessage = (Pair<List<TimeValuePair>, MeasurementSchema>) task;
ChunkBuffer chunkBuffer = new ChunkBuffer(encodingMessage.right);
IChunkWriter seriesWriter = new ChunkWriterImpl(encodingMessage.right, chunkBuffer,
PAGE_SIZE_THRESHOLD);
@@ -213,11 +214,10 @@ public class MemTableFlushTaskV2 {
};
- private void writeOneSeries(DeduplicatedSortedData tvPairs, IChunkWriter seriesWriterImpl,
+ private void writeOneSeries(List<TimeValuePair> tvPairs, IChunkWriter seriesWriterImpl,
TSDataType dataType)
throws IOException {
- while (tvPairs.hasNext()) {
- TimeValuePair timeValuePair = tvPairs.next();
+ for (TimeValuePair timeValuePair: tvPairs) {
switch (dataType) {
case BOOLEAN:
seriesWriterImpl