You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by yo...@apache.org on 2024/03/17 03:35:54 UTC

(iotdb) 01/01: Merge branch 'master' into region-multi-database

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

yongzao pushed a commit to branch region-multi-database
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 42b4065686d0099f8fec45f460b09bd574eac75c
Merge: d1d41495803 a9751f7c9ce
Author: YongzaoDan <53...@qq.com>
AuthorDate: Sun Mar 17 11:35:37 2024 +0800

    Merge branch 'master' into region-multi-database

 .github/workflows/client-cpp.yml                   |   2 +-
 .github/workflows/cluster-it-1c3d.yml              |  16 +-
 .github/workflows/pipe-it-2cluster.yml             |   6 +-
 .../iotdb/it/env/cluster/env/AbstractEnv.java      |  83 +-
 .../it/env/cluster/node/AbstractNodeWrapper.java   |  15 +-
 .../iotdb/it/env/remote/env/RemoteServerEnv.java   |  19 +-
 .../java/org/apache/iotdb/itbase/env/BaseEnv.java  |  25 +-
 .../apache/iotdb/itbase/env/BaseNodeWrapper.java   |   2 +
 .../iotdb/itbase/runtime/NodeConnection.java       |   1 +
 .../itbase/runtime/ParallelRequestDelegate.java    |   1 +
 .../org/apache/iotdb/cli/it/AbstractScript.java    |  25 -
 .../confignode/it/IoTDBConfigNodeSnapshotIT.java   |   8 +-
 .../it/partition/IoTDBPartitionCreationIT.java     |  24 +-
 .../confignode/it/procedure/IoTDBProcedureIT.java  | 113 ++-
 .../db/it/alignbydevice/IoTDBAlignByDevice3IT.java |  43 +
 .../IoTDBAlignByDeviceWithTemplate2IT.java         |  43 +
 .../IoTDBAlignByDeviceWithTemplateIT.java          |   2 +-
 .../IoTDBOrderByLimitOffsetAlignByDevice2IT.java   |  46 +
 .../IoTDBOrderByWithAlignByDevice3IT.java          |  40 +
 .../db/it/alignbydevice/IoTDBShuffleSink1IT.java   |   1 +
 .../db/it/alignbydevice/IoTDBShuffleSink2IT.java   |   1 +
 .../org/apache/iotdb/db/it/utils/TestUtils.java    |  98 ++-
 .../apache/iotdb/libudf/it/dmatch/DMatchIT.java    |  68 +-
 .../iotdb/libudf/it/dprofile/DProfileIT.java       |  32 +-
 .../iotdb/pipe/PipeEnvironmentException.java       |  31 -
 .../apache/iotdb/pipe/it/AbstractPipeDualIT.java   |  60 --
 .../org/apache/iotdb/pipe/it/IoTDBPipeAlterIT.java | 355 --------
 .../apache/iotdb/pipe/it/IoTDBPipeClusterIT.java   | 854 -------------------
 .../pipe/it/IoTDBPipeConnectorParallelIT.java      |  94 ---
 .../apache/iotdb/pipe/it/IoTDBPipeDataSinkIT.java  | 137 ---
 .../apache/iotdb/pipe/it/IoTDBPipeExtractorIT.java | 891 --------------------
 .../apache/iotdb/pipe/it/IoTDBPipeLifeCycleIT.java | 785 -----------------
 .../apache/iotdb/pipe/it/IoTDBPipeNullValueIT.java | 320 -------
 .../apache/iotdb/pipe/it/IoTDBPipeProcessorIT.java | 104 ---
 .../apache/iotdb/pipe/it/IoTDBPipeProtocolIT.java  | 452 ----------
 .../iotdb/pipe/it/IoTDBPipeSingleEnvDemoIT.java    |  15 +-
 .../iotdb/pipe/it/IoTDBPipeSwitchStatusIT.java     | 311 -------
 .../apache/iotdb/pipe/it/IoTDBPipeSyntaxIT.java    | 632 --------------
 .../pipe/it/autocreate/AbstractPipeDualAutoIT.java |  51 ++
 .../iotdb/pipe/it/autocreate/IoTDBPipeAlterIT.java | 369 ++++++++
 .../it/autocreate/IoTDBPipeAutoConflictIT.java     | 293 +++++++
 .../pipe/it/autocreate/IoTDBPipeClusterIT.java     | 861 +++++++++++++++++++
 .../autocreate/IoTDBPipeConnectorParallelIT.java   |  95 +++
 .../pipe/it/autocreate/IoTDBPipeDataSinkIT.java    | 140 ++++
 .../pipe/it/autocreate/IoTDBPipeExtractorIT.java   | 878 +++++++++++++++++++
 .../pipe/it/autocreate/IoTDBPipeIdempotentIT.java  | 441 ++++++++++
 .../pipe/it/autocreate/IoTDBPipeLifeCycleIT.java   | 832 ++++++++++++++++++
 .../pipe/it/autocreate/IoTDBPipeNullValueIT.java   | 324 +++++++
 .../it/autocreate/IoTDBPipePatternFormatIT.java    | 197 +++++
 .../pipe/it/autocreate/IoTDBPipeProcessorIT.java   | 131 +++
 .../pipe/it/autocreate/IoTDBPipeProtocolIT.java    | 461 ++++++++++
 .../it/autocreate/IoTDBPipeSwitchStatusIT.java     | 311 +++++++
 .../pipe/it/autocreate/IoTDBPipeSyntaxIT.java      | 719 ++++++++++++++++
 .../pipe/it/manual/AbstractPipeDualManualIT.java   |  51 ++
 .../iotdb/pipe/it/manual/IoTDBPipeInclusionIT.java | 215 +++++
 .../pipe/it/manual/IoTDBPipeManualConflictIT.java  | 257 ++++++
 .../it/manual/IoTDBPipeMetaLeaderChangeIT.java     | 201 +++++
 .../pipe/it/manual/IoTDBPipeMetaRestartIT.java     | 176 ++++
 .../it/manual/IoTDBPipeMultiSchemaRegionIT.java    |  91 ++
 .../org/apache/iotdb/tools/ExportCsvTestIT.java    | 198 -----
 .../org/apache/iotdb/tools/ExportTsFileTestIT.java | 198 -----
 .../org/apache/iotdb/tools/it/ExportCsvTestIT.java | 195 +++++
 .../apache/iotdb/tools/it/ExportTsFileTestIT.java  | 196 +++++
 .../org/apache/iotdb/tools/it/ImportCsvTestIT.java | 123 +++
 iotdb-api/common-api/pom.xml                       |   6 -
 .../common/block/column/ColumnBuilderStatus.java   |   9 +-
 .../java/org/apache/iotdb/tsfile/utils/BitMap.java |   4 +-
 .../org/apache/iotdb/tsfile/utils/Constants.java   | 100 +++
 .../iotdb/tsfile/utils/RamUsageEstimator.java      | 574 +++++++++++++
 .../org/apache/iotdb/pipe/api/PipeConnector.java   |  45 +-
 .../org/apache/iotdb/pipe/api/PipeExtractor.java   |  45 +-
 .../org/apache/iotdb/pipe/api/PipeProcessor.java   |  45 +-
 .../iotdb/pipe/api/collector/EventCollector.java   |   4 +-
 .../event/dml/insertion/TsFileInsertionEvent.java  |   5 +-
 .../api/customizer/parameter/UDFParameters.java    | 112 ++-
 iotdb-client/cli/pom.xml                           |   3 +-
 .../java/org/apache/iotdb/cli/AbstractCliIT.java   | 202 -----
 .../java/org/apache/iotdb/cli/AbstractCliTest.java | 202 +++++
 .../java/org/apache/iotdb/cli/AbstractScript.java  | 102 ---
 .../org/apache/iotdb/tool/WriteCsvFileTest.java    |  44 +
 .../iotdb/tool/integration/ExportCsvTestIT.java    | 109 ---
 .../iotdb/tool/integration/ImportCsvTestIT.java    | 109 ---
 .../apache/iotdb/tool/unit/WriteCsvFileTestUT.java |  46 -
 .../org/apache/iotdb/jdbc/IoTDBConnection.java     |  10 +-
 .../apache/iotdb/jdbc/IoTDBDatabaseMetadata.java   |   4 +
 .../java/org/apache/iotdb/jdbc/IoTDBStatement.java |  65 --
 .../apache/iotdb/rpc/BaseRpcTransportFactory.java  | 107 +++
 .../iotdb/rpc/DeepCopyRpcTransportFactory.java     |  46 +
 .../org/apache/iotdb/rpc/RpcTransportFactory.java  | 123 ---
 .../main/java/org/apache/iotdb/rpc/RpcUtils.java   |   8 +-
 .../rpc/TCompressedElasticFramedTransport.java     |   7 +-
 .../apache/iotdb/rpc/TElasticFramedTransport.java  |  47 +-
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |  15 +
 .../iotdb/rpc/TSnappyElasticFramedTransport.java   |  22 +-
 .../rpc/TimeoutChangeableTFastFramedTransport.java |  13 +-
 .../TimeoutChangeableTSnappyFramedTransport.java   |  12 +-
 .../iotdb/rpc/ZeroCopyRpcTransportFactory.java     |  46 +
 .../iotdb/rpc/subscription/EnrichedRowRecord.java  |  34 +
 .../rpc/subscription/IoTDBSubscriptionDataSet.java |  35 +
 .../payload/request/ConsumerConfig.java            |  85 ++
 .../payload/request/PipeSubscribeCloseReq.java     |  74 ++
 .../payload/request/PipeSubscribeCommitReq.java    | 110 +++
 .../payload/request/PipeSubscribeHandshakeReq.java |  97 +++
 .../payload/request/PipeSubscribeHeartbeatReq.java |  75 ++
 .../payload/request/PipeSubscribePollReq.java      |  96 +++
 .../payload/request/PipeSubscribeRequestType.java  |  60 ++
 .../request/PipeSubscribeRequestVersion.java       |  35 +
 .../payload/request/PipeSubscribeSubscribeReq.java | 100 +++
 .../request/PipeSubscribeUnsubscribeReq.java       | 101 +++
 .../payload/response/EnrichedTablets.java          |  89 ++
 .../payload/response/PipeSubscribeCloseResp.java   |  78 ++
 .../payload/response/PipeSubscribeCommitResp.java  |  78 ++
 .../response/PipeSubscribeHandshakeResp.java       | 125 +++
 .../response/PipeSubscribeHeartbeatResp.java       |  79 ++
 .../payload/response/PipeSubscribePollResp.java    | 110 +++
 .../response/PipeSubscribeResponseType.java        |  55 ++
 .../response/PipeSubscribeResponseVersion.java     |  35 +
 .../response/PipeSubscribeSubscribeResp.java       |  79 ++
 .../response/PipeSubscribeUnsubscribeResp.java     |  79 ++
 .../org/apache/iotdb/session/NodesSupplier.java    |   7 +-
 .../apache/iotdb/session/SessionConnection.java    |  10 +-
 .../org/apache/iotdb/session/ThriftConnection.java |  10 +-
 .../java/org/apache/iotdb/flink/IoTDBSink.java     |   2 +-
 iotdb-connector/grafana-plugin/go.mod              |   2 +-
 .../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 |   1 +
 .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4   |   2 +-
 .../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4  |   8 +
 .../resources/conf/iotdb-confignode.properties     |  12 +
 .../iotdb/confignode/conf/ConfigNodeConfig.java    |  17 +-
 .../iotdb/confignode/conf/ConfigNodeConstant.java  |  13 -
 .../confignode/conf/ConfigNodeDescriptor.java      |   7 +
 .../consensus/request/ConfigPhysicalPlan.java      |  20 +-
 .../consensus/request/ConfigPhysicalPlanType.java  |   4 +
 .../request/ConfigPhysicalPlanVisitor.java         | 187 +++++
 .../consensus/request/auth/AuthorPlan.java         |   2 +-
 .../request/write/pipe/PipeEnrichedPlan.java       |  79 --
 .../pipe/payload/PipeDeactivateTemplatePlan.java   | 106 +++
 .../pipe/payload/PipeDeleteLogicalViewPlan.java    |  85 ++
 .../pipe/payload/PipeDeleteTimeSeriesPlan.java     |  85 ++
 .../write/pipe/payload/PipeEnrichedPlan.java       |  80 ++
 .../pipe/payload/PipeUnsetSchemaTemplatePlan.java  |  92 ++
 .../pipe/runtime/PipeHandleLeaderChangePlan.java   |  17 +-
 .../request/write/pipe/task/CreatePipePlanV2.java  |  29 +
 .../request/write/pipe/task/DropPipePlanV2.java    |  23 +
 .../write/pipe/task/SetPipeStatusPlanV2.java       |  23 +
 .../response/pipe/task/PipeTableResp.java          |   2 +-
 .../statemachine/ConfigRegionStateMachine.java     |  43 +-
 .../iotdb/confignode/manager/ConfigManager.java    | 143 +++-
 .../apache/iotdb/confignode/manager/IManager.java  |  99 ++-
 .../confignode/manager/PermissionManager.java      |   8 +-
 .../iotdb/confignode/manager/ProcedureManager.java |  89 +-
 .../iotdb/confignode/manager/TriggerManager.java   |  10 +-
 .../manager/consensus/ConsensusManager.java        |   5 +-
 .../iotdb/confignode/manager/load/LoadManager.java |  15 +-
 .../manager/load/balancer/RegionBalancer.java      |   8 +-
 .../manager/load/balancer/RouteBalancer.java       |  61 +-
 .../confignode/manager/load/cache/LoadCache.java   |   7 +-
 .../manager/load/cache/route/RegionRouteCache.java |   5 +
 .../manager/load/service/StatisticsService.java    |  16 +-
 .../iotdb/confignode/manager/node/NodeManager.java |   4 +-
 .../manager/pipe/agent/PipeConfigNodeAgent.java    |  54 --
 .../PipeConfigRegionConnectorConstructor.java      |  68 --
 .../PipeConfigRegionExtractorConstructor.java      |  49 --
 .../PipeConfigRegionProcessorConstructor.java      |  41 -
 .../agent/plugin/PipePluginConfigNodeAgent.java    |  49 --
 .../pipe/agent/task/PipeTaskConfigNodeAgent.java   |  84 --
 .../pipe/connector/IoTDBConfigRegionConnector.java |  30 -
 .../payload/request/PipeTransferConfigPlanReq.java |  78 --
 .../coordinator/runtime/PipeHeartbeatParser.java   | 135 ++-
 .../runtime/PipeHeartbeatScheduler.java            |  14 +
 .../runtime/PipeLeaderChangeHandler.java           |  43 +-
 .../runtime/PipeRuntimeCoordinator.java            |   4 +
 .../pipe/coordinator/task/PipeTaskCoordinator.java |   3 +-
 .../coordinator/task/PipeTaskCoordinatorLock.java  |   4 +-
 .../pipe/event/PipeConfigRegionSnapshotEvent.java  |  70 ++
 .../pipe/event/PipeConfigRegionWritePlanEvent.java |  86 ++
 .../event/PipeConfigSerializableEventType.java     |  77 ++
 .../pipe/execution/PipeConfigNodeSubtask.java      | 314 -------
 .../execution/PipeConfigNodeSubtaskExecutor.java   |  50 --
 .../pipe/extractor/IoTDBConfigRegionExtractor.java |  30 -
 .../PipeConfigNodeSnapshotResourceManager.java     |  42 +
 .../manager/pipe/task/PipeConfigNodeTask.java      |  51 --
 .../pipe/task/PipeConfigNodeTaskBuilder.java       |  72 --
 .../manager/pipe/task/PipeConfigNodeTaskStage.java |  75 --
 .../pipe/transfer/agent/PipeConfigNodeAgent.java   |  84 ++
 .../agent/plugin/PipeConfigNodePluginAgent.java    |  49 ++
 .../PipeConfigRegionConnectorConstructor.java      |  75 ++
 .../PipeConfigRegionExtractorConstructor.java      |  49 ++
 .../PipeConfigRegionProcessorConstructor.java      |  41 +
 .../agent/receiver/IoTDBConfigNodeReceiver.java    | 245 ++++++
 .../receiver/IoTDBConfigNodeReceiverAgent.java     |  63 ++
 .../PipeConfigPhysicalPlanExceptionVisitor.java    |  51 ++
 .../PipeConfigPhysicalPlanTSStatusVisitor.java     | 306 +++++++
 .../agent/runtime/PipeConfigNodeRuntimeAgent.java  | 141 ++++
 .../agent/runtime/PipeConfigRegionListener.java    |  75 ++
 .../agent/task/PipeConfigNodeTaskAgent.java        | 218 +++++
 .../client/IoTDBConfigNodeSyncClientManager.java   |  57 ++
 .../config/IoTDBConfigRegionAirGapConnector.java   | 160 ++++
 .../config/IoTDBConfigRegionConnector.java         | 206 +++++
 .../PipeTransferConfigNodeHandshakeV1Req.java      |  71 ++
 .../PipeTransferConfigNodeHandshakeV2Req.java      |  71 ++
 .../payload/request/PipeTransferConfigPlanReq.java |  76 ++
 .../PipeTransferConfigSnapshotPieceReq.java        |  73 ++
 .../request/PipeTransferConfigSnapshotSealReq.java |  70 ++
 .../transfer/execution/PipeConfigNodeSubtask.java  | 224 +++++
 .../execution/PipeConfigNodeSubtaskExecutor.java   |  50 ++
 .../extractor/ConfigRegionListeningFilter.java     | 200 +++++
 .../extractor/ConfigRegionListeningQueue.java      | 131 +++
 .../extractor/IoTDBConfigRegionExtractor.java      |  55 ++
 .../pipe/transfer/task/PipeConfigNodeTask.java     |  51 ++
 .../transfer/task/PipeConfigNodeTaskBuilder.java   |  66 ++
 .../transfer/task/PipeConfigNodeTaskStage.java     |  80 ++
 .../manager/schema/ClusterSchemaManager.java       |  80 +-
 .../persistence/executor/ConfigPlanExecutor.java   |  31 +-
 .../confignode/persistence/pipe/PipeInfo.java      | 152 ++++
 .../confignode/persistence/pipe/PipeTaskInfo.java  |  94 +--
 .../persistence/schema/ClusterSchemaInfo.java      |  29 +-
 .../confignode/procedure/ProcedureExecutor.java    |  11 +-
 .../procedure/env/ConfigNodeProcedureEnv.java      |  11 +-
 .../impl/CreateManyDatabasesProcedure.java         | 116 ---
 .../procedure/impl/StateMachineProcedure.java      | 342 ++++++++
 .../procedure/impl/cq/CreateCQProcedure.java       |  15 +-
 .../procedure/impl/node/AbstractNodeProcedure.java |  10 +-
 .../impl/node/RemoveDataNodeProcedure.java         |   2 +-
 .../impl/pipe/AbstractOperatePipeProcedureV2.java  |   2 +-
 .../pipe/plugin/CreatePipePluginProcedure.java     |   5 +-
 .../impl/pipe/plugin/DropPipePluginProcedure.java  |   5 +-
 .../runtime/PipeHandleLeaderChangeProcedure.java   |  30 +-
 .../runtime/PipeHandleMetaChangeProcedure.java     |  12 +-
 .../impl/pipe/runtime/PipeMetaSyncProcedure.java   |  29 +-
 .../impl/pipe/task/AlterPipeProcedureV2.java       |  15 +-
 .../impl/pipe/task/CreatePipeProcedureV2.java      |  39 +-
 .../impl/pipe/task/DropPipeProcedureV2.java        |   8 +-
 .../impl/pipe/task/StartPipeProcedureV2.java       |   8 +-
 .../impl/pipe/task/StopPipeProcedureV2.java        |   8 +-
 .../impl/region/CreateRegionGroupsProcedure.java   | 317 +++++++
 .../impl/region/RegionMigrateProcedure.java        | 316 +++++++
 .../impl/schema/AlterLogicalViewProcedure.java     |  33 +-
 .../impl/schema/DeactivateTemplateProcedure.java   |  55 +-
 .../impl/schema/DeleteDatabaseProcedure.java       |  24 +-
 .../impl/schema/DeleteLogicalViewProcedure.java    |  54 +-
 .../impl/schema/DeleteTimeSeriesProcedure.java     |  61 +-
 .../impl/schema/SetTemplateProcedure.java          |  45 +-
 .../impl/schema/UnsetTemplateProcedure.java        |  39 +-
 .../statemachine/CreateRegionGroupsProcedure.java  | 316 -------
 .../impl/statemachine/RegionMigrateProcedure.java  | 315 -------
 .../impl/statemachine/StateMachineProcedure.java   | 331 --------
 .../impl/sync/AbstractOperatePipeProcedure.java    |   2 +-
 .../impl/sync/AuthOperationProcedure.java          |  25 +-
 .../AddNeverFinishSubProcedureProcedure.java       |  78 ++
 .../testonly/CreateManyDatabasesProcedure.java     | 109 +++
 .../impl/testonly/NeverFinishProcedure.java        |  68 ++
 .../impl/testonly/ProcedureTestUtils.java          |  34 +
 .../impl/trigger/CreateTriggerProcedure.java       |  36 +-
 .../impl/trigger/DropTriggerProcedure.java         |  26 +-
 .../procedure/store/ConfigProcedureStore.java      |   8 +-
 .../procedure/store/ProcedureFactory.java          |  78 +-
 .../confignode/procedure/store/ProcedureType.java  |  27 +-
 .../iotdb/confignode/service/ConfigNode.java       |   8 +-
 .../service/thrift/ConfigNodeRPCService.java       |   4 +-
 .../thrift/ConfigNodeRPCServiceProcessor.java      |  35 +-
 .../request/ConfigPhysicalPlanSerDeTest.java       | 117 ++-
 .../consensus/response/pipe/PipeTableRespTest.java |  17 +-
 .../pipe/PipeConfigNodeThriftRequestTest.java      |  97 +++
 .../connector/IoTDBConfigRegionConnectorTest.java  |   1 +
 .../PipeConfigNodeSubtaskExecutorTest.java         |   9 +-
 .../extractor/IoTDBConfigRegionExtractorTest.java  |   1 +
 .../ConfigRegionListeningQueueTest.java            | 109 +++
 .../iotdb/confignode/persistence/PipeInfoTest.java |  12 +-
 .../persistence/schema/ConfigMTreeTest.java        |   7 +
 .../procedure/entity/SimpleSTMProcedure.java       |   2 +-
 .../procedure/entity/StuckSTMProcedure.java        |   2 +-
 .../procedure/impl/CreateCQProcedureTest.java      |   1 +
 .../impl/CreateRegionGroupsProcedureTest.java      |   2 +-
 .../procedure/impl/CreateTriggerProcedureTest.java |   4 +-
 .../procedure/impl/DropTriggerProcedureTest.java   |   2 +-
 .../pipe/receiver/PipeEnrichedProcedureTest.java   | 332 ++++++++
 .../impl/region/RegionMigrateProcedureTest.java    |  65 ++
 .../impl/schema/AlterLogicalViewProcedureTest.java |  68 ++
 .../schema/DeactivateTemplateProcedureTest.java    |   4 +-
 .../impl/schema/DeleteDatabaseProcedureTest.java   |   2 +-
 .../schema/DeleteLogicalViewProcedureTest.java     |  58 ++
 .../impl/schema/DeleteTimeSeriesProcedureTest.java |   4 +-
 .../impl/schema/SetTemplateProcedureTest.java      |  51 ++
 .../impl/schema/UnsetTemplateProcedureTest.java    |   4 +-
 .../statemachine/RegionMigrateProcedureTest.java   |  65 --
 .../impl/sync/AuthOperationProcedureTest.java      |   3 +-
 .../iot/client/SyncIoTConsensusServiceClient.java  |   4 +-
 .../iot/service/IoTConsensusRPCService.java        |   4 +-
 .../iotdb/consensus/simple/SimpleConsensus.java    |  10 +-
 .../simple/SimpleConsensusServerImpl.java          |  23 +-
 iotdb-core/datanode/pom.xml                        |  12 -
 .../assembly/resources/conf/logback-datanode.xml   |  18 +
 .../org/apache/iotdb/db/audit/AuditLogger.java     |   2 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  28 +-
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |  20 +-
 .../dataregion/DataExecutionVisitor.java           |   7 +-
 .../schemaregion/SchemaExecutionVisitor.java       |  42 +-
 .../schemaregion/SchemaRegionStateMachine.java     |  37 +-
 .../mpp/FragmentInstanceFetchException.java        |  35 +
 .../org/apache/iotdb/db/pipe/agent/PipeAgent.java  |  61 +-
 .../pipe/agent/plugin/PipeDataNodePluginAgent.java | 231 +++++
 .../pipe/agent/plugin/PipePluginDataNodeAgent.java | 230 -----
 .../PipeDataRegionConnectorConstructor.java        |  32 +-
 .../PipeDataRegionExtractorConstructor.java        |   4 +-
 .../PipeDataRegionProcessorConstructor.java        |  11 +-
 .../PipeSchemaRegionConnectorConstructor.java      |  11 +-
 .../PipeSchemaRegionExtractorConstructor.java      |   4 +-
 .../PipeSchemaRegionProcessorConstructor.java      |   4 +-
 .../agent/receiver/PipeDataNodeReceiverAgent.java  |  85 ++
 .../db/pipe/agent/receiver/PipeReceiverAgent.java  |  85 --
 .../db/pipe/agent/runtime/PipeAgentLauncher.java   |   3 +-
 .../agent/runtime/PipeDataNodeRuntimeAgent.java    | 216 +++++
 .../agent/runtime/PipePeriodicalJobExecutor.java   |  10 +-
 .../db/pipe/agent/runtime/PipeRuntimeAgent.java    | 173 ----
 .../runtime/PipeSchemaRegionListenerManager.java   | 107 +++
 .../db/pipe/agent/task/PipeDataNodeTaskAgent.java  | 413 +++++++++
 .../db/pipe/agent/task/PipeTaskDataNodeAgent.java  | 399 ---------
 .../client/IoTDBDataNodeAsyncClientManager.java    | 241 ++++++
 .../IoTDBDataNodeCacheLeaderClientManager.java     | 116 +++
 .../client/IoTDBDataNodeSyncClientManager.java     | 103 +++
 .../payload/airgap/AirGapELanguageConstant.java    |  34 -
 .../payload/airgap/AirGapOneByteResponse.java      |  30 -
 .../airgap/AirGapPseudoTPipeTransferRequest.java   |  24 -
 ...oTDBThriftAsyncPipeTransferBatchReqBuilder.java |  11 +-
 ...IoTDBThriftSyncPipeTransferBatchReqBuilder.java |   2 +-
 .../builder/PipeTransferBatchReqBuilder.java       |  12 +-
 .../common/PipeTransferHandshakeConstant.java      |  30 -
 .../reponse/PipeTransferFilePieceResp.java         |  80 --
 .../PipeTransferDataNodeHandshakeV1Req.java        |  71 ++
 .../PipeTransferDataNodeHandshakeV2Req.java        |  71 ++
 .../request/PipeTransferFilePieceReq.java          | 134 ---
 .../evolvable/request/PipeTransferFileSealReq.java | 121 ---
 .../request/PipeTransferHandshakeV1Req.java        | 110 ---
 .../request/PipeTransferHandshakeV2Req.java        | 129 ---
 .../evolvable/request/PipeTransferPlanNodeReq.java | 105 +++
 .../request/PipeTransferSchemaPlanReq.java         | 105 ---
 .../PipeTransferSchemaSnapshotPieceReq.java        |  73 ++
 .../request/PipeTransferSchemaSnapshotSealReq.java |  70 ++
 .../request/PipeTransferTabletBatchReq.java        |  11 +-
 .../request/PipeTransferTabletBinaryReq.java       |  20 +-
 .../request/PipeTransferTabletInsertNodeReq.java   |  12 +-
 .../request/PipeTransferTabletRawReq.java          |  13 +-
 .../request/PipeTransferTsFilePieceReq.java        |  72 ++
 .../request/PipeTransferTsFileSealReq.java         |  70 ++
 .../protocol/airgap/IoTDBAirGapConnector.java      | 453 ----------
 .../airgap/IoTDBDataNodeAirGapConnector.java       | 114 +++
 .../airgap/IoTDBDataRegionAirGapConnector.java     | 208 +++++
 .../airgap/IoTDBSchemaRegionAirGapConnector.java   | 119 +++
 .../protocol/legacy/IoTDBLegacyPipeConnector.java  |  11 +-
 .../protocol/thrift/IoTDBThriftClientManager.java  |  39 -
 .../protocol/thrift/LeaderCacheManager.java        | 110 ---
 .../async/IoTDBDataRegionAsyncConnector.java       | 396 +++++++++
 .../async/IoTDBThriftAsyncClientManager.java       | 237 ------
 .../thrift/async/IoTDBThriftAsyncConnector.java    | 390 ---------
 .../PipeTransferTabletBatchEventHandler.java       |  23 +-
 .../PipeTransferTabletInsertNodeEventHandler.java  |   4 +-
 .../PipeTransferTabletInsertionEventHandler.java   |  18 +-
 .../handler/PipeTransferTabletRawEventHandler.java |   4 +-
 .../PipeTransferTsFileInsertionEventHandler.java   |  37 +-
 .../thrift/sync/IoTDBDataNodeSyncConnector.java    | 122 +++
 .../thrift/sync/IoTDBDataRegionSyncConnector.java  | 342 ++++++++
 .../thrift/sync/IoTDBSchemaRegionConnector.java    | 160 ++++
 .../thrift/sync/IoTDBThriftSyncClientManager.java  | 280 -------
 .../thrift/sync/IoTDBThriftSyncConnector.java      | 451 ----------
 .../protocol/websocket/WebSocketConnector.java     |   2 +-
 .../websocket/WebSocketConnectorServer.java        |   2 +-
 .../protocol/writeback/WriteBackConnector.java     |   6 +-
 .../apache/iotdb/db/pipe/event/EnrichedEvent.java  | 309 -------
 .../db/pipe/event/UserDefinedEnrichedEvent.java    |  14 +-
 .../event/common/heartbeat/PipeHeartbeatEvent.java |  23 +-
 .../pipe/event/common/row/PipeRemarkableRow.java   |  55 ++
 .../iotdb/db/pipe/event/common/row/PipeRow.java    |  18 +-
 .../db/pipe/event/common/row/PipeRowCollector.java |   2 +-
 .../schema/PipeSchemaRegionSnapshotEvent.java      |  64 ++
 .../schema/PipeSchemaRegionWritePlanEvent.java     |  85 ++
 .../schema/PipeSchemaSerializableEventType.java    |  77 ++
 .../tablet/PipeInsertNodeTabletInsertionEvent.java |  24 +-
 .../common/tablet/PipeRawTabletInsertionEvent.java |  29 +-
 .../tablet/TabletInsertionDataContainer.java       |  30 +-
 .../common/tsfile/PipeTsFileInsertionEvent.java    |  21 +-
 .../tsfile/TsFileInsertionDataContainer.java       |  25 +-
 .../db/pipe/event/realtime/PipeRealtimeEvent.java  |  24 +-
 .../event/realtime/PipeRealtimeEventFactory.java   |   9 +-
 .../executor/PipeAssignerSubtaskExecutor.java      |  30 -
 .../executor/PipeConnectorSubtaskExecutor.java     |   9 +-
 .../executor/PipeProcessorSubtaskExecutor.java     |   9 +-
 .../executor/PipeSubtaskExecutorManager.java       |  49 +-
 .../PipeDataRegionAssignerSubtaskExecutor.java     |  33 -
 .../PipeDataRegionConnectorSubtaskExecutor.java    |  33 -
 .../PipeDataRegionProcessorSubtaskExecutor.java    |  33 -
 .../PipeSchemaRegionAssignerSubtaskExecutor.java   |  31 -
 .../PipeSchemaRegionConnectorSubtaskExecutor.java  |  31 -
 .../PipeSchemaRegionProcessorSubtaskExecutor.java  |  31 -
 .../pipe/extractor/IoTDBDataRegionExtractor.java   | 412 ---------
 .../pipe/extractor/IoTDBSchemaRegionExtractor.java |  30 -
 .../dataregion/DataRegionListeningFilter.java      | 100 +++
 .../dataregion/IoTDBDataRegionExtractor.java       | 404 +++++++++
 .../PipeHistoricalDataRegionExtractor.java         |  29 +
 .../PipeHistoricalDataRegionTsFileExtractor.java   | 508 +++++++++++
 .../realtime/PipeRealtimeDataRegionExtractor.java  | 431 ++++++++++
 .../PipeRealtimeDataRegionFakeExtractor.java       |  75 ++
 .../PipeRealtimeDataRegionHybridExtractor.java     | 376 +++++++++
 .../PipeRealtimeDataRegionLogExtractor.java        | 163 ++++
 .../PipeRealtimeDataRegionTsFileExtractor.java     | 125 +++
 .../realtime/assigner/DisruptorQueue.java          | 123 +++
 .../assigner/DisruptorQueueExceptionHandler.java   |  44 +
 .../realtime/assigner/PipeDataRegionAssigner.java  | 130 +++
 .../dataregion/realtime/epoch/TsFileEpoch.java     | 101 +++
 .../realtime/epoch/TsFileEpochManager.java         |  81 ++
 .../realtime/epoch/TsFileEpochStateMigrator.java   |  25 +
 .../listener/PipeInsertionDataNodeListener.java    | 167 ++++
 .../listener/PipeTimePartitionListener.java        | 120 +++
 .../PipeHistoricalDataRegionExtractor.java         |  29 -
 .../PipeHistoricalDataRegionTsFileExtractor.java   | 497 -----------
 .../realtime/PipeRealtimeDataRegionExtractor.java  | 339 --------
 .../PipeRealtimeDataRegionFakeExtractor.java       |  75 --
 .../PipeRealtimeDataRegionHybridExtractor.java     | 424 ----------
 .../PipeRealtimeDataRegionLogExtractor.java        | 189 -----
 .../PipeRealtimeDataRegionTsFileExtractor.java     | 148 ----
 .../realtime/assigner/DisruptorQueue.java          | 123 ---
 .../assigner/DisruptorQueueExceptionHandler.java   |  44 -
 .../realtime/assigner/PipeDataRegionAssigner.java  | 124 ---
 .../pipe/extractor/realtime/epoch/TsFileEpoch.java | 101 ---
 .../realtime/epoch/TsFileEpochManager.java         |  81 --
 .../realtime/epoch/TsFileEpochStateMigrator.java   |  25 -
 .../listener/PipeInsertionDataNodeListener.java    | 165 ----
 .../listener/PipeTimePartitionListener.java        | 112 ---
 .../matcher/CachedSchemaPatternMatcher.java        | 215 -----
 .../realtime/matcher/PipeDataRegionMatcher.java    |  52 --
 .../schemaregion/IoTDBSchemaRegionExtractor.java   | 124 +++
 .../schemaregion/SchemaRegionListeningFilter.java  | 134 +++
 .../schemaregion/SchemaRegionListeningQueue.java   | 119 +++
 .../iotdb/db/pipe/metric/PipeAssignerMetrics.java  |   2 +-
 .../iotdb/db/pipe/metric/PipeDataNodeMetrics.java  |   1 +
 .../db/pipe/metric/PipeEventCommitMetrics.java     | 141 ----
 .../iotdb/db/pipe/metric/PipeExtractorMetrics.java |   4 +-
 .../matcher/CachedSchemaPatternMatcher.java        | 208 +++++
 .../pattern/matcher/PipeDataRegionMatcher.java     |  52 ++
 .../downsampling/DownSamplingProcessor.java        | 125 +--
 .../downsampling/PartialPathLastObjectCache.java   | 109 +++
 .../downsampling/PartialPathLastTimeCache.java     | 111 ---
 .../sdt/SwingingDoorTrendingFilter.java            | 145 ++++
 .../sdt/SwingingDoorTrendingSamplingProcessor.java | 201 +++++
 .../tumbling/TumblingTimeSamplingProcessor.java    | 135 +++
 .../progress/committer/PipeEventCommitManager.java | 110 ---
 .../progress/committer/PipeEventCommitter.java     |  98 ---
 .../pipe/receiver/PipePlanToStatementVisitor.java  |  64 +-
 .../receiver/PipeStatementExceptionVisitor.java    |  79 ++
 .../receiver/PipeStatementTSStatusVisitor.java     | 195 +++++
 .../pipe/receiver/airgap/IoTDBAirGapReceiver.java  |  22 +-
 .../legacy/IoTDBLegacyPipeReceiverAgent.java       |   6 +-
 .../receiver/legacy/loader/DeletionLoader.java     |   2 +-
 .../pipe/receiver/legacy/loader/TsFileLoader.java  |   2 +-
 .../receiver/thrift/IoTDBDataNodeReceiver.java     | 335 ++++++++
 .../thrift/IoTDBDataNodeReceiverAgent.java         |  32 +
 .../pipe/receiver/thrift/IoTDBThriftReceiver.java  |  36 -
 .../receiver/thrift/IoTDBThriftReceiverAgent.java  |  89 --
 .../receiver/thrift/IoTDBThriftReceiverV1.java     | 695 ----------------
 .../db/pipe/resource/PipeResourceManager.java      |   8 +
 .../db/pipe/resource/memory/PipeMemoryManager.java |   3 +-
 .../PipeDataNodeSnapshotResourceManager.java       |  38 +
 .../iotdb/db/pipe/task/PipeDataNodeTask.java       |   9 +-
 .../db/pipe/task/builder/PipeDataNodeBuilder.java  |  44 +-
 .../pipe/task/builder/PipeDataNodeTaskBuilder.java |  26 +-
 .../builder/PipeDataNodeTaskDataRegionBuilder.java |  38 -
 .../PipeDataNodeTaskSchemaRegionBuilder.java       |  38 -
 .../pipe/task/connection/PipeEventCollector.java   |  17 +-
 .../db/pipe/task/stage/PipeTaskConnectorStage.java |  11 +-
 .../db/pipe/task/stage/PipeTaskExtractorStage.java |  12 +-
 .../db/pipe/task/stage/PipeTaskProcessorStage.java |  34 +-
 .../db/pipe/task/subtask/PipeDataNodeSubtask.java  | 166 ----
 .../subtask/connector/PipeConnectorSubtask.java    | 211 +----
 .../connector/PipeConnectorSubtaskLifeCycle.java   |  14 +-
 .../connector/PipeConnectorSubtaskManager.java     |  30 +-
 .../subtask/processor/PipeProcessorSubtask.java    |  20 +-
 .../iotdb/db/protocol/client/ConfigNodeClient.java |  18 +-
 .../db/protocol/client/DataNodeInternalClient.java |   2 +-
 .../iotdb/db/protocol/mqtt/MPPPublishHandler.java  |   2 +-
 .../rest/v1/impl/GrafanaApiServiceImpl.java        |   6 +-
 .../protocol/rest/v1/impl/RestApiServiceImpl.java  |   6 +-
 .../rest/v2/impl/GrafanaApiServiceImpl.java        |   6 +-
 .../protocol/rest/v2/impl/RestApiServiceImpl.java  |   8 +-
 .../protocol/thrift/impl/ClientRPCServiceImpl.java | 143 ++--
 .../impl/DataNodeInternalRPCServiceImpl.java       |  66 +-
 .../db/queryengine/common/MPPQueryContext.java     | 105 ++-
 .../common/header/ColumnHeaderConstant.java        |   1 +
 .../execution/aggregation/Accumulator.java         |   9 +
 .../execution/aggregation/AvgAccumulator.java      |   5 +
 .../aggregation/FirstValueAccumulator.java         |   5 +
 .../aggregation/LastValueAccumulator.java          |   5 +
 .../aggregation/TimeDurationAccumulator.java       |   5 +
 .../execution/aggregation/UDAFAccumulator.java     |   7 +-
 .../execution/exchange/MPPDataExchangeService.java |   4 +-
 .../execution/executor/RegionWriteExecutor.java    |  50 +-
 .../fragment/FragmentInstanceContext.java          |  86 +-
 .../fragment/FragmentInstanceExecution.java        | 184 +++-
 .../fragment/FragmentInstanceManager.java          |  34 +-
 .../execution/fragment/QueryStatistics.java        |  38 +
 .../execution/operator/ExplainAnalyzeOperator.java | 222 +++++
 .../queryengine/execution/operator/Operator.java   |  15 +-
 .../execution/operator/OperatorContext.java        |  48 ++
 .../operator/process/AbstractIntoOperator.java     |   2 +-
 .../process/AggregationMergeSortOperator.java      | 286 +++++++
 .../operator/process/ColumnInjectOperator.java     |   2 +-
 .../operator/process/DeviceViewOperator.java       |   2 +-
 .../operator/process/FilterAndProjectOperator.java |   4 +
 .../execution/operator/process/LimitOperator.java  |   2 +-
 .../operator/process/MergeSortOperator.java        |   3 +-
 .../execution/operator/process/OffsetOperator.java |   2 +-
 .../operator/process/SingleDeviceViewOperator.java |   2 +-
 .../execution/operator/process/SortOperator.java   |  37 +-
 .../execution/operator/process/TopKOperator.java   |   2 +-
 .../process/join/FullOuterTimeJoinOperator.java    |   3 +-
 .../process/join/HorizontallyConcatOperator.java   |   3 +-
 .../process/join/InnerTimeJoinOperator.java        |   3 +-
 .../process/join/LeftOuterTimeJoinOperator.java    |   3 +-
 .../process/last/LastQueryMergeOperator.java       |   5 +-
 .../operator/schema/source/DeviceSchemaSource.java |   4 +-
 .../schema/source/LogicalViewSchemaSource.java     |   9 +-
 .../schema/source/TimeSeriesSchemaSource.java      |   4 +-
 .../operator/sink/IdentitySinkOperator.java        |   6 +-
 .../operator/sink/ShuffleHelperOperator.java       |   2 +-
 .../operator/source/AlignedSeriesScanOperator.java |   2 +-
 .../operator/source/SeriesScanOperator.java        |   2 +-
 .../execution/schedule/DriverScheduler.java        |  19 +-
 .../iotdb/db/queryengine/plan/Coordinator.java     | 118 +--
 .../db/queryengine/plan/analyze/Analysis.java      |  55 +-
 .../queryengine/plan/analyze/AnalyzeVisitor.java   | 303 ++++---
 .../db/queryengine/plan/analyze/IAnalysis.java     |  44 +
 .../plan/analyze/LoadTsfileAnalyzer.java           |  12 +-
 .../analyze/schema/AutoCreateSchemaExecutor.java   |   2 +-
 .../analyze/schema/ClusterSchemaFetchExecutor.java |   4 +-
 .../plan/execution/IQueryExecution.java            |   3 +-
 .../queryengine/plan/execution/QueryExecution.java | 224 ++---
 .../plan/execution/config/ConfigExecution.java     |  32 +-
 .../config/executor/ClusterConfigTaskExecutor.java |  88 +-
 .../config/executor/IConfigTaskExecutor.java       |  12 +-
 .../db/queryengine/plan/parser/ASTVisitor.java     |  10 +-
 .../db/queryengine/plan/planner/IPlanner.java      |  54 ++
 .../plan/planner/LocalExecutionPlanner.java        |   2 +-
 .../plan/planner/LogicalPlanVisitor.java           |  22 +-
 .../queryengine/plan/planner/LogicalPlanner.java   |   7 +-
 .../plan/planner/OperatorTreeGenerator.java        |  94 ++-
 .../queryengine/plan/planner/TreeModelPlanner.java | 197 +++++
 .../planner/distribution/ExchangeNodeAdder.java    |  18 +
 .../SimpleFragmentParallelPlanner.java             |   6 +-
 .../plan/planner/distribution/SourceRewriter.java  | 196 ++++-
 .../distribution/WriteFragmentParallelPlanner.java |   3 +-
 .../plan/planner/plan/DistributedQueryPlan.java    |   8 +-
 .../plan/planner/plan/FragmentInstance.java        |  35 +-
 .../plan/planner/plan/PlanFragment.java            |   6 +-
 .../db/queryengine/plan/planner/plan/SubPlan.java  |   2 +-
 .../plan/planner/plan/TimePredicate.java           |  39 +
 .../plan/planner/plan/TreeModelTimePredicate.java  |  64 ++
 .../plan/planner/plan/node/ExplainAnalyzeNode.java | 110 +++
 .../plan/planner/plan/node/PlanNode.java           |   9 +
 .../plan/planner/plan/node/PlanNodeType.java       |  26 +-
 .../plan/planner/plan/node/PlanVisitor.java        |  23 +-
 .../plan/node/load/LoadTsFilePieceNode.java        |   5 +
 .../node/metedata/read/CountSchemaMergeNode.java   |   5 +
 .../plan/node/metedata/read/DevicesCountNode.java  |   5 +
 .../node/metedata/read/DevicesSchemaScanNode.java  |   5 +
 .../metedata/read/LevelTimeSeriesCountNode.java    |   5 +
 .../metedata/read/LogicalViewSchemaScanNode.java   |   5 +
 .../read/NodeManagementMemoryMergeNode.java        |   5 +
 .../node/metedata/read/NodePathsConvertNode.java   |   5 +
 .../node/metedata/read/NodePathsCountNode.java     |   5 +
 .../metedata/read/NodePathsSchemaScanNode.java     |   5 +
 .../metedata/read/PathsUsingTemplateScanNode.java  |   5 +
 .../node/metedata/read/SchemaFetchMergeNode.java   |   5 +
 .../node/metedata/read/SchemaFetchScanNode.java    |   5 +
 .../node/metedata/read/SchemaQueryMergeNode.java   |   5 +
 .../metedata/read/SchemaQueryOrderByHeatNode.java  |   5 +
 .../node/metedata/read/TimeSeriesCountNode.java    |   5 +
 .../metedata/read/TimeSeriesSchemaScanNode.java    |   5 +
 .../node/metedata/write/ActivateTemplateNode.java  |   5 +
 .../node/metedata/write/AlterTimeSeriesNode.java   |   9 +-
 .../metedata/write/BatchActivateTemplateNode.java  |   5 +
 .../write/ConstructSchemaBlackListNode.java        |   5 +
 .../write/CreateAlignedTimeSeriesNode.java         |   7 +-
 .../metedata/write/CreateMultiTimeSeriesNode.java  |   7 +-
 .../node/metedata/write/CreateTimeSeriesNode.java  |   5 +
 .../metedata/write/DeactivateTemplateNode.java     |   5 +
 .../node/metedata/write/DeleteTimeSeriesNode.java  |   5 +
 .../write/InternalBatchActivateTemplateNode.java   |   5 +
 .../write/InternalCreateMultiTimeSeriesNode.java   |   5 +
 .../write/InternalCreateTimeSeriesNode.java        |   5 +
 .../metedata/write/PreDeactivateTemplateNode.java  |   5 +
 .../write/RollbackPreDeactivateTemplateNode.java   |   5 +
 .../write/RollbackSchemaBlackListNode.java         |   5 +
 .../metedata/write/view/AlterLogicalViewNode.java  |   5 +
 .../view/ConstructLogicalViewBlackListNode.java    |   5 +
 .../metedata/write/view/CreateLogicalViewNode.java |   5 +
 .../metedata/write/view/DeleteLogicalViewNode.java |   5 +
 .../view/RollbackLogicalViewBlackListNode.java     |   5 +
 .../node/pipe/PipeEnrichedConfigSchemaNode.java    | 161 ----
 .../plan/node/pipe/PipeEnrichedDeleteDataNode.java |   7 +-
 .../plan/node/pipe/PipeEnrichedInsertNode.java     |  11 +-
 .../node/pipe/PipeEnrichedNonWritePlanNode.java    | 166 ++++
 .../plan/node/pipe/PipeEnrichedWritePlanNode.java  | 196 +++++
 .../node/pipe/PipeEnrichedWriteSchemaNode.java     | 192 -----
 .../plan/node/pipe/PipeOperateSchemaQueueNode.java | 122 +++
 .../node/process/AggregationMergeSortNode.java     |  56 +-
 .../planner/plan/node/process/AggregationNode.java |   5 +
 .../plan/node/process/ColumnInjectNode.java        |   5 +
 .../planner/plan/node/process/DeviceMergeNode.java |   5 +
 .../plan/node/process/DeviceViewIntoNode.java      |   5 +
 .../planner/plan/node/process/DeviceViewNode.java  |  11 +-
 .../planner/plan/node/process/ExchangeNode.java    |   5 +
 .../plan/planner/plan/node/process/FillNode.java   |   5 +
 .../plan/planner/plan/node/process/FilterNode.java |   5 +
 .../plan/node/process/GroupByLevelNode.java        |   5 +
 .../planner/plan/node/process/GroupByTagNode.java  |   5 +
 .../plan/node/process/HorizontallyConcatNode.java  |   5 +
 .../plan/planner/plan/node/process/IntoNode.java   |   5 +
 .../plan/planner/plan/node/process/LimitNode.java  |   5 +
 .../planner/plan/node/process/MergeSortNode.java   |   5 +
 .../plan/planner/plan/node/process/OffsetNode.java |   5 +
 .../planner/plan/node/process/ProjectNode.java     |   5 +
 .../plan/node/process/SingleDeviceViewNode.java    |   5 +
 .../node/process/SlidingWindowAggregationNode.java |   5 +
 .../plan/planner/plan/node/process/SortNode.java   |   5 +
 .../plan/planner/plan/node/process/TopKNode.java   |   5 +
 .../planner/plan/node/process/TransformNode.java   |   5 +
 .../plan/node/process/join/InnerTimeJoinNode.java  |   5 +
 .../node/process/last/LastQueryCollectNode.java    |   5 +
 .../plan/node/process/last/LastQueryMergeNode.java |   5 +
 .../plan/node/process/last/LastQueryNode.java      |   5 +
 .../node/process/last/LastQueryTransformNode.java  |   5 +
 .../planner/plan/node/sink/IdentitySinkNode.java   |   5 +
 .../planner/plan/node/sink/ShuffleSinkNode.java    |   5 +
 .../plan/node/source/AlignedLastQueryScanNode.java |   5 +
 .../source/AlignedSeriesAggregationScanNode.java   |   5 +
 .../plan/node/source/AlignedSeriesScanNode.java    |  10 +
 .../plan/node/source/LastQueryScanNode.java        |   5 +
 .../node/source/SeriesAggregationScanNode.java     |   5 +
 .../planner/plan/node/source/SeriesScanNode.java   |   5 +
 .../planner/plan/node/source/ShowQueriesNode.java  |   5 +
 .../planner/plan/node/write/DeleteDataNode.java    |   5 +
 .../plan/node/write/InsertMultiTabletsNode.java    |   5 +
 .../planner/plan/node/write/InsertRowNode.java     |   5 +
 .../planner/plan/node/write/InsertRowsNode.java    |   5 +
 .../plan/node/write/InsertRowsOfOneDeviceNode.java |   5 +
 .../planner/plan/node/write/InsertTabletNode.java  |   5 +
 .../plan/parameter/AggregationDescriptor.java      |  13 +-
 .../scheduler/FragmentInstanceDispatcherImpl.java  |   8 +-
 .../scheduler/load/LoadTsFileDispatcherImpl.java   |   7 +-
 .../plan/statement/StatementVisitor.java           |   5 +
 .../crud/InsertMultiTabletsStatement.java          |   2 +-
 .../metadata/CreateMultiTimeSeriesStatement.java   |  22 +
 .../metadata/view/CreateLogicalViewStatement.java  |  12 +-
 .../statement/sys/ExplainAnalyzeStatement.java     |  60 ++
 .../FragmentInstanceStatisticsDrawer.java          | 401 +++++++++
 .../statistics/QueryPlanStatistics.java            |  77 ++
 .../statistics/QueryStatisticsFetcher.java         |  97 +++
 .../statistics/SpecifiedInfoMergerFactory.java     |  54 ++
 .../db/queryengine/statistics/StatisticLine.java   |  38 +
 .../statistics/StatisticsMergeUtil.java            |  94 +++
 .../dag/udf/UDAFInformationInferrer.java           |   6 +-
 .../dag/udf/UDFParametersFactory.java              |  54 ++
 .../transformation/dag/udf/UDTFExecutor.java       |   6 +-
 .../dag/udf/UDTFInformationInferrer.java           |   7 +-
 .../apache/iotdb/db/schemaengine/SchemaEngine.java |   4 +
 .../schemaregion/SchemaRegionLoader.java           |  14 +
 .../schemaregion/impl/SchemaRegionMemoryImpl.java  |   7 +-
 .../schemaregion/mtree/impl/mem/MemMTreeStore.java |   1 +
 .../impl/mem/snapshot/MemMTreeSnapshotUtil.java    |   4 +-
 .../mnode/container/CachedMNodeContainer.java      |   4 +-
 .../java/org/apache/iotdb/db/service/DataNode.java |  34 +-
 .../db/service/DataNodeInternalRPCService.java     |   4 +-
 .../apache/iotdb/db/service/IoTDBShutdownHook.java |   2 +-
 .../org/apache/iotdb/db/service/RPCService.java    |   8 +-
 .../metrics/IoTDBInternalLocalReporter.java        |   3 +-
 .../iotdb/db/storageengine/StorageEngine.java      |   2 +-
 .../db/storageengine/buffer/BloomFilterCache.java  |   6 +-
 .../iotdb/db/storageengine/buffer/ChunkCache.java  |   6 +-
 .../buffer/TimeSeriesMetadataCache.java            |  10 +-
 .../db/storageengine/dataregion/DataRegion.java    |  74 +-
 .../execute/task/InnerSpaceCompactionTask.java     |   7 +-
 .../task/InsertionCrossSpaceCompactionTask.java    |   2 +-
 .../compaction/io/CompactionTsFileInput.java       | 104 +++
 .../compaction/io/CompactionTsFileReader.java      |   1 +
 .../compaction/repair/RepairDataFileScanUtil.java  |   8 +-
 .../repair/RepairTimePartitionScanTask.java        |   7 +-
 .../schedule/CompactionScheduleTaskManager.java    |  13 +-
 .../schedule/CompactionScheduleTaskWorker.java     |  13 +-
 .../compaction/schedule/CompactionScheduler.java   |   6 +-
 .../estimator/AbstractCompactionEstimator.java     |   5 +-
 .../estimator/AbstractCrossSpaceEstimator.java     |   8 +
 .../estimator/AbstractInnerSpaceEstimator.java     |  13 +
 .../impl/RewriteCrossSpaceCompactionSelector.java  |   7 +-
 .../dataregion/memtable/TsFileProcessor.java       |   5 +-
 .../dataregion/tsfile/TsFileManager.java           |  10 +-
 .../dataregion/tsfile/TsFileResource.java          |  23 +-
 .../tsfile/timeindex/DeviceTimeIndex.java          |   7 +-
 .../dataregion/tsfile/timeindex/FileTimeIndex.java |   5 +-
 .../storageengine/dataregion/wal/WALManager.java   |  26 +-
 .../dataregion/wal/buffer/WALBuffer.java           |   8 +-
 .../dataregion/wal/buffer/WALEntry.java            |   2 +-
 .../wal/checkpoint/CheckpointManager.java          |   4 +-
 .../storageengine/rescon/disk/FolderManager.java   |   1 +
 .../rescon/memory/TimePartitionManager.java        |   4 +-
 .../rescon/quotas/DataNodeSpaceQuotaManager.java   |   2 +-
 .../db/tools/schema/SRStatementGenerator.java      | 355 ++++++++
 .../tools/schema/SchemaRegionSnapshotParser.java   | 175 ++++
 .../db/trigger/executor/TriggerFireVisitor.java    |   2 +-
 .../org/apache/iotdb/db/utils/CommonUtils.java     |  78 ++
 .../apache/iotdb/db/utils/sort/DiskSpiller.java    |   4 +
 .../schemaRegion/SchemaRegionBasicTest.java        |   1 +
 .../schemaRegion/SchemaRegionTestUtil.java         |   1 +
 .../schemaRegion/SchemaStatisticsTest.java         |   1 +
 .../agent/plugin/PipeDataNodePluginAgentTest.java  | 123 +++
 .../agent/plugin/PipePluginDataNodeAgentTest.java  | 123 ---
 .../iotdb/db/pipe/connector/PipeConnectorTest.java |  12 +-
 .../connector/PipeDataNodeThriftRequestTest.java   | 156 ++--
 .../iotdb/db/pipe/connector/PipeReceiverTest.java  |  20 +-
 .../pipe/event/PipeTabletInsertionEventTest.java   |  43 +-
 .../event/TsFileInsertionDataContainerTest.java    | 493 +++++++----
 .../PipeConnectorSubtaskExecutorTest.java          |   4 +-
 .../PipeProcessorSubtaskExecutorTest.java          |   4 +-
 .../extractor/CachedSchemaPatternMatcherTest.java  | 188 -----
 .../extractor/IoTDBDataRegionExtractorTest.java    |   1 +
 .../db/pipe/extractor/PipeRealtimeExtractTest.java |  10 +-
 .../extractor/SchemaRegionListeningQueueTest.java  | 114 +++
 .../pattern/CachedSchemaPatternMatcherTest.java    | 194 +++++
 .../db/pipe/pattern/IoTDBPipePatternTest.java      | 110 +++
 .../db/pipe/pattern/PrefixPipePatternTest.java     | 105 +++
 .../PipeDataNodeSnapshotResourceManagerTest.java   | 107 +++
 .../fragment/FragmentInstanceExecutionTest.java    |   4 +-
 .../execution/operator/MergeSortOperatorTest.java  |   3 +-
 .../execution/operator/OperatorMemoryTest.java     |   8 +-
 .../schedule/DefaultDriverSchedulerTest.java       |  23 +
 .../plan/planner/FragmentInstanceSerdeTest.java    |   3 +-
 .../distribution/AggregationDistributionTest.java  |  26 +-
 .../AlignByDeviceOrderByLimitOffsetTest.java       | 123 ++-
 .../planner/distribution/AlignedByDeviceTest.java  | 563 ++-----------
 .../planner/node/PlanNodeDeserializeHelper.java    |   1 +
 .../pipe/PipeEnrichedDeleteDataNodeSerdeTest.java  |  70 ++
 .../node/pipe/PipeEnrichedInsertNodeSerdeTest.java |  80 ++
 .../PipeEnrichedNonWritePlanNodeSerdeTest.java     |  55 ++
 .../pipe/PipeEnrichedWritePlanNodeSerdeTest.java   |  53 ++
 .../node/process/AggregationNodeSerdeTest.java     |   1 +
 .../TsFileResourceProgressIndexTest.java           |  18 +-
 .../InsertionCrossSpaceCompactionSelectorTest.java |   8 +-
 .../rescon/memory/ResourceManagerTest.java         |   2 +-
 .../db/utils/SchemaRegionSnapshotParserTest.java   | 694 +++++++++++++++
 .../datanode1conf/iotdb-common.properties          |   1 -
 .../datanode3conf/iotdb-common.properties          |   1 -
 .../resources/conf/iotdb-common.properties         |   6 +-
 .../apache/iotdb/commons/client/ClientManager.java |   6 +-
 .../client/sync/SyncConfigNodeIServiceClient.java  |   4 +-
 .../sync/SyncDataNodeInternalServiceClient.java    |   4 +-
 .../SyncDataNodeMPPDataExchangeServiceClient.java  |   4 +-
 .../iotdb/commons/concurrent/ThreadName.java       |  16 +-
 .../apache/iotdb/commons/conf/IoTDBConstant.java   |   2 +
 .../iotdb/commons/consensus/ConsensusGroupId.java  |   6 +-
 .../commons/consensus/index/ProgressIndex.java     |  58 +-
 .../commons/consensus/index/ProgressIndexType.java |   4 +
 .../consensus/index/impl/HybridProgressIndex.java  |   8 +-
 .../consensus/index/impl/IoTProgressIndex.java     |   2 +-
 .../consensus/index/impl/MetaProgressIndex.java    | 180 ++++
 .../consensus/index/impl/MinimumProgressIndex.java |   2 +-
 .../consensus/index/impl/RecoverProgressIndex.java |   4 +-
 .../consensus/index/impl/SimpleProgressIndex.java  |   2 +-
 ...meConnectorRetryTimesConfigurableException.java |  35 +
 .../commons/pipe/agent/task/PipeTaskAgent.java     | 265 ++++--
 .../config/constant/PipeConnectorConstant.java     |  30 +
 .../config/constant/PipeExtractorConstant.java     |  22 +-
 .../config/constant/PipeProcessorConstant.java     |  17 +-
 .../pipe/connector/PipeReceiverStatusHandler.java  | 198 +++++
 .../pipe/connector/client/IoTDBClientManager.java  |  37 +
 .../pipe/connector/client/IoTDBSyncClient.java     |  86 ++
 .../connector/client/IoTDBSyncClientManager.java   | 239 ++++++
 .../client/IoTDBThriftSyncConnectorClient.java     |  86 --
 .../payload/airgap/AirGapELanguageConstant.java    |  34 +
 .../payload/airgap/AirGapOneByteResponse.java      |  30 +
 .../airgap/AirGapPseudoTPipeTransferRequest.java   |  24 +
 .../request/IoTDBConnectorRequestVersion.java      |  35 -
 .../connector/payload/request/PipeRequestType.java |  71 --
 .../request/PipeTransferSnapshotPieceReq.java      | 132 ---
 .../request/PipeTransferSnapshotSealReq.java       | 119 ---
 .../payload/request/TransferConfigPlanReq.java     |  24 -
 .../response/PipeTransferSnapshotPieceResp.java    |  81 --
 .../common/PipeTransferHandshakeConstant.java      |  30 +
 .../request/IoTDBConnectorRequestVersion.java      |  35 +
 .../payload/thrift/request/PipeRequestType.java    |  77 ++
 .../thrift/request/PipeTransferFilePieceReq.java   | 128 +++
 .../thrift/request/PipeTransferFileSealReq.java    | 114 +++
 .../thrift/request/PipeTransferHandshakeV1Req.java | 103 +++
 .../thrift/request/PipeTransferHandshakeV2Req.java | 119 +++
 .../thrift/response/PipeTransferFilePieceResp.java | 105 +++
 .../connector/protocol/IoTDBAirGapConnector.java   | 237 ++++++
 .../pipe/connector/protocol/IoTDBConnector.java    | 229 +++++
 .../connector/protocol/IoTDBSslSyncConnector.java  | 137 +++
 .../ConcurrentIterableLinkedQueue.java             | 345 --------
 .../options/PipeInclusionOptions.java              | 191 +++++
 .../queue/ConcurrentIterableLinkedQueue.java       | 377 +++++++++
 .../listening/AbstractPipeListeningQueue.java      | 173 ++++
 .../AbstractSerializableListeningQueue.java        | 196 +++++
 .../queue/serializer/PlainQueueSerializer.java     |  80 ++
 .../queue/serializer/QueueSerializer.java          |  42 +
 .../queue/serializer/QueueSerializerType.java      |  49 ++
 .../iotdb/commons/pipe/event/EnrichedEvent.java    | 331 ++++++++
 .../commons/pipe/event/PipeSnapshotEvent.java      | 114 +++
 .../commons/pipe/event/PipeWritePlanEvent.java     |  89 ++
 .../commons/pipe/event/SerializableEvent.java      |  32 +
 .../execution/executor/PipeSubtaskExecutor.java    |   2 +-
 .../commons/pipe/extractor/IoTDBExtractor.java     | 116 +++
 .../extractor/IoTDBNonDataRegionExtractor.java     | 125 +++
 .../pipe/metric/PipeEventCommitMetrics.java        | 144 ++++
 .../commons/pipe/pattern/IoTDBPipePattern.java     | 113 +++
 .../iotdb/commons/pipe/pattern/PipePattern.java    | 133 +++
 .../commons/pipe/pattern/PrefixPipePattern.java    | 121 +++
 .../pipe/plugin/builtin/BuiltinPipePlugin.java     |  10 +-
 .../builtin/connector/iotdb/IoTDBConnector.java    | 177 ----
 .../connector/iotdb/thrift/IoTDBMetaConnector.java | 263 ------
 .../iotdb/thrift/IoTDBSchemaRegionConnector.java   |  22 -
 .../extractor/iotdb/IoTDBMetaExtractor.java        | 150 ----
 .../downsampling/DownSamplingProcessor.java        |  30 -
 .../SwingingDoorTrendingSamplingProcessor.java     |  30 +
 .../TumblingTimeSamplingProcessor.java             |  30 +
 .../progress/committer/PipeEventCommitManager.java | 109 +++
 .../progress/committer/PipeEventCommitter.java     |  99 +++
 .../commons/pipe/receiver/IoTDBFileReceiver.java   | 494 +++++++++++
 .../iotdb/commons/pipe/receiver/IoTDBReceiver.java |  33 +
 .../commons/pipe/receiver/IoTDBReceiverAgent.java  |  97 +++
 .../pipe/resource/PipeSnapshotResourceManager.java | 160 ++++
 .../iotdb/commons/pipe/task/PipeTaskManager.java   |  59 +-
 .../iotdb/commons/pipe/task/meta/PipeMeta.java     |  13 +-
 .../commons/pipe/task/meta/PipeRuntimeMeta.java    | 120 ++-
 .../pipe/task/meta/PipeRuntimeMetaVersion.java     |   9 +-
 .../commons/pipe/task/meta/PipeStaticMeta.java     |  25 +-
 .../iotdb/commons/pipe/task/meta/PipeTaskMeta.java |  52 +-
 .../commons/pipe/task/stage/PipeTaskStage.java     |  16 +-
 .../task/subtask/PipeAbstractConnectorSubtask.java | 205 +++++
 .../pipe/task/subtask/PipeReportableSubtask.java   | 162 ++++
 .../commons/pipe/task/subtask/PipeSubtask.java     |  29 +-
 .../service/AbstractThriftServiceThread.java       |  18 +-
 .../apache/iotdb/commons/service/ServiceType.java  |   3 +-
 .../iotdb/commons/service/ThriftServiceThread.java |  25 +-
 .../org/apache/iotdb/commons/utils/TestOnly.java   |   2 +-
 .../iotdb/commons/utils/TimePartitionUtils.java    |   7 +-
 .../client/mock/MockInternalRPCService.java        |   4 +-
 .../ConcurrentIterableLinkedQueueTest.java         |  36 +-
 .../commons/pipe/task/meta/PipeMetaDeSerTest.java  |  43 +-
 iotdb-core/tsfile/pom.xml                          |   8 -
 .../StopReadTsFileByInterruptException.java        |  24 +
 .../iotdb/tsfile/file/header/ChunkHeader.java      |  13 +-
 .../iotdb/tsfile/file/metadata/ChunkMetadata.java  |  10 +-
 .../tsfile/file/metadata/TimeseriesMetadata.java   |  16 +-
 .../file/metadata/statistics/BinaryStatistics.java |  11 +-
 .../metadata/statistics/BooleanStatistics.java     |   7 +-
 .../file/metadata/statistics/DoubleStatistics.java |   7 +-
 .../file/metadata/statistics/FloatStatistics.java  |   7 +-
 .../metadata/statistics/IntegerStatistics.java     |   7 +-
 .../file/metadata/statistics/LongStatistics.java   |   7 +-
 .../file/metadata/statistics/Statistics.java       |   2 +-
 .../file/metadata/statistics/TimeStatistics.java   |   7 +-
 .../iotdb/tsfile/read/TsFileSequenceReader.java    |  37 +
 .../org/apache/iotdb/tsfile/read/common/Chunk.java |  11 +-
 .../iotdb/tsfile/read/common/block/TsBlock.java    |   6 +-
 .../read/common/block/column/BinaryColumn.java     |   9 +-
 .../common/block/column/BinaryColumnBuilder.java   |  12 +-
 .../read/common/block/column/BooleanColumn.java    |   7 +-
 .../common/block/column/BooleanColumnBuilder.java  |   7 +-
 .../read/common/block/column/DoubleColumn.java     |   9 +-
 .../common/block/column/DoubleColumnBuilder.java   |   7 +-
 .../read/common/block/column/FloatColumn.java      |  10 +-
 .../common/block/column/FloatColumnBuilder.java    |   7 +-
 .../tsfile/read/common/block/column/IntColumn.java |  10 +-
 .../read/common/block/column/IntColumnBuilder.java |   7 +-
 .../read/common/block/column/LongColumn.java       |  10 +-
 .../common/block/column/LongColumnBuilder.java     |   7 +-
 .../read/common/block/column/NullColumn.java       |   5 +-
 .../block/column/RunLengthEncodedColumn.java       |   5 +-
 .../read/common/block/column/TimeColumn.java       |   8 +-
 .../common/block/column/TimeColumnBuilder.java     |   7 +-
 .../iotdb/tsfile/read/reader/LocalTsFileInput.java |   6 +-
 .../org/apache/iotdb/tsfile/utils/BloomFilter.java |   9 +-
 .../iotdb/tsfile/utils/RamUsageEstimator.java      | 926 ---------------------
 .../chunk/NonAlignedChunkGroupWriterImpl.java      |   2 +-
 .../apache/iotdb/tsfile/write/record/Tablet.java   |   4 +-
 .../apache/iotdb/tsfile/read/TsFileReaderTest.java |   1 +
 .../org/apache/iotdb/tsfile/write/PerfTest.java    |   2 +-
 .../iotdb/tsfile/write/record/TabletTest.java      |   3 +-
 iotdb-doap.rdf                                     |  10 +-
 .../src/main/thrift/confignode.thrift              |  81 +-
 .../thrift-datanode/src/main/thrift/client.thrift  |  15 +
 .../src/main/thrift/datanode.thrift                | 205 +++--
 library-udf/pom.xml                                |   5 +
 .../apache/iotdb/library/dprofile/UDTFSample.java  |   2 +-
 .../library/frequency/UDFEnvelopeAnalysis.java     | 248 ++++++
 .../org/apache/iotdb/library/UDFEnvelopeTest.java  | 121 +++
 pom.xml                                            |  32 +-
 895 files changed, 43676 insertions(+), 24424 deletions(-)