You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by su...@apache.org on 2021/05/28 01:13:11 UTC

[iotdb] branch rel/0.11 updated: Fix TotalSeriesNumber in MManager counted twice when recovering (#3279)

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

sunzesong pushed a commit to branch rel/0.11
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/rel/0.11 by this push:
     new ee570d4  Fix TotalSeriesNumber in MManager counted twice when recovering (#3279)
ee570d4 is described below

commit ee570d4d101bed8974549c29b44fbae182591b1f
Author: Haonan <hh...@outlook.com>
AuthorDate: Fri May 28 09:12:52 2021 +0800

    Fix TotalSeriesNumber in MManager counted twice when recovering (#3279)
---
 server/src/main/java/org/apache/iotdb/db/metadata/MManager.java    | 7 +------
 .../test/java/org/apache/iotdb/db/metadata/MManagerBasicTest.java  | 4 +++-
 2 files changed, 4 insertions(+), 7 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 1eedf02..325a2e4 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
@@ -216,16 +216,11 @@ public class MManager {
 
       isRecovering = true;
       int lineNumber = initFromLog(logFile);
-      List<PartialPath> storageGroups = mtree.getAllStorageGroupPaths();
-      for (PartialPath sg : storageGroups) {
-        MNode node = mtree.getNodeByPath(sg);
-        totalSeriesNumber.addAndGet(node.getMeasurementMNodeCount());
-      }
 
       logWriter = new MLogWriter(config.getSchemaDir(), MetadataConstant.METADATA_LOG);
       logWriter.setLineNumber(lineNumber);
       isRecovering = false;
-    } catch (IOException | MetadataException e) {
+    } catch (IOException e) {
       mtree = new MTree();
       logger.error("Cannot read MTree from file, using an empty new one", e);
     }
diff --git a/server/src/test/java/org/apache/iotdb/db/metadata/MManagerBasicTest.java b/server/src/test/java/org/apache/iotdb/db/metadata/MManagerBasicTest.java
index 4f9b34a..889d3b2 100644
--- a/server/src/test/java/org/apache/iotdb/db/metadata/MManagerBasicTest.java
+++ b/server/src/test/java/org/apache/iotdb/db/metadata/MManagerBasicTest.java
@@ -516,7 +516,7 @@ public class MManagerBasicTest {
   }
 
   @Test
-  public void testTotalSeriesNumber() {
+  public void testTotalSeriesNumber() throws Exception {
     MManager manager = IoTDB.metaManager;
 
     try {
@@ -559,6 +559,8 @@ public class MManagerBasicTest {
           null);
 
       assertEquals(6, manager.getTotalSeriesNumber());
+      EnvironmentUtils.restartDaemon();
+      assertEquals(6, manager.getTotalSeriesNumber());
       manager.deleteTimeseries(new PartialPath("root.laptop.d2.s1"));
       assertEquals(5, manager.getTotalSeriesNumber());
       manager.deleteStorageGroups(Collections.singletonList(new PartialPath("root.laptop")));