You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by li...@apache.org on 2019/11/08 07:07:51 UTC

[incubator-iotdb] branch dynamic_config updated: fix(MManager): fix dynamic config bug when creating existing storage groups using multiple clients

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

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


The following commit(s) were added to refs/heads/dynamic_config by this push:
     new 3e8179e  fix(MManager): fix dynamic config bug when creating existing storage groups using multiple clients
3e8179e is described below

commit 3e8179e98bd540e885df006f0a8a08d15924f3f4
Author: liuruiyiyang <24...@qq.com>
AuthorDate: Fri Nov 8 15:07:27 2019 +0800

    fix(MManager): fix dynamic config bug when creating existing storage groups using multiple clients
---
 .../src/main/java/org/apache/iotdb/db/metadata/MManager.java | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java b/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java
index e72c589..5396e43 100644
--- a/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java
+++ b/server/src/main/java/org/apache/iotdb/db/metadata/MManager.java
@@ -584,8 +584,8 @@ public class MManager {
       if (mgraph.checkStorageGroup(path)) {
         return;
       }
-      IoTDBConfigDynamicAdapter.getInstance().addOrDeleteStorageGroup(1);
       mgraph.setStorageGroup(path);
+      IoTDBConfigDynamicAdapter.getInstance().addOrDeleteStorageGroup(1);
       seriesNumberInStorageGroups.put(path, 0);
       if (writeToLog) {
         BufferedWriter writer = getLogWriter();
@@ -593,15 +593,15 @@ public class MManager {
         writer.newLine();
         writer.flush();
       }
-    } catch (IOException | ConfigAdjusterException e) {
+    } catch (IOException | StorageGroupException e) {
       throw new MetadataErrorException(e);
-    } catch (StorageGroupException e) {
+    } catch (ConfigAdjusterException e) {
       try {
-        IoTDBConfigDynamicAdapter.getInstance().addOrDeleteStorageGroup(-1);
-      } catch (ConfigAdjusterException ex) {
+        mgraph.deleteStorageGroup(path);
+        throw new MetadataErrorException(e);
+      } catch (PathErrorException ex) {
         throw new MetadataErrorException(ex);
       }
-      throw new MetadataErrorException(e);
     } finally {
       lock.writeLock().unlock();
     }