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

jackietien pushed a commit to branch DeleteDeadLock
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit a0b18161d2e2b72a8a3d0650ada105d50d762723
Author: JackieTien97 <[email protected]>
AuthorDate: Fri Jan 22 15:37:02 2021 +0800

    fix delete dead lock
---
 .../apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java    | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git 
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
 
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
index 2e88108..93a43eb 100755
--- 
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
@@ -1553,8 +1553,8 @@ public class StorageGroupProcessor {
     // TODO: how to avoid partial deletion?
     // FIXME: notice that if we may remove a SGProcessor out of memory, we 
need to close all opened
     //mod files in mergingModification, sequenceFileList, and 
unsequenceFileList
-    writeLock();
     tsFileManagement.writeLock();
+    writeLock();
 
     // record files which are updated so that we can roll back them in case of 
exception
     List<ModificationFile> updatedModFiles = new ArrayList<>();
@@ -1595,8 +1595,8 @@ public class StorageGroupProcessor {
       }
       throw new IOException(e);
     } finally {
-      tsFileManagement.writeUnlock();
       writeUnlock();
+      tsFileManagement.writeUnlock();
     }
   }
 

Reply via email to