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

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

commit e690b369b12171b79c298f7864b835e0b7175549
Author: HTHou <[email protected]>
AuthorDate: Thu May 27 15:48:57 2021 +0800

    Fix TotalSeriesNumber in MManager counted twice when recovering
---
 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 098d40f..bac2ad5 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
@@ -248,16 +248,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.setLogNum(lineNumber);
       isRecovering = false;
-    } catch (IOException | MetadataException e) {
+    } catch (IOException e) {
       logger.error(
           "Cannot recover all MTree from file, we try to recover as possible 
as we can", 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 f81c638..cb8960a 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
@@ -1269,7 +1269,7 @@ public class MManagerBasicTest {
   }
 
   @Test
-  public void testTotalSeriesNumber() {
+  public void testTotalSeriesNumber() throws Exception {
     MManager manager = IoTDB.metaManager;
 
     try {
@@ -1312,6 +1312,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")));

Reply via email to