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/26 11:12:26 UTC
[incubator-iotdb] branch feature_async_close_tsfile updated:
discard PrimitiveDataListPool
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
The following commit(s) were added to refs/heads/feature_async_close_tsfile by this push:
new e607d9e discard PrimitiveDataListPool
new 1202b84 Merge remote-tracking branch 'origin/feature_async_close_tsfile' into feature_async_close_tsfile
e607d9e is described below
commit e607d9e18acc9dfc293ed7ef587ffdac76fb15fa
Author: qiaojialin <64...@qq.com>
AuthorDate: Wed Jun 26 19:07:48 2019 +0800
discard PrimitiveDataListPool
---
.../iotdb/db/engine/memtable/AbstractMemTable.java | 4 ----
.../iotdb/db/engine/memtable/WritableMemChunk.java | 22 +++++++++++++++++++++-
.../iotdb/db/utils/PrimitiveDataListPool.java | 6 ------
3 files changed, 21 insertions(+), 11 deletions(-)
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java b/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
index 2f42d5e..49ace0b 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
@@ -95,12 +95,8 @@ public abstract class AbstractMemTable implements IMemTable {
@Override
public void write(String deviceId, String measurement, TSDataType dataType, long insertTime,
String insertValue) {
-// long start = System.currentTimeMillis();
IWritableMemChunk memSeries = createIfNotExistAndGet(deviceId, measurement, dataType);
-// MemTableWriteTimeCost.getInstance().measure(MemTableWriteTimeCostType.WRITE_1, start);
-// start = System.currentTimeMillis();
memSeries.write(insertTime, insertValue);
-// MemTableWriteTimeCost.getInstance().measure(MemTableWriteTimeCostType.WRITE_2, start);
}
@Override
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/WritableMemChunk.java b/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/WritableMemChunk.java
index 8890493..6fde860 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/WritableMemChunk.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/WritableMemChunk.java
@@ -38,7 +38,27 @@ public class WritableMemChunk implements IWritableMemChunk {
public WritableMemChunk(TSDataType dataType) {
this.dataType = dataType;
- this.list = PrimitiveDataListPool.getInstance().getPrimitiveDataListByDataType(dataType);
+// this.list = PrimitiveDataListPool.getInstance().getPrimitiveDataListByDataType(dataType);
+ this.list = getPrimitiveDataListByDataType(dataType);
+ }
+
+ public PrimitiveArrayListV2 getPrimitiveDataListByDataType(TSDataType dataType) {
+ switch (dataType) {
+ case BOOLEAN:
+ return new PrimitiveArrayListV2(boolean.class);
+ case INT32:
+ return new PrimitiveArrayListV2(int.class);
+ case INT64:
+ return new PrimitiveArrayListV2(long.class);
+ case FLOAT:
+ return new PrimitiveArrayListV2(float.class);
+ case DOUBLE:
+ return new PrimitiveArrayListV2(double.class);
+ case TEXT:
+ return new PrimitiveArrayListV2(Binary.class);
+ default:
+ throw new UnSupportedDataTypeException("DataType: " + dataType);
+ }
}
@Override
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/utils/PrimitiveDataListPool.java b/iotdb/src/main/java/org/apache/iotdb/db/utils/PrimitiveDataListPool.java
index 2ffd779..6df1cf3 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/utils/PrimitiveDataListPool.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/utils/PrimitiveDataListPool.java
@@ -69,13 +69,7 @@ public class PrimitiveDataListPool {
private PrimitiveArrayListV2 getPrimitiveDataList(Class clazz) {
ConcurrentLinkedQueue<PrimitiveArrayListV2> primitiveArrayList = primitiveDataListsMap.get(clazz);
-
- long time = System.currentTimeMillis();
PrimitiveArrayListV2 dataList = primitiveArrayList.poll();
- time = System.currentTimeMillis() - time;
- if (time > 10) {
- LOGGER.info("poll from primitiveDataListsMap cost {}ms", time);
- }
return dataList == null ? new PrimitiveArrayListV2(clazz) : dataList;
}