You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ji...@apache.org on 2019/01/20 06:22:32 UTC

[incubator-iotdb] branch delete_dev2 updated: revert the delete order: disk first then memory

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

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


The following commit(s) were added to refs/heads/delete_dev2 by this push:
     new fb5802d  revert the delete order: disk first then memory
fb5802d is described below

commit fb5802d49d9aeaa3ab20c15a6bb75a89c02164f0
Author: 江天 <jt...@163.com>
AuthorDate: Sun Jan 20 14:21:53 2019 +0800

    revert the delete order: disk first then memory
---
 .../apache/iotdb/db/engine/filenode/FileNodeProcessor.java   | 12 ++++++------
 .../iotdb/db/engine/overflow/ioV2/OverflowProcessor.java     |  4 ++--
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/iotdb/src/main/java/org/apache/iotdb/db/engine/filenode/FileNodeProcessor.java b/iotdb/src/main/java/org/apache/iotdb/db/engine/filenode/FileNodeProcessor.java
index 6a4eb28..47fa2e9 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/engine/filenode/FileNodeProcessor.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/engine/filenode/FileNodeProcessor.java
@@ -1976,12 +1976,6 @@ public class FileNodeProcessor extends Processor implements IStatistic {
     public void delete(String deviceId, String measurementId, long timestamp) throws IOException {
       // TODO: how to avoid partial deletion?
       long version = versionController.nextVersion();
-      // delete data in memory
-      if (bufferWriteProcessor != null) {
-        bufferWriteProcessor.delete(deviceId, measurementId, timestamp);
-      }
-      OverflowProcessor overflowProcessor = getOverflowProcessor(getProcessorName());
-      overflowProcessor.delete(deviceId, measurementId, timestamp, version);
 
       String fullPath = deviceId +
               IoTDBConstant.PATH_SEPARATOR + measurementId;
@@ -1994,5 +1988,11 @@ public class FileNodeProcessor extends Processor implements IStatistic {
           fileNode.getModFile().write(deletion);
         }
       }
+      // delete data in memory
+      OverflowProcessor overflowProcessor = getOverflowProcessor(getProcessorName());
+      overflowProcessor.delete(deviceId, measurementId, timestamp, version);
+      if (bufferWriteProcessor != null) {
+        bufferWriteProcessor.delete(deviceId, measurementId, timestamp);
+      }
     }
 }
\ No newline at end of file
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/engine/overflow/ioV2/OverflowProcessor.java b/iotdb/src/main/java/org/apache/iotdb/db/engine/overflow/ioV2/OverflowProcessor.java
index 83c65c9..d834ffa 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/engine/overflow/ioV2/OverflowProcessor.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/engine/overflow/ioV2/OverflowProcessor.java
@@ -243,11 +243,11 @@ public class OverflowProcessor extends Processor {
    * @param version the version number of this deletion.
    */
   public void delete(String deviceId, String measurementId, long timestamp, long version) throws IOException {
-    workSupport.delete(deviceId, measurementId, timestamp, false);
     workResource.delete(deviceId, measurementId, timestamp, version);
+    workSupport.delete(deviceId, measurementId, timestamp, false);
     if (flushStatus.isFlushing()) {
-      flushSupport.delete(deviceId, measurementId, timestamp, true);
       mergeResource.delete(deviceId, measurementId, timestamp, version);
+      flushSupport.delete(deviceId, measurementId, timestamp, true);
     }
   }