You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ja...@apache.org on 2022/12/20 01:15:04 UTC

[iotdb] 01/03: merge querymetrics

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

jackietien pushed a commit to branch ty/tsbs
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 98eab0d389460605969f989b32ee6f37d1ef49c6
Merge: 7df7c57c69 72020ef96b
Author: JackieTien97 <ja...@gmail.com>
AuthorDate: Wed Dec 7 21:29:04 2022 +0800

    merge querymetrics

 .github/workflows/cluster-it-1c1d.yml              |    2 +
 .github/workflows/cluster-it-1c3d.yml              |    2 +
 .github/workflows/main-unix.yml                    |    2 +-
 .github/workflows/site-build.yml                   |    4 +-
 Jenkinsfile                                        |    8 +-
 README.md                                          |   16 +-
 README_ZH.md                                       |   14 +-
 RELEASE_NOTES.md                                   |  101 +-
 antlr/pom.xml                                      |    2 +-
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4   |    5 +-
 .../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4  |    4 +
 cli/pom.xml                                        |    2 +-
 client-cpp/pom.xml                                 |    6 +-
 client-py/README.md                                |    7 +-
 client-py/pom.xml                                  |    2 +-
 client-py/requirements_dev.txt                     |    2 +-
 client-py/setup.py                                 |    2 +-
 code-coverage/pom.xml                              |    2 +-
 compile-tools/pom.xml                              |    8 +-
 compile-tools/thrift/pom.xml                       |    2 +-
 confignode/pom.xml                                 |    2 +-
 .../src/assembly/resources/conf/confignode-env.bat |    2 +
 .../src/assembly/resources/conf/confignode-env.sh  |    2 +-
 .../iotdb/confignode/conf/ConfigNodeConfig.java    |   66 +-
 .../confignode/conf/ConfigNodeDescriptor.java      |   40 +-
 .../read/partition/GetDataPartitionPlan.java       |   34 +-
 .../partition/GetOrCreateDataPartitionPlan.java    |    5 +-
 .../request/read/region/GetRegionIdPlan.java       |    2 +-
 .../confignode/manager/ClusterSchemaManager.java   |   16 +-
 .../iotdb/confignode/manager/ConfigManager.java    |   22 +-
 .../iotdb/confignode/manager/ConsensusManager.java |    3 +
 .../apache/iotdb/confignode/manager/IManager.java  |    4 +-
 .../iotdb/confignode/manager/load/LoadManager.java |    7 +-
 .../manager/load/balancer/PartitionBalancer.java   |    5 +-
 .../manager/load/balancer/RouteBalancer.java       |    2 +-
 .../partition/GreedyPartitionAllocator.java        |   13 +-
 .../balancer/partition/IPartitionAllocator.java    |    5 +-
 .../load/balancer/router/RegionRouteMap.java       |    5 +
 .../iotdb/confignode/manager/node/NodeManager.java |   28 +-
 .../manager/partition/PartitionManager.java        |   49 +-
 ...Policy.java => RegionGroupExtensionPolicy.java} |    8 +-
 .../persistence/executor/ConfigPlanExecutor.java   |   14 +-
 .../persistence/partition/PartitionInfo.java       |   16 +-
 .../partition/StorageGroupPartitionTable.java      |   10 +-
 .../impl/schema/DeleteStorageGroupProcedure.java   |    5 +
 .../iotdb/confignode/service/ConfigNode.java       |    4 +
 .../confignode/service/ConfigNodeCommandLine.java  |    3 +-
 .../thrift/ConfigNodeRPCServiceProcessor.java      |   11 +-
 .../request/ConfigPhysicalPlanSerDeTest.java       |   27 +-
 consensus/pom.xml                                  |    2 +-
 .../org/apache/iotdb/consensus/common/Utils.java   |   33 +
 .../apache/iotdb/consensus/config/RatisConfig.java |   36 +-
 .../ratis/ApplicationStateMachineProxy.java        |    4 +-
 .../iotdb/consensus/ratis/RatisConsensus.java      |   59 +-
 .../iotdb/consensus/ratis/SnapshotStorage.java     |   19 +-
 .../iotdb/consensus/ratis/RatisConsensusTest.java  |   16 +-
 cross-tests/pom.xml                                |    2 +-
 distribution/pom.xml                               |    4 +-
 docs/Download/README.md                            |   46 +-
 docs/UserGuide/API/InfluxDB-Protocol.md            |    2 +-
 docs/UserGuide/API/Programming-Java-Native-API.md  |    4 +-
 docs/UserGuide/API/Programming-TsFile-API.md       |    4 +-
 docs/UserGuide/Cluster/Cluster-Concept.md          |   21 +-
 .../Cluster-Maintenance.md}                        |  274 +--
 docs/UserGuide/Cluster/Cluster-Setup.md            |   34 +-
 .../UserGuide/Cluster/Deployment-Recommendation.md |  181 ++
 docs/UserGuide/Data-Concept/Data-Type.md           |    2 +-
 .../UserGuide/Ecosystem-Integration/Hive-TsFile.md |    8 +-
 .../Ecosystem-Integration/MapReduce-TsFile.md      |    2 +-
 .../Ecosystem-Integration/Spark-TsFile.md          |    2 +-
 .../Maintenance-Tools/Maintenance-Command.md       |  383 ----
 docs/UserGuide/Monitor-Alert/Metric-Tool.md        |  220 +--
 .../Operators-Functions/Data-Profiling.md          |    4 +-
 docs/UserGuide/Operators-Functions/String.md       |    4 +-
 .../Operators-Functions/User-Defined-Function.md   |   17 +-
 .../UserGuide/QuickStart/Command-Line-Interface.md |   54 +-
 docs/UserGuide/QuickStart/QuickStart.md            |   17 +-
 docs/UserGuide/QuickStart/WayToGetIoTDB.md         |    8 +-
 docs/UserGuide/Reference/Common-Config-Manual.md   |   23 +-
 docs/UserGuide/Reference/SQL-Reference.md          |    2 +-
 docs/UserGuide/Trigger/Implement-Trigger.md        |    2 +-
 .../pom.xml => docs/UserGuide/UDF-Library/M4.md    |   25 +-
 docs/zh/Download/README.md                         |   54 +-
 docs/zh/UserGuide/API/InfluxDB-Protocol.md         |    2 +-
 docs/zh/UserGuide/API/Programming-JDBC.md          |    2 +-
 .../UserGuide/API/Programming-Java-Native-API.md   |    4 +-
 docs/zh/UserGuide/API/Programming-TsFile-API.md    |    4 +-
 docs/zh/UserGuide/Cluster/Cluster-Concept.md       |    4 +-
 .../Cluster-Maintenance.md}                        |  223 +--
 docs/zh/UserGuide/Cluster/Cluster-Setup.md         |   14 +-
 .../UserGuide/Cluster/Deployment-Recommendation.md |  179 ++
 docs/zh/UserGuide/Data-Concept/Data-Type.md        |    2 +-
 .../UserGuide/Ecosystem-Integration/Hive-TsFile.md |    8 +-
 .../Ecosystem-Integration/MapReduce-TsFile.md      |    2 +-
 .../Ecosystem-Integration/Spark-TsFile.md          |    2 +-
 .../Maintenance-Tools/Maintenance-Command.md       |  363 ----
 docs/zh/UserGuide/Monitor-Alert/Metric-Tool.md     |  139 +-
 .../Operators-Functions/Data-Profiling.md          |    4 +-
 docs/zh/UserGuide/Operators-Functions/Overview.md  |    2 +-
 docs/zh/UserGuide/Operators-Functions/String.md    |    4 +-
 .../Operators-Functions/User-Defined-Function.md   |   18 +-
 .../UserGuide/QuickStart/Command-Line-Interface.md |   39 +-
 docs/zh/UserGuide/QuickStart/QuickStart.md         |   15 +-
 docs/zh/UserGuide/QuickStart/WayToGetIoTDB.md      |    2 +-
 .../zh/UserGuide/Reference/Common-Config-Manual.md |   22 +-
 .../Reference/ConfigNode-Config-Manual.md          |    2 +-
 docs/zh/UserGuide/Reference/SQL-Reference.md       |    2 +-
 docs/zh/UserGuide/Trigger/Implement-Trigger.md     |    2 +-
 example/client-cpp-example/pom.xml                 |    4 +-
 example/ext-pipe-plugin-example/README.md          |    2 +-
 example/ext-pipe-plugin-example/pom.xml            |    4 +-
 example/flink/pom.xml                              |    2 +-
 example/hadoop/pom.xml                             |    2 +-
 example/influxdb-protocol-example/pom.xml          |    2 +-
 example/jdbc/pom.xml                               |    2 +-
 example/kafka/pom.xml                              |    4 +-
 example/kafka/readme.md                            |    4 +-
 example/mqtt-customize/pom.xml                     |    2 +-
 example/mqtt/pom.xml                               |    2 +-
 example/pom.xml                                    |    2 +-
 example/pulsar/pom.xml                             |    2 +-
 example/rabbitmq/pom.xml                           |    2 +-
 example/rest-java-example/pom.xml                  |    2 +-
 example/rocketmq/pom.xml                           |    2 +-
 example/rocketmq/readme.md                         |    4 +-
 example/session/pom.xml                            |    2 +-
 example/trigger/pom.xml                            |    4 +-
 example/tsfile/pom.xml                             |    2 +-
 example/tsfile/readme.md                           |    2 +-
 example/udf/pom.xml                                |    4 +-
 .../java/org/apache/iotdb/udf/UDTFExample.java     |    4 +-
 external-api/pom.xml                               |    2 +-
 external-pipe-api/pom.xml                          |    2 +-
 flink-iotdb-connector/pom.xml                      |    2 +-
 flink-tsfile-connector/pom.xml                     |    2 +-
 grafana-connector/pom.xml                          |    4 +-
 .../Apache IoTDB ConfigNode Dashboard.json         |  113 +-
 .../Apache IoTDB DataNode Dashboard.json           |  123 +-
 grafana-plugin/pom.xml                             |   10 +-
 hadoop/README.md                                   |    2 +-
 hadoop/pom.xml                                     |    2 +-
 hive-connector/pom.xml                             |    2 +-
 influxdb-protocol/pom.xml                          |    2 +-
 integration-test/pom.xml                           |    6 +-
 .../java/org/apache/iotdb/it/env/MppConfig.java    |   23 +
 .../org/apache/iotdb/itbase/env/BaseConfig.java    |   24 +
 .../it/IoTDBClusterRegionLeaderBalancingIT.java    |   20 +-
 .../confignode/it/IoTDBConfigNodeSnapshotIT.java   |    8 +-
 .../it/IoTDBConfigNodeSwitchLeaderIT.java          |   18 +-
 ...T.java => IoTDBAutoRegionGroupExtensionIT.java} |  133 +-
 ...java => IoTDBCustomRegionGroupExtensionIT.java} |   61 +-
 .../it/partition/IoTDBPartitionDurableIT.java      |    7 +-
 .../it/partition/IoTDBPartitionGetterIT.java       |   28 +-
 .../partition/IoTDBPartitionInheritPolicyIT.java   |    5 +-
 .../confignode/it/utils/ConfigNodeTestUtils.java   |   28 +-
 .../it/aggregation/IoTDBAggregationOptimizeIT.java |  181 ++
 .../iotdb/db/it/env/StandaloneEnvConfig.java       |   14 +
 .../iotdb/db/it/selectinto/IoTDBSelectInto2IT.java |    3 +
 .../iotdb/db/it/selectinto/IoTDBSelectInto3IT.java |    3 +
 .../iotdb/db/it/selectinto/IoTDBSelectIntoIT.java  |    5 +
 .../iotdb/session/it/IoTDBSessionSimpleIT.java     |   31 +
 integration/pom.xml                                |    8 +-
 .../db/integration/IoTDBLoadExternalTsfileIT.java  | 1032 ----------
 .../IoTDBLoadExternalTsfileWithVirtualSGIT.java    |  137 --
 .../db/integration/IoTDBNewTsFileCompactionIT.java |   36 +-
 .../db/integration/IoTDBRewriteTsFileToolIT.java   |   59 +-
 .../iotdb/db/integration/IoTDBSnapshotIT.java      |  285 ---
 .../aligned/IoTDBLoadExternalAlignedTsFileIT.java  | 2027 ++++++++++----------
 jdbc/README.md                                     |    4 +-
 jdbc/pom.xml                                       |    4 +-
 jdbc/src/main/feature/feature.xml                  |    4 +-
 library-udf/pom.xml                                |    2 +-
 metrics/dropwizard-metrics/pom.xml                 |    2 +-
 metrics/interface/pom.xml                          |    2 +-
 metrics/micrometer-metrics/pom.xml                 |    4 +-
 metrics/pom.xml                                    |    2 +-
 node-commons/pom.xml                               |    2 +-
 .../resources/conf/iotdb-common.properties         |   27 +-
 .../assembly/resources/sbin/start-standalone.bat   |    3 +
 .../assembly/resources/sbin/stop-standalone.bat    |    5 +-
 .../commons/auth/role/LocalFileRoleAccessor.java   |   23 +-
 .../apache/iotdb/commons/conf/IoTDBConstant.java   |    8 +-
 .../iotdb/commons/partition/DataPartition.java     |   21 +-
 .../commons/partition/DataPartitionQueryParam.java |   35 +
 .../commons/partition/DataPartitionTable.java      |   29 +-
 .../commons/partition/SchemaPartitionTable.java    |    6 +-
 .../commons/partition/SeriesPartitionTable.java    |   46 +-
 .../org/apache/iotdb/commons/path/AlignedPath.java |   18 +
 .../org/apache/iotdb/commons/path/PartialPath.java |    3 +
 .../iotdb/commons/service/StartupChecks.java       |   44 +-
 .../commons/utils/ThriftCommonsSerDeUtils.java     |   20 +
 openapi/pom.xml                                    |    2 +-
 pom.xml                                            |   14 +-
 rewrite-tsfile-tool/pom.xml                        |    2 +-
 schema-engine-rocksdb/pom.xml                      |    2 +-
 .../schemaregion/rocksdb/RSchemaRegion.java        |    8 +-
 schema-engine-tag/README.md                        |    4 +-
 schema-engine-tag/pom.xml                          |    2 +-
 server/pom.xml                                     |    2 +-
 .../src/assembly/resources/conf/datanode-env.bat   |    2 +
 server/src/assembly/resources/conf/datanode-env.sh |    2 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |   42 +-
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |   21 +-
 .../db/consensus/DataRegionConsensusImpl.java      |    5 +-
 .../db/consensus/SchemaRegionConsensusImpl.java    |    1 +
 .../statemachine/DataRegionStateMachine.java       |   21 +-
 .../org/apache/iotdb/db/engine/StorageEngine.java  |  777 +++++++-
 .../apache/iotdb/db/engine/StorageEngineV2.java    |  820 --------
 .../apache/iotdb/db/engine/cache/ChunkCache.java   |    5 +
 .../db/engine/cache/TimeSeriesMetadataCache.java   |    6 +
 .../db/engine/compaction/CompactionUtils.java      |   40 +
 .../compaction/cross/CrossSpaceCompactionTask.java |   12 +
 .../rewrite/CrossSpaceCompactionResource.java      |   13 +-
 .../RewriteCrossSpaceCompactionSelector.java       |    5 +-
 .../compaction/inner/InnerSpaceCompactionTask.java |   11 +
 .../writer/AbstractCompactionWriter.java           |    6 +-
 .../writer/AbstractCrossCompactionWriter.java      |    2 +-
 .../iotdb/db/engine/load/LoadTsFileManager.java    |    2 +-
 .../iotdb/db/engine/snapshot/SnapshotLoader.java   |   12 +-
 .../iotdb/db/engine/snapshot/SnapshotTaker.java    |   10 +-
 .../iotdb/db/engine/storagegroup/DataRegion.java   |  184 +-
 .../db/engine/storagegroup/DataRegionMetrics.java  |    2 +-
 .../engine/storagegroup/IDataRegionForQuery.java   |   47 +
 .../engine/storagegroup/TimePartitionManager.java  |    4 +-
 .../db/engine/storagegroup/TsFileProcessor.java    |    4 +-
 .../engine/storagegroup/TsFileProcessorInfo.java   |    2 +-
 .../db/engine/storagegroup/TsFileResourceList.java |    4 +-
 .../db/engine/storagegroup/VirtualDataRegion.java  |   78 +
 .../storagegroup/timeindex/DeviceTimeIndex.java    |    9 +-
 .../storagegroup/timeindex/FileTimeIndex.java      |    6 +-
 .../iotdb/db/localconfignode/LocalConfigNode.java  |    4 +-
 .../db/metadata/mtree/MTreeBelowSGCachedImpl.java  |   35 +-
 .../db/metadata/mtree/MTreeBelowSGMemoryImpl.java  |   35 +-
 .../metadata/schemaregion/RSchemaRegionLoader.java |   14 +-
 .../db/metadata/schemaregion/SchemaEngine.java     |   48 +-
 .../schemaregion/SchemaRegionMemoryImpl.java       |   12 +-
 .../schemaregion/SchemaRegionSchemaFileImpl.java   |    8 +-
 .../db/mpp/aggregation/ExtremeAccumulator.java     |   20 +-
 .../db/mpp/aggregation/FirstValueAccumulator.java  |   28 +-
 .../db/mpp/aggregation/LastValueAccumulator.java   |   27 +-
 .../db/mpp/aggregation/MaxValueAccumulator.java    |   21 +-
 .../db/mpp/aggregation/MinTimeAccumulator.java     |    1 +
 .../db/mpp/aggregation/MinValueAccumulator.java    |   21 +-
 .../iotdb/db/mpp/aggregation/SumAccumulator.java   |    1 +
 .../db/mpp/common/header/ColumnHeaderConstant.java |   12 +-
 .../iotdb/db/mpp/execution/driver/DataDriver.java  |    4 +-
 .../db/mpp/execution/driver/DataDriverContext.java |    8 +-
 .../iotdb/db/mpp/execution/driver/Driver.java      |    8 +-
 .../execution/exchange/MPPDataExchangeManager.java |    6 +-
 .../db/mpp/execution/exchange/SinkHandle.java      |    6 +-
 .../db/mpp/execution/exchange/SourceHandle.java    |    4 +-
 .../execution/executor/RegionWriteExecutor.java    |    2 +-
 .../fragment/FragmentInstanceContext.java          |   22 +-
 .../fragment/FragmentInstanceManager.java          |   25 +-
 .../operator/process/AbstractIntoOperator.java     |  215 ++-
 .../operator/process/DeviceViewIntoOperator.java   |  105 +-
 .../execution/operator/process/IntoOperator.java   |   48 +-
 .../operator/process/TagAggregationOperator.java   |   41 +-
 .../process/join/VerticallyConcatOperator.java     |  207 ++
 ...r.java => AbstractUpdateLastCacheOperator.java} |   74 +-
 .../last/AlignedUpdateLastCacheOperator.java       |   89 +
 .../operator/process/last/LastQueryOperator.java   |    6 +-
 .../process/last/LastQuerySortOperator.java        |   11 +-
 .../operator/process/last/LastQueryUtil.java       |   18 +
 .../process/last/UpdateLastCacheOperator.java      |   84 +-
 .../execution/schedule/AbstractDriverThread.java   |    2 +-
 .../iotdb/db/mpp/plan/analyze/AnalyzeVisitor.java  |  147 +-
 .../mpp/plan/analyze/ClusterPartitionFetcher.java  |   93 +-
 .../db/mpp/plan/analyze/IPartitionFetcher.java     |    9 +
 .../plan/analyze/StandalonePartitionFetcher.java   |   11 +-
 .../db/mpp/plan/analyze/cache/PartitionCache.java  |    2 +-
 .../db/mpp/plan/execution/QueryExecution.java      |    2 +-
 .../mpp/plan/execution/config/ConfigExecution.java |    2 +-
 .../config/executor/ClusterConfigTaskExecutor.java |   75 +-
 .../config/metadata/GetTimeSlotListTask.java       |    7 +-
 .../memory/StatementMemorySourceVisitor.java       |   10 +-
 .../iotdb/db/mpp/plan/parser/ASTVisitor.java       |   17 +-
 .../db/mpp/plan/parser/StatementGenerator.java     |   16 +-
 .../plan/planner/LocalExecutionPlanContext.java    |    5 +
 .../db/mpp/plan/planner/LocalExecutionPlanner.java |    4 +-
 .../db/mpp/plan/planner/LogicalPlanBuilder.java    |   20 +-
 .../db/mpp/plan/planner/OperatorTreeGenerator.java |  169 +-
 .../db/mpp/plan/planner/SubPlanTypeExtractor.java  |   29 +
 .../planner/distribution/ExchangeNodeAdder.java    |    7 +
 .../plan/planner/distribution/SourceRewriter.java  |  248 ++-
 .../plan/planner/plan/node/PlanGraphPrinter.java   |    8 +
 .../mpp/plan/planner/plan/node/PlanNodeType.java   |    6 +-
 .../db/mpp/plan/planner/plan/node/PlanVisitor.java |    5 +
 .../plan/node/process/VerticallyConcatNode.java    |  103 +
 .../plan/planner/plan/node/write/InsertNode.java   |   36 +-
 .../planner/plan/parameter/AggregationStep.java    |   45 +-
 .../scheduler/FixedRateFragInsStateTracker.java    |    2 +-
 .../scheduler/FragmentInstanceDispatcherImpl.java  |   14 +-
 .../db/mpp/plan/scheduler/StandaloneScheduler.java |    7 +-
 .../scheduler/load/LoadTsFileDispatcherImpl.java   |   27 +-
 .../plan/scheduler/load/LoadTsFileScheduler.java   |   67 +-
 .../statement/metadata/GetRegionIdStatement.java   |   30 +-
 .../iotdb/db/mpp/statistics/QueryStatistics.java   |    9 +-
 .../db/query/control/QueryResourceManager.java     |   38 +-
 .../groupby/GroupByWithValueFilterDataSet.java     |   88 +-
 .../groupby/GroupByWithoutValueFilterDataSet.java  |  106 +-
 .../db/query/executor/AggregationExecutor.java     |  124 +-
 .../iotdb/db/query/executor/FillQueryExecutor.java |   69 +-
 .../iotdb/db/query/executor/LastQueryExecutor.java |   50 +-
 .../db/query/executor/RawDataQueryExecutor.java    |  138 +-
 .../query/timegenerator/ServerTimeGenerator.java   |   28 +-
 .../org/apache/iotdb/db/rescon/SystemInfo.java     |   10 +-
 .../java/org/apache/iotdb/db/service/DataNode.java |   21 +-
 .../java/org/apache/iotdb/db/service/IoTDB.java    |    5 +-
 .../apache/iotdb/db/service/IoTDBShutdownHook.java |    4 +-
 .../java/org/apache/iotdb/db/service/NewIoTDB.java |    8 +-
 .../iotdb/db/service/RegionMigrateService.java     |    4 +-
 .../service/thrift/impl/ClientRPCServiceImpl.java  |    2 +-
 .../impl/DataNodeInternalRPCServiceImpl.java       |   36 +-
 .../service/thrift/impl/DataNodeRegionManager.java |    4 +-
 .../db/sync/sender/manager/LocalSyncManager.java   |    2 +-
 .../iotdb/db/sync/sender/pipe/TsFilePipe.java      |    8 +-
 .../sync/transport/client/SyncClientFactory.java   |    7 +-
 .../iotdb/db/tools/TsFileSplitByPartitionTool.java |   10 +-
 .../db/tools/upgrade/TsFileOnlineUpgradeTool.java  |    6 +-
 .../org/apache/iotdb/db/utils/FileLoaderUtils.java |  259 +--
 .../org/apache/iotdb/db/utils/ThreadUtils.java     |    3 +-
 .../java/org/apache/iotdb/db/wal/node/WALNode.java |    4 +-
 ...ageEngineV2Test.java => StorageEngineTest.java} |   14 +-
 .../engine/compaction/CompactionSchedulerTest.java |    1 -
 ...CrossSpaceCompactionWithFastPerformerTest.java} |   19 +-
 ...CompactionWithFastPerformerValidationTest.java} |  201 +-
 ...SpaceCompactionWithReadPointPerformerTest.java} |   19 +-
 ...ctionWithReadPointPerformerValidationTest.java} |  253 +--
 ...CrossSpaceCompactionWithFastPerformerTest.java} |    2 +-
 ...SpaceCompactionWithReadPointPerformerTest.java} |   12 +-
 .../utils/MultiTsFileDeviceIteratorTest.java       |   75 +
 .../db/engine/snapshot/IoTDBSnapshotTest.java      |    8 +-
 .../db/engine/storagegroup/DataRegionTest.java     |   22 +-
 ...ocessorV2Test.java => TsFileProcessorTest.java} |    6 +-
 .../iotdb/db/metadata/mtree/MTreeBelowSGTest.java  |    6 +-
 .../mpp/execution/operator/OperatorMemoryTest.java |    5 +-
 .../operator/VerticallyConcatOperatorTest.java     |  197 ++
 .../db/mpp/plan/StandaloneCoordinatorTest.java     |    6 +-
 .../mpp/plan/analyze/FakePartitionFetcherImpl.java |    6 +
 .../mpp/plan/analyze/QueryTimePartitionTest.java   |   73 +-
 .../distribution/AggregationDistributionTest.java  |   70 +-
 .../iotdb/db/mpp/plan/plan/distribution/Util.java  |    6 +
 .../plan/node/write/WritePlanNodeSplitTest.java    |   18 +-
 .../plan/scheduler/StandaloneSchedulerTest.java    |    6 +-
 .../iotdb/db/tools/TsFileAndModSettleToolTest.java |  373 ++--
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |    4 +-
 service-rpc/pom.xml                                |    2 +-
 session/pom.xml                                    |    2 +-
 site/iotdb-doap.rdf                                |    8 +-
 site/pom.xml                                       |   66 +-
 site/src/main/.vuepress/config.js                  |  489 ++++-
 site/src/main/.vuepress/redirects                  |    3 +-
 site/src/main/.vuepress/theme/components/Page.vue  |   36 +-
 site/src/main/package.json                         |    9 +-
 spark-iotdb-connector/pom.xml                      |    2 +-
 .../apache/iotdb/spark/db/EnvironmentUtils.java    |    7 +-
 spark-tsfile/pom.xml                               |    2 +-
 testcontainer/pom.xml                              |    7 +-
 thrift-commons/pom.xml                             |    2 +-
 thrift-confignode/pom.xml                          |    2 +-
 .../src/main/thrift/confignode.thrift              |   20 +-
 thrift-influxdb/pom.xml                            |    2 +-
 thrift-iot-consensus/pom.xml                       |    2 +-
 thrift/pom.xml                                     |    2 +-
 trigger-api/pom.xml                                |    2 +-
 tsfile/README.md                                   |    2 +-
 tsfile/pom.xml                                     |    2 +-
 udf-api/pom.xml                                    |    2 +-
 zeppelin-interpreter/pom.xml                       |    2 +-
 370 files changed, 8130 insertions(+), 7729 deletions(-)

diff --cc server/src/main/java/org/apache/iotdb/db/mpp/execution/driver/Driver.java
index 8514f4946e,086234fa12..17f19c9a4b
--- a/server/src/main/java/org/apache/iotdb/db/mpp/execution/driver/Driver.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/execution/driver/Driver.java
@@@ -45,10 -45,6 +45,9 @@@ import static com.google.common.base.Th
  import static com.google.common.util.concurrent.MoreExecutors.directExecutor;
  import static java.lang.Boolean.TRUE;
  import static org.apache.iotdb.db.mpp.execution.operator.Operator.NOT_BLOCKED;
- import static org.apache.iotdb.db.mpp.statistics.QueryStatistics.DRIVER_CLOSE;
 +import static org.apache.iotdb.db.mpp.statistics.QueryStatistics.DRIVER_INTERNAL_PROCESS;
 +import static org.apache.iotdb.db.mpp.statistics.QueryStatistics.SEND_TSBLOCK;
 +import static org.apache.iotdb.db.mpp.statistics.QueryStatistics.SET_NO_MORE_TSBLOCK;
  
  public abstract class Driver implements IDriver {
  
@@@ -343,17 -330,8 +342,12 @@@
      Throwable inFlightException = null;
  
      try {
-       long startTime = System.nanoTime();
        root.close();
-       long endTime = System.nanoTime();
-       driverContext
-           .getFragmentInstanceContext()
-           .addOperationTime(DRIVER_CLOSE, endTime - startTime);
-       startTime = endTime;
++      long startTime = System.nanoTime();
        sinkHandle.setNoMoreTsBlocks();
 +      driverContext
 +          .getFragmentInstanceContext()
 +          .addOperationTime(SET_NO_MORE_TSBLOCK, System.nanoTime() - startTime);
      } catch (InterruptedException t) {
        // don't record the stack
        wasInterrupted = true;
diff --cc server/src/main/java/org/apache/iotdb/db/mpp/statistics/QueryStatistics.java
index 5dd624f677,7f6074d709..6d652efa5b
--- a/server/src/main/java/org/apache/iotdb/db/mpp/statistics/QueryStatistics.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/statistics/QueryStatistics.java
@@@ -82,20 -82,15 +82,25 @@@ public class QueryStatistics 
    public static final String DISTRIBUTION_PLANNER = "DistributionPlanner";
    public static final String DISPATCHER = "Dispatcher";
  
 +  public static final String WAIT_FOR_DISPATCH = "WaitForDispatch";
 +
 +  public static final String DISPATCH_READ = "DispatchRead";
 +
-   public static final String DRIVER_CLOSE = "CloseDriver";
- 
 +  public static final String DRIVER_INTERNAL_PROCESS = "DriverInternalProcess";
 +
 +  public static final String SEND_TSBLOCK = "SendTsBlock";
 +
 +  public static final String SET_NO_MORE_TSBLOCK = "SetNoMoreTsBlock";
 +
    public static final String SERVER_RPC_RT = "ServerRpcRT";
  
+   public static final String LOAD_TIME_SERIES_METADATA_ALIGNED = "loadTimeSeriesMetadata-aligned";
+   public static final String LOAD_TIME_SERIES_METADATA = "loadTimeSeriesMetadata";
+   public static final String LOAD_CHUNK_METADATA_LIST = "loadChunkMetadataList";
+   public static final String LOAD_PAGE_READER_LIST = "loadPageReaderList";
+   public static final String TIME_SERIES_METADATA_CACHE_MISS = "TimeSeriesMetadataCacheMiss";
+   public static final String CHUNK_CACHE_MISS = "ChunkCacheMiss";
+ 
    private QueryStatistics() {
      ScheduledExecutorService scheduledExecutor =
          IoTDBThreadPoolFactory.newScheduledThreadPool(1, "Query-Statistics-Print");