This is an automated email from the ASF dual-hosted git repository.
Caideyipi pushed a change to branch time-partition-boundary-overflow-fix
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from 2a9788f28a1 Fix WritePlanNodeSplitTest compilation
add 07b9cb086a9 Fix empty snapshot loading and region cleanup (#17880)
add ddd8faaff23 Improve ConfigNode leader warm-up before serving (#17821)
add 11a178a3672 Table: Support SELECT aliases in GROUP BY and ORDER BY
(#17843)
add 30305975373 Bound Ratis reconfiguration retries and add region
migration ITs (#17895)
add 983e927ce97 Add M4 table function implementation and integrate with
statement ana… (#17656)
add 86987e48667 Catch per-startup failures during ConfigNode leader
warm-up (#17898)
add c5240154a70 Clarify RemoveDataNode single-replica error and add
diagnostics for the no-available-RegionGroup race (#17878)
add a725ded2471 Fix overflow edge cases in query utilities (#17875)
add a7b86575c7c Merge branch 'master' of https://github.com/apache/iotdb
into time-partition-boundary-overflow-fix
No new revisions were added by this update.
Summary of changes:
.../it/env/cluster/config/MppCommonConfig.java | 21 +
.../env/cluster/config/MppSharedCommonConfig.java | 21 +
.../it/env/remote/config/RemoteCommonConfig.java | 15 +
.../org/apache/iotdb/itbase/env/CommonConfig.java | 6 +
... => IoTDBRegionMigrateITFrameworkForRatis.java} | 13 +-
...IoTDBRegionOperationReliabilityITFramework.java | 128 +++-
...TDBRegionMigrateAddingPeerCrashForRatisIT.java} | 26 +-
.../IoTDBRegionMigrateClusterCrashForRatisIT.java} | 35 +-
...TDBRegionMigrateConfigNodeCrashForRatisIT.java} | 43 +-
.../removedatanode/IoTDBRemoveLastDataNodeIT.java | 111 +++
.../java/org/apache/iotdb/db/it/IoTDBMiscIT.java | 18 +-
.../relational/it/db/it/IoTDBWindowTVFIT.java | 334 +++++++++
.../it/query/recent/IoTDBTableAggregationIT.java | 69 ++
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 1 +
iotdb-core/ainode/iotdb/ainode/core/constant.py | 1 +
iotdb-core/ainode/iotdb/ainode/core/rpc/client.py | 11 +-
iotdb-core/calc-commons/pom.xml | 5 +
.../fill/filter/FixedIntervalFillFilter.java | 12 +-
.../relational/aggregation/ExtremeAccumulator.java | 32 +-
.../grouped/GroupedExtremeAccumulator.java | 70 +-
.../fill/filter/FixedIntervalFillFilterTest.java | 18 +-
.../aggregation/ExtremeAccumulatorTest.java | 150 ++++
.../iotdb/confignode/i18n/ProcedureMessages.java | 5 +
.../iotdb/confignode/i18n/ProcedureMessages.java | 5 +
.../handlers/heartbeat/AINodeHeartbeatHandler.java | 2 +-
.../heartbeat/DataNodeHeartbeatHandler.java | 125 ++--
.../iotdb/confignode/conf/ConfigNodeConfig.java | 40 +
.../confignode/conf/ConfigNodeDescriptor.java | 15 +
.../statemachine/ConfigRegionStateMachine.java | 394 +++++++---
.../iotdb/confignode/manager/ConfigManager.java | 4 +
.../iotdb/confignode/manager/ProcedureManager.java | 13 +-
.../manager/consensus/ConsensusManager.java | 81 ++-
.../iotdb/confignode/manager/load/LoadManager.java | 73 ++
.../balancer/router/leader/HashLeaderBalancer.java | 2 +-
.../manager/load/cache/AbstractLoadCache.java | 4 +
.../confignode/manager/load/cache/LoadCache.java | 27 +
.../load/cache/consensus/ConsensusGroupCache.java | 2 +-
.../iotdb/confignode/manager/node/NodeManager.java | 4 +
.../manager/partition/PartitionManager.java | 18 +
.../confignode/procedure/ProcedureExecutor.java | 13 +-
.../procedure/env/ConfigNodeProcedureEnv.java | 7 +-
.../procedure/env/RemoveDataNodeHandler.java | 52 +-
.../impl/region/CreateRegionGroupsProcedure.java | 10 +-
.../iotdb/confignode/service/ConfigNode.java | 8 +-
.../confignode/manager/load/LoadManagerTest.java | 70 ++
.../router/leader/HashLeaderBalancerTest.java | 65 ++
.../apache/iotdb/consensus/config/RatisConfig.java | 22 +-
.../iot/client/AsyncIoTConsensusServiceClient.java | 2 +-
.../apache/iotdb/consensus/ratis/RatisClient.java | 31 +-
.../iotdb/consensus/ratis/RatisConsensus.java | 2 +-
.../iotdb/db/i18n/StorageEngineMessages.java | 16 +
.../iotdb/db/i18n/StorageEngineMessages.java | 16 +
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 29 +
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 11 +
.../db/consensus/DataRegionConsensusImpl.java | 2 +
.../db/consensus/SchemaRegionConsensusImpl.java | 3 +
.../downsampling/DownSamplingTimeUtils.java | 8 +-
.../exchange/sender/TwoStageAggregateSender.java | 2 +-
.../tsfile/PipeTsFileResourceSegmentLock.java | 10 +-
.../iotdb/db/protocol/client/ConfigNodeClient.java | 45 +-
.../impl/DataNodeInternalRPCServiceImpl.java | 13 +
.../execution/aggregation/ExtremeAccumulator.java | 32 +-
.../SlidingWindowAggregatorFactory.java | 36 +-
.../execution/operator/window/SessionWindow.java | 41 +-
.../operator/window/SessionWindowManager.java | 3 +-
.../queryengine/plan/analyze/AnalyzeVisitor.java | 26 +-
.../plan/AbstractFragmentParallelPlanner.java | 3 +-
.../relational/analyzer/StatementAnalyzer.java | 302 +++++++-
.../plan/relational/planner/RelationPlanner.java | 6 +-
.../db/storageengine/dataregion/DataRegion.java | 4 +-
.../dataregion/snapshot/SnapshotLoader.java | 46 +-
.../tsfile/generator/TsFileNameGenerator.java | 2 +-
.../tableDiskUsageIndex/TableDiskUsageIndex.java | 31 +-
.../SubscriptionPipeEventBatchSegmentLock.java | 4 +-
.../changing/ChangingValueFilterTest.java | 55 ++
.../sdt/SwingingDoorTrendingFilterTest.java | 56 ++
.../TumblingTimeSamplingProcessorTest.java | 192 +++++
.../tsfile/PipeTsFileResourceSegmentLockTest.java | 71 ++
.../execution/aggregation/AccumulatorTest.java | 46 ++
.../SlidingWindowAggregatorFactoryTest.java} | 25 +-
.../operator/window/SessionWindowTest.java | 57 +-
.../relational/analyzer/SelectAliasReuseTest.java | 347 +++++++++
.../relational/analyzer/TableFunctionTest.java | 187 +++++
.../plan/relational/analyzer/TestMetadata.java | 13 +
.../dataregion/snapshot/IoTDBSnapshotTest.java | 26 +
...SubscriptionPipeEventBatchSegmentLockTest.java} | 34 +-
.../conf/iotdb-system.properties.template | 11 +
.../async/AsyncAINodeInternalServiceClient.java | 2 +-
.../AsyncConfigNodeInternalServiceClient.java | 2 +-
.../async/AsyncDataNodeExternalServiceClient.java | 2 +-
.../async/AsyncDataNodeInternalServiceClient.java | 2 +-
.../AsyncDataNodeMPPDataExchangeServiceClient.java | 2 +-
.../async/AsyncIoTConsensusV2ServiceClient.java | 2 +-
.../async/AsyncPipeDataTransferServiceClient.java | 2 +-
.../iotdb/commons/concurrent/ThreadName.java | 3 +-
.../function/TableBuiltinTableFunction.java | 4 +
.../builtin/relational/tvf/M4TableFunction.java | 802 +++++++++++++++++++++
.../iotdb/commons/utils/TimePartitionUtils.java | 6 +
.../src/main/thrift/confignode.thrift | 6 +
99 files changed, 4396 insertions(+), 486 deletions(-)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/{IoTDBRegionMigrateDataNodeCrashITFrameworkForIoTV1.java
=> IoTDBRegionMigrateITFrameworkForRatis.java} (74%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/{iotv1/IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV1IT.java
=> ratis/IoTDBRegionMigrateAddingPeerCrashForRatisIT.java} (68%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/{iotv2/batch/IoTDBRegionMigrateClusterCrashIoTV2BatchIT.java
=> ratis/IoTDBRegionMigrateClusterCrashForRatisIT.java} (67%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/{iotv2/batch/IoTDBRegionMigrateConfigNodeCrashIoTV2BatchIT.java
=> ratis/IoTDBRegionMigrateConfigNodeCrashForRatisIT.java} (84%)
create mode 100644
integration-test/src/test/java/org/apache/iotdb/confignode/it/removedatanode/IoTDBRemoveLastDataNodeIT.java
copy
iotdb-client/service-rpc/src/test/java/org/apache/iotdb/rpc/TSStatusCodeTest.java
=>
iotdb-core/calc-commons/src/test/java/org/apache/iotdb/calc/execution/operator/process/fill/filter/FixedIntervalFillFilterTest.java
(60%)
create mode 100644
iotdb-core/calc-commons/src/test/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/ExtremeAccumulatorTest.java
create mode 100644
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/manager/load/balancer/router/leader/HashLeaderBalancerTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/processor/downsampling/changing/ChangingValueFilterTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/processor/downsampling/sdt/SwingingDoorTrendingFilterTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/processor/downsampling/tumbling/TumblingTimeSamplingProcessorTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/resource/tsfile/PipeTsFileResourceSegmentLockTest.java
copy
iotdb-core/{confignode/src/test/java/org/apache/iotdb/confignode/manager/ClusterSchemaManagerTest.java
=>
datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/aggregation/slidingwindow/SlidingWindowAggregatorFactoryTest.java}
(52%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/SelectAliasReuseTest.java
copy
iotdb-core/{node-commons/src/test/java/org/apache/iotdb/commons/utils/JVMCommonUtilsTest.java
=>
datanode/src/test/java/org/apache/iotdb/db/subscription/event/batch/SubscriptionPipeEventBatchSegmentLockTest.java}
(50%)
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/M4TableFunction.java