This is an automated email from the ASF dual-hosted git repository. xingtanzjr pushed a commit to branch xingtanzjr/agg_groupbytime in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c324f80b01d41ee841f931dfd29d83334e2544af Merge: b72a90a775 b940a652dd Author: Jinrui.Zhang <[email protected]> AuthorDate: Tue May 31 17:51:28 2022 +0800 Merge branch 'master' into xingtanzjr/agg_groupbytime .../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 21 +- .../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4 | 4 + .../resources/conf/iotdb-confignode.properties | 12 +- .../confignode/client/AsyncDataNodeClientPool.java | 19 +- ...Handler.java => FunctionManagementHandler.java} | 6 +- .../iotdb/confignode/conf/ConfigNodeConf.java | 27 +- .../confignode/conf/ConfigNodeDescriptor.java | 9 +- .../confignode/conf/ConfigNodeStartupCheck.java | 83 ++-- .../consensus/request/ConfigRequest.java | 10 +- .../consensus/request/ConfigRequestType.java | 4 +- ...itionReq.java => GetNodePathsPartitionReq.java} | 31 +- .../DropFunctionReq.java} | 42 +-- .../iotdb/confignode/manager/ConfigManager.java | 51 +-- .../apache/iotdb/confignode/manager/Manager.java | 11 +- .../iotdb/confignode/manager/NodeManager.java | 9 +- .../iotdb/confignode/manager/PartitionManager.java | 23 +- .../iotdb/confignode/manager/UDFManager.java | 59 ++- .../confignode/persistence/ClusterSchemaInfo.java | 15 + .../iotdb/confignode/persistence/UDFInfo.java | 25 +- .../executor/ConfigRequestExecutor.java | 58 +-- .../thrift/ConfigNodeRPCServiceProcessor.java | 36 +- .../consensus/request/ConfigRequestSerDeTest.java | 12 +- .../iotdb/confignode/persistence/NodeInfoTest.java | 3 +- .../confignode/persistence/PartitionInfoTest.java | 3 +- .../thrift/ConfigNodeRPCServiceProcessorTest.java | 106 +++++- .../confignode1conf/iotdb-confignode.properties | 4 +- .../confignode2conf/iotdb-confignode.properties | 3 +- .../confignode3conf/iotdb-confignode.properties | 3 +- consensus/README.md | 4 +- consensus/pom.xml | 5 + .../apache/iotdb/consensus/ConsensusFactory.java | 6 + .../org/apache/iotdb/consensus/common/Peer.java | 15 + .../common/request/IndexedConsensusRequest.java | 88 +++++ .../common/response/ConsensusReadResponse.java | 6 +- .../common/response/ConsensusResponse.java | 2 +- .../exception/IllegalPeerEndpointException.java | 9 +- .../exception/IllegalPeerNumException.java | 4 +- .../MultiLeaderConsensus.java} | 93 +++-- .../multileader/MultiLeaderServerImpl.java | 186 +++++++++ .../client/AsyncMultiLeaderServiceClient.java | 145 +++++++ .../multileader/client/DispatchLogHandler.java | 100 +++++ .../client/MultiLeaderConsensusClientPool.java | 54 +++ .../conf/MultiLeaderConsensusConfig.java | 40 ++ .../multileader/logdispatcher/IndexController.java | 150 ++++++++ .../multileader/logdispatcher/LogDispatcher.java | 299 +++++++++++++++ .../multileader/logdispatcher/PendingBatch.java | 76 ++++ .../multileader/logdispatcher/SyncStatus.java | 89 +++++ .../multileader/service/MultiLeaderRPCService.java | 95 +++++ .../service/MultiLeaderRPCServiceHandler.java} | 34 +- .../service/MultiLeaderRPCServiceMBean.java | 4 +- .../service/MultiLeaderRPCServiceProcessor.java | 82 ++++ .../{ => multileader}/wal/ConsensusReqReader.java | 6 +- .../wal/GetConsensusReqReaderPlan.java} | 15 +- .../apache/iotdb/consensus/ratis/RatisClient.java | 9 +- .../iotdb/consensus/ratis/RatisConsensus.java | 12 +- .../iotdb/consensus/ratis/RequestMessage.java | 5 +- .../org/apache/iotdb/consensus/ratis/Utils.java | 16 +- .../consensus/standalone/StandAloneConsensus.java | 41 +- .../multileader/MultiLeaderConsensusTest.java | 419 +++++++++++++++++++++ .../logdispatcher/IndexControllerTest.java | 110 ++++++ .../multileader/logdispatcher/SyncStatusTest.java | 211 +++++++++++ .../iotdb/consensus/ratis/RatisConsensusTest.java | 16 +- .../apache/iotdb/consensus/ratis/SnapshotTest.java | 1 - .../apache/iotdb/consensus/ratis/TestUtils.java | 16 +- .../{ => standalone}/EmptyStateMachine.java | 3 +- .../iotdb/consensus/standalone/RecoveryTest.java | 9 +- .../standalone/StandAloneConsensusTest.java | 9 +- docs/UserGuide/Reference/Syntax-Conventions.md | 4 +- docs/zh/UserGuide/Reference/Syntax-Conventions.md | 7 +- .../org/apache/iotdb/trigger/AlertingExample.java | 5 +- .../org/apache/iotdb/trigger/TriggerExample.java | 4 +- integration/pom.xml | 6 + .../db/engine/trigger/example/Accumulator.java | 13 +- .../iotdb/db/engine/trigger/example/Counter.java | 13 +- .../IoTDBSyntaxConventionIdentifierIT.java | 8 - .../db/integration/IoTDBTriggerForwardIT.java | 305 +++++++++++++++ .../db/integration/sync/IoTDBSyncReceiverIT.java | 5 +- .../apache/iotdb/session/IoTDBSessionSimpleIT.java | 27 -- .../session/IoTDBSessionSyntaxConventionIT.java | 65 +++- .../iotdb/commons/concurrent/ThreadName.java | 2 + .../apache/iotdb/commons/conf/IoTDBConstant.java | 17 + .../iotdb/commons/consensus/ConsensusGroupId.java | 8 +- .../iotdb/commons/partition/DataPartition.java | 5 +- .../commons/partition/DataPartitionQueryParam.java | 16 + .../apache/iotdb/commons/partition/Partition.java | 4 + .../commons/partition/RegionReplicaSetInfo.java | 16 +- .../iotdb/commons/partition/SchemaPartition.java | 5 +- .../org/apache/iotdb/commons/path/PartialPath.java | 4 + .../service/AbstractThriftServiceThread.java | 38 +- .../apache/iotdb/commons/service/ServiceType.java | 3 +- .../udf/service/UDFRegistrationService.java | 8 +- .../org/apache/iotdb/commons/utils/PathUtils.java | 86 +++++ .../apache/iotdb/commons/ClientManagerTest.java | 5 +- .../iotdb/commons/partition/SerializeTest.java | 3 +- .../commons/utils/ThriftCommonsSerDeUtilsTest.java | 6 +- pom.xml | 2 + .../resources/conf/iotdb-engine.properties | 25 +- .../apache/iotdb/db/client/ConfigNodeClient.java | 34 ++ .../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 152 +++++++- .../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 47 ++- ...ensusImpl.java => DataRegionConsensusImpl.java} | 40 +- ...susImpl.java => SchemaRegionConsensusImpl.java} | 40 +- .../consensus/statemachine/BaseStateMachine.java | 29 +- .../statemachine/DataRegionStateMachine.java | 56 ++- .../statemachine/SchemaRegionStateMachine.java | 23 +- .../statemachine/visitor/DataExecutionVisitor.java | 17 + .../apache/iotdb/db/engine/StorageEngineV2.java | 11 +- .../iotdb/db/engine/memtable/AbstractMemTable.java | 7 +- .../iotdb/db/engine/storagegroup/DataRegion.java | 129 ++++++- .../db/engine/storagegroup/TsFileProcessor.java | 2 +- .../iotdb/db/engine/trigger/api/Trigger.java | 37 +- .../db/engine/trigger/builtin/ForwardTrigger.java | 229 +++++++++++ .../db/engine/trigger/executor/TriggerEngine.java | 14 +- .../engine/trigger/executor/TriggerExecutor.java | 43 ++- .../iotdb/db/engine/trigger/sink/api/Event.java | 8 +- .../iotdb/db/engine/trigger/sink/api/Handler.java | 5 + .../engine/trigger/sink/forward/ForwardEvent.java | 70 ++++ .../sink/http/HTTPForwardConfiguration.java | 36 +- .../trigger/sink/http/HTTPForwardEvent.java} | 11 +- .../trigger/sink/http/HTTPForwardHandler.java | 133 +++++++ .../sink/mqtt/MQTTForwardConfiguration.java | 137 +++++++ .../trigger/sink/mqtt/MQTTForwardEvent.java} | 11 +- .../trigger/sink/mqtt/MQTTForwardHandler.java | 97 +++++ .../db/engine/trigger/utils/BatchHandlerQueue.java | 150 ++++++++ .../engine/trigger/utils/HTTPConnectionPool.java | 49 +++ .../trigger/utils/MQTTConnectionFactory.java | 115 ++++++ .../engine/trigger/utils/MQTTConnectionPool.java | 79 ++++ .../mtree/traverser/collector/MNodeCollector.java | 9 +- .../apache/iotdb/db/metadata/path/AlignedPath.java | 8 + .../iotdb/db/metadata/path/MeasurementPath.java | 5 + .../SmoothQueueSlidingWindowAggregator.java | 1 + .../iotdb/db/mpp/common/header/HeaderConstant.java | 22 ++ .../db/mpp/execution/operator/LastQueryUtil.java | 7 +- .../execution/operator/process/FilterOperator.java | 80 ++-- .../operator/process/LinearFillOperator.java | 3 +- .../operator/process/TransformOperator.java | 70 ++-- .../operator/process/UpdateLastCacheOperator.java | 7 + .../operator/process/merge/SingleColumnMerger.java | 4 +- .../schema/NodeManageMemoryMergeOperator.java | 19 +- ...Operator.java => NodePathsConvertOperator.java} | 50 ++- ...anOperator.java => NodePathsCountOperator.java} | 65 ++-- ...rator.java => NodePathsSchemaScanOperator.java} | 34 +- .../operator/schema/SchemaQueryMergeOperator.java | 2 - .../schema/SchemaQueryOrderByHeatOperator.java | 161 ++++++++ .../execution/operator/source/SeriesScanUtil.java | 3 + .../execution/schedule/AbstractDriverThread.java | 8 +- .../db/mpp/execution/schedule/DriverScheduler.java | 34 +- .../schedule/FragmentInstanceAbortedException.java | 1 + .../apache/iotdb/db/mpp/plan/analyze/Analysis.java | 4 + .../apache/iotdb/db/mpp/plan/analyze/Analyzer.java | 161 +++++--- .../mpp/plan/analyze/ClusterPartitionFetcher.java | 25 +- .../db/mpp/plan/analyze/ClusterSchemaFetcher.java | 4 +- .../db/mpp/plan/analyze/ExpressionAnalyzer.java | 10 +- .../mpp/plan/analyze/FakePartitionFetcherImpl.java | 5 +- .../db/mpp/plan/analyze/FakeSchemaFetcherImpl.java | 6 + .../db/mpp/plan/analyze/IPartitionFetcher.java | 10 +- .../iotdb/db/mpp/plan/analyze/ISchemaFetcher.java | 3 + .../plan/analyze/StandalonePartitionFetcher.java | 5 +- .../mpp/plan/analyze/StandaloneSchemaFetcher.java | 6 + .../db/mpp/plan/execution/QueryExecution.java | 6 +- .../plan/execution/config/ConfigTaskVisitor.java | 14 + .../plan/execution/config/DropFunctionTask.java | 99 +++++ .../mpp/plan/execution/config/ShowClusterTask.java | 122 ++++++ .../execution/config/ShowStorageGroupTask.java | 6 +- .../db/mpp/plan/execution/config/ShowTTLTask.java | 9 +- .../memory/StatementMemorySourceVisitor.java | 14 + .../iotdb/db/mpp/plan/parser/ASTVisitor.java | 226 ++++++++++- .../db/mpp/plan/parser/StatementGenerator.java | 37 +- .../db/mpp/plan/planner/LocalExecutionPlanner.java | 144 +++++-- .../db/mpp/plan/planner/LogicalPlanBuilder.java | 69 ++-- .../iotdb/db/mpp/plan/planner/LogicalPlanner.java | 92 +++-- .../planner/distribution/ExchangeNodeAdder.java | 53 +-- .../plan/planner/distribution/SourceRewriter.java | 152 ++++---- .../mpp/plan/planner/plan/node/PlanNodeType.java | 22 +- .../db/mpp/plan/planner/plan/node/PlanVisitor.java | 20 +- .../metedata/read/ChildNodesSchemaScanNode.java | 87 ----- .../read/NodeManagementMemoryMergeNode.java | 20 +- ...oryMergeNode.java => NodePathsConvertNode.java} | 45 +-- ...emoryMergeNode.java => NodePathsCountNode.java} | 45 +-- ...aScanNode.java => NodePathsSchemaScanNode.java} | 24 +- .../node/metedata/read/SchemaQueryMergeNode.java | 4 + .../metedata/read/SchemaQueryOrderByHeatNode.java | 99 +++++ .../metedata/read/TimeSeriesSchemaScanNode.java | 7 + .../planner/plan/node/process/DeviceMergeNode.java | 9 +- .../planner/plan/node/process/DeviceViewNode.java | 14 +- .../plan/node/process/GroupByLevelNode.java | 9 + .../planner/plan/node/write/DeleteDataNode.java | 110 ++++-- .../plan/planner/plan/node/write/InsertNode.java | 3 +- .../planner/plan/node/write/InsertRowNode.java | 10 + .../planner/plan/node/write/InsertTabletNode.java | 55 +++ .../scheduler/FragmentInstanceDispatcherImpl.java | 31 +- .../db/mpp/plan/statement/StatementVisitor.java | 20 + .../plan/statement/crud/DeleteDataStatement.java | 73 ++++ .../db/mpp/plan/statement/crud/QueryStatement.java | 4 + .../statement/metadata/CountNodesStatement.java | 10 + .../statement/metadata/DropFunctionStatement.java | 60 +++ ...desStatement.java => ShowClusterStatement.java} | 19 +- .../db/protocol/mqtt/JSONPayloadFormatter.java | 30 +- .../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java | 76 +++- .../query/reader/chunk/MemAlignedPageReader.java | 25 +- .../iotdb/db/query/reader/chunk/MemPageReader.java | 4 + .../java/org/apache/iotdb/db/service/DataNode.java | 62 +-- .../java/org/apache/iotdb/db/service/IoTDB.java | 9 +- .../thrift/impl/DataNodeTSIServiceImpl.java | 229 ++++++----- .../service/thrift/impl/InternalServiceImpl.java | 73 +++- .../db/service/thrift/impl/TSServiceImpl.java | 117 +----- .../db/sync/sender/service/TransportHandler.java | 5 +- .../db/sync/transport/client/TransportClient.java | 21 +- .../db/tools/validate/TsFileValidationTool.java | 13 +- .../java/org/apache/iotdb/db/wal/WALManager.java | 15 +- .../allocation/AbstractNodeAllocationStrategy.java | 9 + .../db/wal/allocation/FirstCreateStrategy.java | 4 +- .../iotdb/db/wal/buffer/AbstractWALBuffer.java | 4 +- .../org/apache/iotdb/db/wal/buffer/WALBuffer.java | 7 +- .../iotdb/db/wal/checkpoint/CheckpointManager.java | 40 +- .../iotdb/db/wal/checkpoint/MemTableInfo.java | 1 - .../apache/iotdb/db/wal/io/CheckpointReader.java | 22 +- .../org/apache/iotdb/db/wal/node/IWALNode.java | 5 +- .../java/org/apache/iotdb/db/wal/node/WALNode.java | 13 +- .../db/wal/recover/CheckpointRecoverUtils.java | 32 +- .../iotdb/db/wal/recover/WALNodeRecoverTask.java | 34 +- .../iotdb/db/wal/utils/CheckpointFileUtils.java | 3 +- .../apache/iotdb/db/wal/utils/WALFileUtils.java | 30 +- .../iotdb/db/engine/StorageEngineV2Test.java | 71 ++++ .../metadata/idtable/trigger_example/Counter.java | 13 +- .../execution/operator/LinearFillOperatorTest.java | 113 +++++- ...erTest.java => DefaultDriverSchedulerTest.java} | 2 +- .../execution/schedule/DriverSchedulerTest.java | 2 +- .../DriverTaskTimeoutSentinelThreadTest.java | 43 +++ .../mpp/plan/plan/FragmentInstanceSerdeTest.java | 6 +- .../iotdb/db/mpp/plan/plan/LogicalPlannerTest.java | 51 ++- .../plan/distribution/AlignedByDeviceTest.java} | 19 +- .../plan/distribution/DeleteTimeseriesTest.java | 71 ---- .../NodeManagementMemoryMergeNodeSerdeTest.java | 81 ++-- .../plan/node/write/DeleteDataNodeSerdeTest.java | 21 +- .../iotdb/db/service/InternalServiceImplTest.java | 24 +- .../db/sync/transport/TransportServiceTest.java | 8 +- .../db/wal/allocation/FirstCreateStrategyTest.java | 2 +- .../db/wal/checkpoint/CheckpointManagerTest.java | 6 +- .../apache/iotdb/db/wal/io/CheckpointFileTest.java | 12 +- .../iotdb/db/wal/node/ConsensusReqReaderTest.java | 16 +- .../org/apache/iotdb/db/wal/node/WALNodeTest.java | 2 +- .../datanode1conf/iotdb-engine.properties | 3 +- .../datanode2conf/iotdb-engine.properties | 3 +- .../datanode3conf/iotdb-engine.properties | 3 +- thrift-commons/src/main/thrift/common.thrift | 6 +- .../src/main/thrift/confignode.thrift | 49 ++- .../pom.xml | 56 +-- .../src/main/thrift/mutlileader.thrift | 35 +- thrift/src/main/thrift/mpp.thrift | 11 + .../tsfile/common/constant/TsFileConstant.java | 5 +- .../iotdb/tsfile/read/common/block/TsBlock.java | 3 +- .../tsfile/read/common/parser/PathVisitor.java | 2 +- .../iotdb/tsfile/read/reader/IPageReader.java | 4 + .../tsfile/read/reader/page/AlignedPageReader.java | 13 +- .../iotdb/tsfile/read/reader/page/PageReader.java | 3 + 256 files changed, 7945 insertions(+), 2071 deletions(-)
