You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ha...@apache.org on 2021/07/13 08:04:45 UTC

[iotdb] 01/02: init

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

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

commit d5ece8dc2a9b21c4f32f93c28e4ca07d6c4a4925
Author: HTHou <hh...@outlook.com>
AuthorDate: Tue Jul 13 11:30:37 2021 +0800

    init
---
 .../main/java/org/apache/iotdb/db/metadata/MLogTxtWriter.java  |  9 +++++++++
 .../org/apache/iotdb/db/metadata/MetadataOperationType.java    |  1 +
 .../main/java/org/apache/iotdb/db/tools/mlog/MLogParser.java   | 10 ++++++++++
 3 files changed, 20 insertions(+)

diff --git a/server/src/main/java/org/apache/iotdb/db/metadata/MLogTxtWriter.java b/server/src/main/java/org/apache/iotdb/db/metadata/MLogTxtWriter.java
index ebfa2c6..a8fea1c 100644
--- a/server/src/main/java/org/apache/iotdb/db/metadata/MLogTxtWriter.java
+++ b/server/src/main/java/org/apache/iotdb/db/metadata/MLogTxtWriter.java
@@ -19,6 +19,7 @@
 package org.apache.iotdb.db.metadata;
 
 import org.apache.iotdb.db.engine.fileSystem.SystemFileFactory;
+import org.apache.iotdb.db.qp.physical.sys.AutoCreateDeviceMNodePlan;
 import org.apache.iotdb.db.qp.physical.sys.CreateTimeSeriesPlan;
 import org.apache.iotdb.db.qp.physical.sys.MNodePlan;
 import org.apache.iotdb.db.qp.physical.sys.MeasurementMNodePlan;
@@ -245,6 +246,14 @@ public class MLogTxtWriter implements AutoCloseable {
     lineNumber.incrementAndGet();
   }
 
+  public void autoCreateDeviceMode(String Device) throws IOException {
+    String outputStr =
+        MetadataOperationType.AUTO_CREATE_DEVICE + "," + Device + LINE_SEPARATOR;
+    ByteBuffer buff = ByteBuffer.wrap(outputStr.getBytes());
+    channel.write(buff);
+    lineNumber.incrementAndGet();
+  }
+
   public void serializeStorageGroupMNode(StorageGroupMNodePlan plan) throws IOException {
     StringBuilder s = new StringBuilder(String.valueOf(MetadataConstant.STORAGE_GROUP_MNODE_TYPE));
     s.append(",").append(plan.getName()).append(",");
diff --git a/server/src/main/java/org/apache/iotdb/db/metadata/MetadataOperationType.java b/server/src/main/java/org/apache/iotdb/db/metadata/MetadataOperationType.java
index 466c0a2..9db97ae 100644
--- a/server/src/main/java/org/apache/iotdb/db/metadata/MetadataOperationType.java
+++ b/server/src/main/java/org/apache/iotdb/db/metadata/MetadataOperationType.java
@@ -33,4 +33,5 @@ public class MetadataOperationType {
   public static final String DROP_INDEX = "32";
   public static final String CHANGE_OFFSET = "12";
   public static final String CHANGE_ALIAS = "13";
+  public static final String AUTO_CREATE_DEVICE = "4";
 }
diff --git a/server/src/main/java/org/apache/iotdb/db/tools/mlog/MLogParser.java b/server/src/main/java/org/apache/iotdb/db/tools/mlog/MLogParser.java
index 85af420..d1cb11f 100644
--- a/server/src/main/java/org/apache/iotdb/db/tools/mlog/MLogParser.java
+++ b/server/src/main/java/org/apache/iotdb/db/tools/mlog/MLogParser.java
@@ -22,6 +22,7 @@ import org.apache.iotdb.db.metadata.MLogTxtWriter;
 import org.apache.iotdb.db.metadata.PartialPath;
 import org.apache.iotdb.db.metadata.logfile.MLogReader;
 import org.apache.iotdb.db.qp.physical.PhysicalPlan;
+import org.apache.iotdb.db.qp.physical.sys.AutoCreateDeviceMNodePlan;
 import org.apache.iotdb.db.qp.physical.sys.ChangeAliasPlan;
 import org.apache.iotdb.db.qp.physical.sys.ChangeTagOffsetPlan;
 import org.apache.iotdb.db.qp.physical.sys.CreateTimeSeriesPlan;
@@ -198,6 +199,15 @@ public class MLogParser {
           case MNODE:
             mLogTxtWriter.serializeMNode((MNodePlan) plan);
             break;
+          case CREATE_TEMPLATE:
+            break;
+          case SET_DEVICE_TEMPLATE:
+            break;
+          case SET_USING_DEVICE_TEMPLATE:
+            break;
+          case AUTO_CREATE_DEVICE_MNODE:
+            mLogTxtWriter.autoCreateDeviceMode(((AutoCreateDeviceMNodePlan) plan).getPath().getFullPath());
+            break;
           default:
             logger.warn("unknown plan {}", plan);
         }