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

qiaojialin pushed a commit to branch rel/0.9
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git


The following commit(s) were added to refs/heads/rel/0.9 by this push:
     new 90e0258  disable merge and fix merge cache OOM
90e0258 is described below

commit 90e0258021b15fd75a8a086bc61ebd2c5e3e883f
Author: qiaojialin <[email protected]>
AuthorDate: Sat May 23 15:53:41 2020 +0800

    disable merge and fix merge cache OOM
---
 server/src/assembly/resources/conf/iotdb-engine.properties            | 2 +-
 .../java/org/apache/iotdb/db/engine/merge/manage/MergeResource.java   | 4 ++++
 .../org/apache/iotdb/db/engine/merge/task/MergeMultiChunkTask.java    | 1 +
 3 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/server/src/assembly/resources/conf/iotdb-engine.properties 
b/server/src/assembly/resources/conf/iotdb-engine.properties
index 8a6dec5..5d363f7 100644
--- a/server/src/assembly/resources/conf/iotdb-engine.properties
+++ b/server/src/assembly/resources/conf/iotdb-engine.properties
@@ -251,7 +251,7 @@ continue_merge_after_reboot=false
 # A global merge will be performed each such interval, that is, each storage 
group will be merged
 # (if proper merge candidates can be found). Unit: second, default: 1hours.
 # When less than or equal to 0, timed merge is disabled.
-merge_interval_sec=3600
+merge_interval_sec=0
 
 # When set to true, all merges becomes full merge (the whole SeqFiles are 
re-written despite how
 # much they are overflowed). This may increase merge overhead depending on how 
much the SeqFiles
diff --git 
a/server/src/main/java/org/apache/iotdb/db/engine/merge/manage/MergeResource.java
 
b/server/src/main/java/org/apache/iotdb/db/engine/merge/manage/MergeResource.java
index b982cb4..bbb57b9 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/engine/merge/manage/MergeResource.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/engine/merge/manage/MergeResource.java
@@ -261,4 +261,8 @@ public class MergeResource {
       measurementSchemaMap.put(measurementSchema.getMeasurementId(), 
measurementSchema);
     }
   }
+
+  public void clearChunkWriterCache() {
+    this.chunkWriterCache.clear();
+  }
 }
diff --git 
a/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeMultiChunkTask.java
 
b/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeMultiChunkTask.java
index 7bf6488..b3150ce 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeMultiChunkTask.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/engine/merge/task/MergeMultiChunkTask.java
@@ -110,6 +110,7 @@ class MergeMultiChunkTask {
       while (pathSelector.hasNext()) {
         currMergingPaths = pathSelector.next();
         mergePaths();
+        resource.clearChunkWriterCache();
         mergedSeriesCnt += currMergingPaths.size();
         logMergeProgress();
       }

Reply via email to