You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ro...@apache.org on 2022/05/25 08:19:19 UTC

[iotdb] branch iotdb-3227 updated (d8261859a2 -> 868c43cc26)

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

rong pushed a change to branch iotdb-3227
in repository https://gitbox.apache.org/repos/asf/iotdb.git


    from d8261859a2 snapshot for UDFRegistrationService
     add c0362c2f4e [IOTDB-2919] Refactor delete storage group (#5994)
     add ac0f1be089 [IOTDB-3265] Button Text of Main Features Section Overflow on Mobile Version Homepage (#6003)
     add 4e3e7204d8 [IOTDB-3184] Implement Timeseries version and blacklist (#5998)
     add 796991f75f [IOTDB-3218] Datanode can not be stoped by using stop-server.sh (#6005)
     add a09471f6ba [IOTDB-3236] remove datatypes, encodings, and compressors from keywords (#5955)
     add 5e59402019 [IOTDB-3279] Fix import csv tool error message (#6007)
     add 5f8c634848 [IOTDB-3232] Implement read interface for WAL (#5993)
     add f35f1133f6 [IOTDB-3237] Too much information in SQL parser error message (#5984)
     add 68c0285527 [IOTDB-3070][IOTDB-3074] modify docs related to syntax convention (#5983)
     add 44885d5a3d [IOTDB-3268] Refactor measurement check logic in session api for better performance (#5995)
     add c115adde55 [IOTDB-3083] DataNode AuthorInfo cache (#5943)
     add cde99e33a4 [IOTDB-3253] Upgrade dependency: Ratis from 2.2.0 to 2.3.0 (#5991)
     add 039a461cae [IOTDB-3207] Refactor Create Multi timeseries and Apply in Auto create (#6009)
     add 527847ea2b add lastCacheEnable in use. (#5997)
     add 20cf75b8cd [IOTDB-3286] False Carousel Ratio on Desktop Version Homepage (#6012)
     new 868c43cc26 merge master and fix conflicts

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 |   7 -
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4   |  18 +-
 .../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4  | 113 -----
 .../main/java/org/apache/iotdb/tool/ImportCsv.java |   3 +-
 .../confignode/client/SyncDataNodeClientPool.java  | 139 ++++++
 .../consensus/request/ConfigRequest.java           |   4 +
 .../consensus/request/ConfigRequestType.java       |   1 +
 ...ervalReq.java => PreDeleteStorageGroupReq.java} |  60 +--
 .../iotdb/confignode/manager/ConfigManager.java    |  15 +-
 .../apache/iotdb/confignode/manager/Manager.java   |   5 +-
 .../iotdb/confignode/manager/PartitionManager.java |  37 ++
 .../confignode/manager/PermissionManager.java      |  79 +++-
 .../iotdb/confignode/manager/ProcedureManager.java |   2 +-
 .../iotdb/confignode/persistence/AuthorInfo.java   |  96 +++-
 .../confignode/persistence/PartitionInfo.java      |  58 ++-
 .../executor/ConfigRequestExecutor.java            |   3 +
 .../procedure/env/ConfigNodeProcedureEnv.java      | 112 +++--
 .../impl/DeleteStorageGroupProcedure.java          | 169 ++-----
 .../procedure/state/DeleteStorageGroupState.java   |   7 +-
 .../thrift/ConfigNodeRPCServiceProcessor.java      |   5 +-
 .../confignode/persistence/AuthorInfoTest.java     |  10 +-
 .../confignode/persistence/PartitionInfoTest.java  |   5 +
 .../confignode/procedure/TestProcedureBase.java    |   1 +
 .../procedure/TestProcedureExecutor.java           |   1 +
 .../confignode/procedure/TestSTMProcedure.java     |   1 +
 .../confignode/procedure/entity/IncProcedure.java  |   2 +-
 .../confignode/procedure/entity/NoopProcedure.java |   2 +-
 .../procedure/entity/SimpleLockProcedure.java      |   2 +-
 .../procedure/entity/SimpleSTMProcedure.java       |   2 +-
 .../procedure/entity/SleepProcedure.java           |   2 +-
 .../procedure/entity/StuckProcedure.java           |   2 +-
 .../procedure/entity/StuckSTMProcedure.java        |   2 +-
 .../procedure/env/TestConfigNodeEnv.java           |   4 +-
 .../procedure/{ => env}/TestProcEnv.java           |   2 +-
 .../procedure/store/TestProcedureStore.java        |   2 +-
 .../thrift/ConfigNodeRPCServiceProcessorTest.java  | 129 +++---
 .../confignode1conf/iotdb-confignode.properties    |   9 +
 consensus/pom.xml                                  |   2 +-
 .../ratis/ApplicationStateMachineProxy.java        |  19 +-
 .../iotdb/consensus/ratis/RatisConsensus.java      |   4 +
 .../iotdb/consensus/ratis/SnapshotStorage.java     |  87 +++-
 .../org/apache/iotdb/consensus/ratis/Utils.java    |   7 +-
 .../iotdb/consensus/wal/ConsensusReqReader.java    |  24 +-
 .../apache/iotdb/consensus/ratis/SnapshotTest.java |  12 +-
 .../Administration-Management/Administration.md    |   6 +-
 docs/UserGuide/Reference/Syntax-Conventions.md     | 476 +++++++++++++------
 .../Administration-Management/Administration.md    |   6 +-
 docs/zh/UserGuide/Reference/Syntax-Conventions.md  | 499 ++++++++++++++------
 .../db/integration/IoTDBCreateTimeseriesIT.java    |  78 +++-
 .../iotdb/db/integration/IoTDBSimpleQueryIT.java   |   3 +-
 .../IoTDBSyntaxConventionIdentifierIT.java         |  17 +
 .../apache/iotdb/commons/conf/IoTDBConstant.java   |   4 +
 .../iotdb/commons/partition/DataPartition.java     |   7 +-
 .../iotdb/commons/partition/SchemaPartition.java   |  16 +-
 pom.xml                                            |   7 +
 .../schemaregion/rocksdb/RSchemaRegion.java        |  14 +
 .../rocksdb/mnode/RMeasurementMNode.java           |  10 +
 .../resources/conf/iotdb-engine.properties         |   8 +
 server/src/assembly/resources/sbin/stop-server.sh  |  15 +
 .../org/apache/iotdb/db/auth/AuthorityChecker.java |  54 +--
 .../AuthorityFetcher.java}                         | 100 ++--
 .../apache/iotdb/db/auth/AuthorizerManager.java    | 330 ++++++++++---
 .../apache/iotdb/db/client/ConfigNodeClient.java   |  13 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  33 ++
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |  14 +
 .../iotdb/db/engine/storagegroup/DataRegion.java   |  15 +-
 .../db/engine/storagegroup/TsFileProcessor.java    |   4 +-
 .../metadata/cache/DataNodeLastCacheManager.java   |   6 +-
 .../db/metadata/cache/DataNodeSchemaCache.java     |  17 +-
 .../iotdb/db/metadata/cache/SchemaCacheEntry.java  |  16 +-
 .../idtable/entry/InsertMeasurementMNode.java      |  10 +
 .../iotdb/db/metadata/mnode/IMeasurementMNode.java |   4 +
 .../iotdb/db/metadata/mnode/MeasurementMNode.java  |  12 +
 .../db/metadata/mtree/MTreeBelowSGMemoryImpl.java  |   1 +
 .../iotdb/db/metadata/path/MeasurementPath.java    |  25 +
 .../db/metadata/schemaregion/ISchemaRegion.java    |   6 +
 .../schemaregion/SchemaRegionMemoryImpl.java       |  20 +
 .../schemaregion/SchemaRegionSchemaFileImpl.java   |  14 +
 .../db/metadata/utils/TimeseriesVersionUtil.java   |   9 +-
 .../metadata/visitor/SchemaExecutionVisitor.java   |  88 ++--
 .../iotdb/db/mpp/common/schematree/SchemaTree.java |  18 +-
 .../common/schematree/node/SchemaInternalNode.java |   5 +
 .../schematree/node/SchemaMeasurementNode.java     |  12 +-
 .../db/mpp/common/schematree/node/SchemaNode.java  |   2 +
 .../visitor/SchemaTreeMeasurementVisitor.java      |   8 +-
 .../apache/iotdb/db/mpp/plan/analyze/Analyzer.java |  79 ++++
 .../db/mpp/plan/analyze/ClusterSchemaFetcher.java  |  46 +-
 .../db/mpp/plan/analyze/FakeSchemaFetcherImpl.java |   8 +-
 .../iotdb/db/mpp/plan/analyze/SchemaValidator.java |  22 +-
 .../iotdb/db/mpp/plan/constant/StatementType.java  |   1 +
 .../execution/config/AuthorizerConfigTask.java     | 107 +----
 .../iotdb/db/mpp/plan/parser/ASTVisitor.java       | 109 +++--
 .../iotdb/db/mpp/plan/planner/LogicalPlanner.java  |  48 +-
 .../write/CreateAlignedTimeSeriesNode.java         |  30 +-
 .../metedata/write/CreateMultiTimeSeriesNode.java  | 362 +++------------
 .../node/metedata/write/CreateTimeSeriesNode.java  |  36 +-
 .../plan/node/metedata/write/MeasurementGroup.java | 275 +++++++++++
 .../plan/node/write/InsertMultiTabletsNode.java    |  15 +-
 .../plan/planner/plan/node/write/InsertNode.java   |   6 +-
 .../planner/plan/node/write/InsertRowsNode.java    |   9 +
 .../plan/node/write/InsertRowsOfOneDeviceNode.java |   9 +
 .../db/mpp/plan/statement/StatementVisitor.java    |   7 +
 .../metadata/CreateAlignedTimeSeriesStatement.java |  32 +-
 .../metadata/CreateMultiTimeSeriesStatement.java   |  19 -
 ...java => CreateTimeSeriesByDeviceStatement.java} |  51 +-
 .../qp/logical/sys/CreateTimeSeriesOperator.java   |  58 +++
 .../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java    | 200 +++++---
 .../iotdb/db/qp/strategy/LogicalChecker.java       |   5 +
 .../apache/iotdb/db/qp/strategy/SQLParseError.java |  24 +
 .../db/service/metrics/predefined/FileMetrics.java |   3 +-
 .../thrift/impl/DataNodeTSIServiceImpl.java        | 139 +++++-
 .../service/thrift/impl/InternalServiceImpl.java   |  11 +
 .../db/service/thrift/impl/TSServiceImpl.java      | 143 ++++--
 .../java/org/apache/iotdb/db/tools/WalChecker.java |  13 +-
 .../java/org/apache/iotdb/db/wal/WALManager.java   | 111 +----
 .../allocation/AbstractNodeAllocationStrategy.java |  79 ++++
 .../db/wal/allocation/FirstCreateStrategy.java     | 105 +++++
 .../db/wal/allocation/NodeAllocationStrategy.java  |  20 +-
 .../db/wal/allocation/RoundRobinStrategy.java      | 106 +++++
 .../iotdb/db/wal/buffer/AbstractWALBuffer.java     |  11 +-
 .../org/apache/iotdb/db/wal/buffer/IWALBuffer.java |  13 +-
 .../org/apache/iotdb/db/wal/buffer/WALBuffer.java  |  59 ++-
 .../iotdb/db/wal/checkpoint/CheckpointManager.java |  13 +-
 .../apache/iotdb/db/wal/io/CheckpointWriter.java   |  30 --
 .../java/org/apache/iotdb/db/wal/io/WALWriter.java |  29 --
 .../java/org/apache/iotdb/db/wal/node/WALNode.java | 434 +++++++++++++++--
 .../db/wal/recover/CheckpointRecoverUtils.java     |  12 +-
 .../iotdb/db/wal/recover/WALNodeRecoverTask.java   |  35 +-
 .../iotdb/db/wal/recover/WALRecoverManager.java    |   3 +-
 .../CheckpointFileUtils.java}                      |  50 +-
 .../apache/iotdb/db/wal/utils/WALFileUtils.java    | 134 ++++++
 .../iotdb/db/auth/AuthorizerManagerTest.java       | 164 +++++++
 .../db/metadata/cache/DataNodeSchemaCacheTest.java |  26 +-
 .../db/mpp/common/schematree/SchemaTreeTest.java   |  24 +-
 .../schema/SchemaFetchScanOperatorTest.java        |   9 +-
 .../iotdb/db/service/InternalServiceImplTest.java  |  16 +-
 .../org/apache/iotdb/db/tools/WalCheckerTest.java  |   9 +-
 .../org/apache/iotdb/db/wal/DisableWALTest.java    |   2 +-
 .../org/apache/iotdb/db/wal/WALManagerTest.java    |  32 +-
 .../FirstCreateStrategyTest.java}                  |  79 +++-
 .../RoundRobinStrategyTest.java}                   |  47 +-
 .../iotdb/db/wal/buffer/WALBufferCommonTest.java   |   4 +-
 .../db/wal/checkpoint/CheckpointManagerTest.java   |  17 +-
 .../iotdb/db/wal/node/ConsensusReqReaderTest.java  | 516 +++++++++++++++++++++
 .../org/apache/iotdb/db/wal/node/WALNodeTest.java  |  18 +-
 .../iotdb/db/wal/utils/WALFileUtilsTest.java       | 215 +++++++++
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |   1 +
 site/src/main/.vuepress/theme/components/Page.vue  |  12 +-
 .../.vuepress/theme/global-components/IoTDB.vue    |  69 +--
 .../.vuepress/theme/global-components/IoTDBZH.vue  |  76 +--
 .../src/main/thrift/confignode.thrift              |  22 +-
 thrift/src/main/thrift/mpp.thrift                  |  12 +
 .../tsfile/read/common/parser/PathParseError.java  |  23 +
 153 files changed, 5660 insertions(+), 2112 deletions(-)
 create mode 100644 confignode/src/main/java/org/apache/iotdb/confignode/client/SyncDataNodeClientPool.java
 copy confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/write/{SetTimePartitionIntervalReq.java => PreDeleteStorageGroupReq.java} (58%)
 copy server/src/main/java/org/apache/iotdb/db/engine/trigger/sink/api/Event.java => confignode/src/test/java/org/apache/iotdb/confignode/procedure/env/TestConfigNodeEnv.java (90%)
 rename confignode/src/test/java/org/apache/iotdb/confignode/procedure/{ => env}/TestProcEnv.java (97%)
 copy server/src/main/java/org/apache/iotdb/db/{mpp/plan/execution/config/AuthorizerConfigTask.java => auth/AuthorityFetcher.java} (67%)
 copy cluster/src/test/java/org/apache/iotdb/cluster/common/TestException.java => server/src/main/java/org/apache/iotdb/db/metadata/utils/TimeseriesVersionUtil.java (81%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/node/metedata/write/MeasurementGroup.java
 copy server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/metadata/{CreateFunctionStatement.java => CreateTimeSeriesByDeviceStatement.java} (56%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/wal/allocation/AbstractNodeAllocationStrategy.java
 create mode 100644 server/src/main/java/org/apache/iotdb/db/wal/allocation/FirstCreateStrategy.java
 copy cluster/src/main/java/org/apache/iotdb/cluster/exception/NotInSameGroupException.java => server/src/main/java/org/apache/iotdb/db/wal/allocation/NodeAllocationStrategy.java (65%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/wal/allocation/RoundRobinStrategy.java
 copy server/src/main/java/org/apache/iotdb/db/wal/{io/CheckpointWriter.java => utils/CheckpointFileUtils.java} (52%)
 create mode 100644 server/src/main/java/org/apache/iotdb/db/wal/utils/WALFileUtils.java
 create mode 100644 server/src/test/java/org/apache/iotdb/db/auth/AuthorizerManagerTest.java
 copy server/src/test/java/org/apache/iotdb/db/wal/{WALManagerTest.java => allocation/FirstCreateStrategyTest.java} (57%)
 copy server/src/test/java/org/apache/iotdb/db/wal/{WALManagerTest.java => allocation/RoundRobinStrategyTest.java} (73%)
 create mode 100644 server/src/test/java/org/apache/iotdb/db/wal/node/ConsensusReqReaderTest.java
 create mode 100644 server/src/test/java/org/apache/iotdb/db/wal/utils/WALFileUtilsTest.java


[iotdb] 01/01: merge master and fix conflicts

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rong pushed a commit to branch iotdb-3227
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 868c43cc2601ea6672f455c3f541e133d9025e6e
Merge: d8261859a2 20cf75b8cd
Author: Steve Yurong Su <ro...@apache.org>
AuthorDate: Wed May 25 16:17:37 2022 +0800

    merge master and fix conflicts

 .../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 |   7 -
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4   |  18 +-
 .../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4  | 113 -----
 .../main/java/org/apache/iotdb/tool/ImportCsv.java |   3 +-
 .../confignode/client/SyncDataNodeClientPool.java  | 139 ++++++
 .../consensus/request/ConfigRequest.java           |   4 +
 .../consensus/request/ConfigRequestType.java       |   1 +
 .../request/write/PreDeleteStorageGroupReq.java    |  86 ++++
 .../iotdb/confignode/manager/ConfigManager.java    |  15 +-
 .../apache/iotdb/confignode/manager/Manager.java   |   5 +-
 .../iotdb/confignode/manager/PartitionManager.java |  37 ++
 .../confignode/manager/PermissionManager.java      |  79 +++-
 .../iotdb/confignode/manager/ProcedureManager.java |   2 +-
 .../iotdb/confignode/persistence/AuthorInfo.java   |  96 +++-
 .../confignode/persistence/PartitionInfo.java      |  58 ++-
 .../executor/ConfigRequestExecutor.java            |   3 +
 .../procedure/env/ConfigNodeProcedureEnv.java      | 112 +++--
 .../impl/DeleteStorageGroupProcedure.java          | 169 ++-----
 .../procedure/state/DeleteStorageGroupState.java   |   7 +-
 .../thrift/ConfigNodeRPCServiceProcessor.java      |   5 +-
 .../confignode/persistence/AuthorInfoTest.java     |  10 +-
 .../confignode/persistence/PartitionInfoTest.java  |   5 +
 .../confignode/procedure/TestProcedureBase.java    |   1 +
 .../procedure/TestProcedureExecutor.java           |   1 +
 .../confignode/procedure/TestSTMProcedure.java     |   1 +
 .../confignode/procedure/entity/IncProcedure.java  |   2 +-
 .../confignode/procedure/entity/NoopProcedure.java |   2 +-
 .../procedure/entity/SimpleLockProcedure.java      |   2 +-
 .../procedure/entity/SimpleSTMProcedure.java       |   2 +-
 .../procedure/entity/SleepProcedure.java           |   2 +-
 .../procedure/entity/StuckProcedure.java           |   2 +-
 .../procedure/entity/StuckSTMProcedure.java        |   2 +-
 .../procedure/env/TestConfigNodeEnv.java}          |  10 +-
 .../procedure/{ => env}/TestProcEnv.java           |   2 +-
 .../procedure/store/TestProcedureStore.java        |   2 +-
 .../thrift/ConfigNodeRPCServiceProcessorTest.java  | 129 +++---
 .../confignode1conf/iotdb-confignode.properties    |   9 +
 consensus/pom.xml                                  |   2 +-
 .../ratis/ApplicationStateMachineProxy.java        |  19 +-
 .../iotdb/consensus/ratis/RatisConsensus.java      |   4 +
 .../iotdb/consensus/ratis/SnapshotStorage.java     |  87 +++-
 .../org/apache/iotdb/consensus/ratis/Utils.java    |   7 +-
 .../iotdb/consensus/wal/ConsensusReqReader.java    |  24 +-
 .../apache/iotdb/consensus/ratis/SnapshotTest.java |  12 +-
 .../Administration-Management/Administration.md    |   6 +-
 docs/UserGuide/Reference/Syntax-Conventions.md     | 476 +++++++++++++------
 .../Administration-Management/Administration.md    |   6 +-
 docs/zh/UserGuide/Reference/Syntax-Conventions.md  | 499 ++++++++++++++------
 .../db/integration/IoTDBCreateTimeseriesIT.java    |  78 +++-
 .../iotdb/db/integration/IoTDBSimpleQueryIT.java   |   3 +-
 .../IoTDBSyntaxConventionIdentifierIT.java         |  17 +
 .../apache/iotdb/commons/conf/IoTDBConstant.java   |   4 +
 .../iotdb/commons/partition/DataPartition.java     |   7 +-
 .../iotdb/commons/partition/SchemaPartition.java   |  16 +-
 pom.xml                                            |   7 +
 .../schemaregion/rocksdb/RSchemaRegion.java        |  14 +
 .../rocksdb/mnode/RMeasurementMNode.java           |  10 +
 .../resources/conf/iotdb-engine.properties         |   8 +
 server/src/assembly/resources/sbin/stop-server.sh  |  15 +
 .../org/apache/iotdb/db/auth/AuthorityChecker.java |  54 +--
 .../AuthorityFetcher.java}                         | 100 ++--
 .../apache/iotdb/db/auth/AuthorizerManager.java    | 330 ++++++++++---
 .../apache/iotdb/db/client/ConfigNodeClient.java   |  13 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  33 ++
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |  14 +
 .../iotdb/db/engine/storagegroup/DataRegion.java   |  15 +-
 .../db/engine/storagegroup/TsFileProcessor.java    |   4 +-
 .../metadata/cache/DataNodeLastCacheManager.java   |   6 +-
 .../db/metadata/cache/DataNodeSchemaCache.java     |  17 +-
 .../iotdb/db/metadata/cache/SchemaCacheEntry.java  |  16 +-
 .../idtable/entry/InsertMeasurementMNode.java      |  10 +
 .../iotdb/db/metadata/mnode/IMeasurementMNode.java |   4 +
 .../iotdb/db/metadata/mnode/MeasurementMNode.java  |  12 +
 .../db/metadata/mtree/MTreeBelowSGMemoryImpl.java  |   1 +
 .../iotdb/db/metadata/path/MeasurementPath.java    |  25 +
 .../db/metadata/schemaregion/ISchemaRegion.java    |   6 +
 .../schemaregion/SchemaRegionMemoryImpl.java       |  20 +
 .../schemaregion/SchemaRegionSchemaFileImpl.java   |  14 +
 .../db/metadata/utils/TimeseriesVersionUtil.java   |  14 +-
 .../metadata/visitor/SchemaExecutionVisitor.java   |  88 ++--
 .../iotdb/db/mpp/common/schematree/SchemaTree.java |  18 +-
 .../common/schematree/node/SchemaInternalNode.java |   5 +
 .../schematree/node/SchemaMeasurementNode.java     |  12 +-
 .../db/mpp/common/schematree/node/SchemaNode.java  |   2 +
 .../visitor/SchemaTreeMeasurementVisitor.java      |   8 +-
 .../apache/iotdb/db/mpp/plan/analyze/Analyzer.java |  79 ++++
 .../db/mpp/plan/analyze/ClusterSchemaFetcher.java  |  46 +-
 .../db/mpp/plan/analyze/FakeSchemaFetcherImpl.java |   8 +-
 .../iotdb/db/mpp/plan/analyze/SchemaValidator.java |  22 +-
 .../iotdb/db/mpp/plan/constant/StatementType.java  |   1 +
 .../execution/config/AuthorizerConfigTask.java     | 107 +----
 .../iotdb/db/mpp/plan/parser/ASTVisitor.java       | 109 +++--
 .../iotdb/db/mpp/plan/planner/LogicalPlanner.java  |  48 +-
 .../write/CreateAlignedTimeSeriesNode.java         |  30 +-
 .../metedata/write/CreateMultiTimeSeriesNode.java  | 362 +++------------
 .../node/metedata/write/CreateTimeSeriesNode.java  |  36 +-
 .../plan/node/metedata/write/MeasurementGroup.java | 275 +++++++++++
 .../plan/node/write/InsertMultiTabletsNode.java    |  15 +-
 .../plan/planner/plan/node/write/InsertNode.java   |   6 +-
 .../planner/plan/node/write/InsertRowsNode.java    |   9 +
 .../plan/node/write/InsertRowsOfOneDeviceNode.java |   9 +
 .../db/mpp/plan/statement/StatementVisitor.java    |   7 +
 .../metadata/CreateAlignedTimeSeriesStatement.java |  32 +-
 .../metadata/CreateMultiTimeSeriesStatement.java   |  19 -
 .../CreateTimeSeriesByDeviceStatement.java         |  68 +++
 .../qp/logical/sys/CreateTimeSeriesOperator.java   |  58 +++
 .../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java    | 200 +++++---
 .../iotdb/db/qp/strategy/LogicalChecker.java       |   5 +
 .../apache/iotdb/db/qp/strategy/SQLParseError.java |  24 +
 .../db/service/metrics/predefined/FileMetrics.java |   3 +-
 .../thrift/impl/DataNodeTSIServiceImpl.java        | 139 +++++-
 .../service/thrift/impl/InternalServiceImpl.java   |  11 +
 .../db/service/thrift/impl/TSServiceImpl.java      | 143 ++++--
 .../java/org/apache/iotdb/db/tools/WalChecker.java |  13 +-
 .../java/org/apache/iotdb/db/wal/WALManager.java   | 111 +----
 .../allocation/AbstractNodeAllocationStrategy.java |  79 ++++
 .../db/wal/allocation/FirstCreateStrategy.java     | 105 +++++
 .../NodeAllocationStrategy.java}                   |  26 +-
 .../db/wal/allocation/RoundRobinStrategy.java      | 106 +++++
 .../iotdb/db/wal/buffer/AbstractWALBuffer.java     |  11 +-
 .../org/apache/iotdb/db/wal/buffer/IWALBuffer.java |  13 +-
 .../org/apache/iotdb/db/wal/buffer/WALBuffer.java  |  59 ++-
 .../iotdb/db/wal/checkpoint/CheckpointManager.java |  13 +-
 .../apache/iotdb/db/wal/io/CheckpointWriter.java   |  30 --
 .../java/org/apache/iotdb/db/wal/io/WALWriter.java |  29 --
 .../java/org/apache/iotdb/db/wal/node/WALNode.java | 434 +++++++++++++++--
 .../db/wal/recover/CheckpointRecoverUtils.java     |  12 +-
 .../iotdb/db/wal/recover/WALNodeRecoverTask.java   |  35 +-
 .../iotdb/db/wal/recover/WALRecoverManager.java    |   3 +-
 .../CheckpointFileUtils.java}                      |  50 +-
 .../apache/iotdb/db/wal/utils/WALFileUtils.java    | 134 ++++++
 .../iotdb/db/auth/AuthorizerManagerTest.java       | 164 +++++++
 .../db/metadata/cache/DataNodeSchemaCacheTest.java |  26 +-
 .../db/mpp/common/schematree/SchemaTreeTest.java   |  24 +-
 .../schema/SchemaFetchScanOperatorTest.java        |   9 +-
 .../iotdb/db/service/InternalServiceImplTest.java  |  16 +-
 .../org/apache/iotdb/db/tools/WalCheckerTest.java  |   9 +-
 .../org/apache/iotdb/db/wal/DisableWALTest.java    |   2 +-
 .../org/apache/iotdb/db/wal/WALManagerTest.java    |  32 +-
 .../FirstCreateStrategyTest.java}                  |  79 +++-
 .../RoundRobinStrategyTest.java}                   |  47 +-
 .../iotdb/db/wal/buffer/WALBufferCommonTest.java   |   4 +-
 .../db/wal/checkpoint/CheckpointManagerTest.java   |  17 +-
 .../iotdb/db/wal/node/ConsensusReqReaderTest.java  | 516 +++++++++++++++++++++
 .../org/apache/iotdb/db/wal/node/WALNodeTest.java  |  18 +-
 .../iotdb/db/wal/utils/WALFileUtilsTest.java       | 215 +++++++++
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |   1 +
 site/src/main/.vuepress/theme/components/Page.vue  |  12 +-
 .../.vuepress/theme/global-components/IoTDB.vue    |  69 +--
 .../.vuepress/theme/global-components/IoTDBZH.vue  |  76 +--
 .../src/main/thrift/confignode.thrift              |  22 +-
 thrift/src/main/thrift/mpp.thrift                  |  12 +
 .../tsfile/read/common/parser/PathParseError.java  |  23 +
 153 files changed, 5759 insertions(+), 2073 deletions(-)

diff --cc server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/StatementVisitor.java
index 337d1ceb39,bdbd99f766..650d15d160
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/StatementVisitor.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/statement/StatementVisitor.java
@@@ -32,8 -32,8 +32,9 @@@ import org.apache.iotdb.db.mpp.plan.sta
  import org.apache.iotdb.db.mpp.plan.statement.metadata.CountStorageGroupStatement;
  import org.apache.iotdb.db.mpp.plan.statement.metadata.CountTimeSeriesStatement;
  import org.apache.iotdb.db.mpp.plan.statement.metadata.CreateAlignedTimeSeriesStatement;
 +import org.apache.iotdb.db.mpp.plan.statement.metadata.CreateFunctionStatement;
  import org.apache.iotdb.db.mpp.plan.statement.metadata.CreateMultiTimeSeriesStatement;
+ import org.apache.iotdb.db.mpp.plan.statement.metadata.CreateTimeSeriesByDeviceStatement;
  import org.apache.iotdb.db.mpp.plan.statement.metadata.CreateTimeSeriesStatement;
  import org.apache.iotdb.db.mpp.plan.statement.metadata.DeleteStorageGroupStatement;
  import org.apache.iotdb.db.mpp.plan.statement.metadata.DeleteTimeSeriesStatement;
diff --cc thrift/src/main/thrift/mpp.thrift
index 7f5800a147,d55520a9f4..eaecf45dc7
--- a/thrift/src/main/thrift/mpp.thrift
+++ b/thrift/src/main/thrift/mpp.thrift
@@@ -135,12 -135,11 +135,17 @@@ struct TSchemaFetchResponse 
    1: required binary serializedSchemaTree
  }
  
 -struct TInvalidatePermissionCacheReq{
 +struct TCreateFunctionRequest {
 +  1: required string udfName
 +  2: required string className
 +  3: required list<string> uris
 +}
 +
++struct TInvalidatePermissionCacheReq {
+   1: required string username
+   2: required string roleName
+ }
+ 
  service InternalService {
  
    // -----------------------------------For Data Node-----------------------------------------------
@@@ -217,12 -216,12 +222,19 @@@
    **/
    common.THeartbeatResp getHeartBeat(common.THeartbeatReq req)
  
 +  /**
 +   * Config node will create a function on a list of data nodes.
 +   *
 +   * @param function name, function class name, and executable uris
 +   **/
 +  common.TSStatus createFunction(TCreateFunctionRequest req)
++
+   /**
+    * Config node will invalidate permission Info cache.
+    *
+    * @param string:username, list<string>:roleList
+    */
+   common.TSStatus invalidatePermissionCache(TInvalidatePermissionCacheReq req)
  }
  
  service DataBlockService {