This is an automated email from the ASF dual-hosted git repository.
lancelly pushed a change to branch support_uncorrelated_in_predicate
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from 6fbbf92e5b3 remove outdated IT
add 950ecff3418 modify table session example (#14357)
add 621693f5159 Pipe IT: table model tests for consensus pipes × user
pipes (#14200)
add 761c67edd18 Fix file header of Java Class #14350
add ad09bd3c57e Pipe: Support table statements' data type conversion on
receiver type mismatch (#14354)
add f1714d05cdb Adjust default data region num per node from 5 to to cpu
core / 2 (#14348)
add e48aa4f67a5 Remove sqlalchemy upper version constraint for python
client (#14083)
add 05ea4738871 finish (#14366)
add f2a5854f182 WAL buffer queue memory control (#14329)
add 6073d25712c Restruct procedure waiting strategy to fix NPE bug when
completed procedures were cleaned before getting result (#14360)
add 21652cc2180 Fixed the bug of ID Like judgement in queries
add 589866872db Fix group by nature month when timezone is not default
add 70691e4b2be Add `removeInput` and `removable` to some specific
Accmulators
add ba824548e0b fix wal queue stuck and fix metric (#14387)
add 37450ec160b Supprt trusted_uri_pattern in config file
add e1884cad2f8 Support us and ns timePrecision in udf-library part-1
add 839e2221dce Move model annotations to tsfile (#14358)
add 9c65c326c4d Pipe: Deleted the "root" prefix dir in table model for OPC
UA Sink (#14385)
add 54197b95d28 Pipe: Fix the deadlock of PeriodicalJob thread caused by
using parallelStream to split restartAllStuckPipes' subtasks (#14392)
add d3b96d8136c show more use ctx.getIn(), because Sometimes it's not
system. in (#14322)
add 88ffa48e320 Fix ThreadPoolMetrics concurrent NPE bug & Fix metric
leaks when frequently creating and deleting database (#14388)
add 4be990922b4 [region migration] Remove retry of
RegionMigrateService::addPeer (#14362)
add 8144e5c4613 Fix ThreadPoolMetrics NPE (#14404)
add 4c213313a9f Sampling queries in each DN
add c4f1ba61b26 [Py-client] Print Dataset is closed error msg if user
continues to fetch from it (#14396)
add e2cd299d17a When the config node can not find the configuration file,
the set configuration command does not update other nodes' configuration
(#14390)
add 73c1e329fc7 add todos check (#14367)
add d0de00610ec Temporarily skip check TODO (#14413)
add c310cb0c3eb IoTV2: Fix consensus pipe operation time out (#14399)
add 809b3aaff8e Pipe: Fixed the bug that a failed check sum may
permanently disable an air gap receiver & Optimized the air gap file offset
logic & Fixed the bug that not connected socket may die forever in "send"
(#14384)
add 8b220c9219c modify encrypt type and related tests (#14273)
add 77f350e66a6 fix TODO check
add 12e1fb2fe55 Fix UDF missing redo raft log after restart
add 35542a17f10 Implement SELECT DISTINCT in TableModel
add b53e1ba569b Bump jackson-databind to 2.16.2
add ac18bbf5ca4 Print current trusted_uri_pattern is error msg
add dbdd736ab34 When the device is missing from the resource, this part of
the data may be lost during file repair (#14411)
add edc318540ff Pipe: Add login logic to receiver handshake (#14401)
add f68726f8b81 Pipe: Fix "waitHandshakeFinished" may wait forever when
asyncClientManager is closed (#14373)
add e80b9927c9e Subscription: fix ConcurrentModificationException for
`ConsumerGroupMeta` & fix the logic of `isTopicSubscribedByConsumerGroup` &
avoid consumer from outputting too much content in string form (#14425)
add 2165bf49beb Add Create Trigger without using uri IT
add 992abd67952 Add stream mode to iotv2 region migration it (#14417)
add f62d058a796 [IOTDB-6353] replace cglib to byte-buddy (#14426)
add 325b8d8fd01 Fix error in MergeSortJoin when some columns exist null
values & Support cross join with filters
new cd7dbedc61a merge with master
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.github/workflows/pipe-it-2cluster.yml | 2 +-
.github/workflows/todos-check.yml | 40 ++
dependencies.json | 2 +-
.../org/apache/iotdb/TableModelSessionExample.java | 29 +-
.../apache/iotdb/TableModelSessionPoolExample.java | 29 +-
.../it/env/cluster/config/MppCommonConfig.java | 6 +
.../env/cluster/config/MppSharedCommonConfig.java | 7 +
.../iotdb/it/env/cluster/env/AbstractEnv.java | 15 +
.../it/env/remote/config/RemoteCommonConfig.java | 5 +
.../iotdb/it/env/remote/env/RemoteServerEnv.java | 9 +
.../iotdb/itbase/constant/UDFTestConstant.java | 1 +
.../java/org/apache/iotdb/itbase/env/BaseEnv.java | 3 +
.../org/apache/iotdb/itbase/env/CommonConfig.java | 2 +
.../org/apache/iotdb/ainode/it/AINodeBasicIT.java | 1 +
.../it/cluster/IoTDBClusterNodeGetterIT.java | 6 +-
.../IoTDBRegionMigrateNormalITForIoTV2Batch.java} | 5 +-
.../IoTDBRegionMigrateOtherITForIoTV2Batch.java} | 5 +-
.../IoTDBRegionMigrateNormalITForIoTV2Stream.java} | 19 +-
.../IoTDBRegionMigrateOtherITForIoTV2Stream.java} | 19 +-
...torCrashWhenRemoveRemotePeerForIoTV2Batch.java} | 4 +-
...DBRegionMigrateDataNodeCrashForIoTV2Batch.java} | 4 +-
...inalCrashWhenDeleteLocalPeerForIoTV2Batch.java} | 4 +-
...nalCrashWhenRemoveRemotePeerForIoTV2Batch.java} | 4 +-
...orCrashWhenRemoveRemotePeerForIoTV2Stream.java} | 17 +-
...BRegionMigrateDataNodeCrashForIoTV2Stream.java} | 18 +-
...nalCrashWhenDeleteLocalPeerForIoTV2Stream.java} | 18 +-
...alCrashWhenRemoveRemotePeerForIoTV2Stream.java} | 18 +-
.../IoTDBRegionMigrateClusterCrashIoTV2Batch.java} | 4 +-
...TDBRegionMigrateConfigNodeCrashIoTV2Batch.java} | 4 +-
...IoTDBRegionMigrateClusterCrashIoTV2Stream.java} | 6 +-
...DBRegionMigrateConfigNodeCrashIoTV2Stream.java} | 6 +-
.../confignode/it/utils/ConfigNodeTestUtils.java | 4 +-
.../org/apache/iotdb/db/it/IoTDBNestedQueryIT.java | 1 +
.../org/apache/iotdb/db/it/IoTDBRestartIT.java | 1 +
.../db/it/IoTDBSyntaxConventionIdentifierIT.java | 1 +
.../it/IoTDBSyntaxConventionStringLiteralIT.java | 1 +
.../aligned/IoTDBAggregationWithDeletion2IT.java | 1 +
.../db/it/aligned/IoTDBAlignedSeriesQuery4IT.java | 1 +
.../scalar/IoTDBRoundFunctionIT.java | 1 +
.../db/it/groupby/IoTDBGroupByNaturalMonthIT.java | 28 +
.../apache/iotdb/db/it/path/IoTDBQuotedPathIT.java | 1 +
.../db/it/query/IoTDBEncryptionValueQueryIT.java | 4 +-
.../db/it/query/IoTDBLoadEncryptedTsFileIT.java | 55 +-
.../iotdb/db/it/query/IoTDBLoadPlainTsFileIT.java | 145 -----
.../db/it/trigger/IoTDBTriggerManagementIT.java | 47 ++
.../iotdb/db/it/udf/IoTDBUDFBlockQueryIT.java | 12 +
.../iotdb/db/it/udf/IoTDBUDFManagementIT.java | 1 +
.../iotdb/db/it/udf/IoTDBUDFWindowQueryIT.java | 1 +
.../db/it/udf/IoTDBUDTFAlignByTimeQueryIT.java | 1 +
.../iotdb/db/it/udf/IoTDBUDTFHybridQueryIT.java | 1 +
.../iotdb/db/it/udf/IoTDBUDTFNonAlignQueryIT.java | 1 +
.../org/apache/iotdb/db/it/utils/TestUtils.java | 170 +++++-
.../pipe/it/autocreate/IoTDBPipeLifeCycleIT.java | 2 +-
.../manual/IoTDBPipeTypeConversionISessionIT.java | 3 +-
.../iotdb/pipe/it/tablemodel/IoTDBPipeAlterIT.java | 15 +-
.../it/tablemodel/IoTDBPipeAutoConflictIT.java | 23 +-
.../pipe/it/tablemodel/IoTDBPipeAutoDropIT.java | 88 ++-
.../pipe/it/tablemodel/IoTDBPipeClusterIT.java | 68 ++-
.../IoTDBPipeConnectorCompressionIT.java | 30 +-
.../tablemodel/IoTDBPipeConnectorParallelIT.java | 14 +-
.../pipe/it/tablemodel/IoTDBPipeDataSinkIT.java | 31 +-
.../pipe/it/tablemodel/IoTDBPipeExtractorIT.java | 105 +++-
.../pipe/it/tablemodel/IoTDBPipeLifeCycleIT.java | 90 ++-
.../pipe/it/tablemodel/IoTDBPipeNullValueIT.java | 11 +-
.../pipe/it/tablemodel/IoTDBPipeProtocolIT.java | 36 +-
.../it/tablemodel/IoTDBPipeSwitchStatusIT.java | 7 +-
.../pipe/it/tablemodel/IoTDBPipeWithLoadIT.java | 9 +-
.../it/tablemodel/IoTDBTablePatternFormatIT.java | 58 +-
.../iotdb/pipe/it/tablemodel/TableModelUtils.java | 32 +-
.../it/db/it/IoTDBCaseWhenThenTableIT.java | 23 +-
.../db/it/IoTDBMultiIDsWithAttributesTableIT.java | 245 +++++++-
.../relational/it/db/it/IoTDBRestartTableIT.java | 1 +
.../it/db/it/IoTDBSetConfigurationTableIT.java | 39 +-
.../it/db/it/udf/IoTDBSQLFunctionManagementIT.java | 16 +-
.../it/db/it/udf/scalar/IoTDBScalarFunctionIT.java | 21 +-
.../aligned/IoTDBAlignedSeriesQueryTable4IT.java | 1 +
.../scalar/IoTDBCastFunctionTableSpecialIT.java | 23 +-
.../it/query/old/query/IoTDBArithmeticTableIT.java | 23 +-
.../it/query/recent/IoTDBTableAggregationIT.java | 129 +++++
.../iotdb/relational/it/schema/IoTDBDeviceIT.java | 36 +-
.../api/exception/PipeConnectionException.java | 4 +-
.../iotdb/pipe/api/exception/PipeException.java | 6 +-
.../java/org/apache/iotdb/cli/AbstractCli.java | 14 +-
.../org/apache/iotdb/cli/utils/JlineUtils.java | 32 +-
iotdb-client/client-py/iotdb/Session.py | 12 +-
.../client-py/iotdb/sqlalchemy/IoTDBDialect.py | 15 +-
.../client-py/iotdb/utils/IoTDBRpcDataSet.py | 3 +
iotdb-client/client-py/requirements.txt | 2 +-
.../tests/integration/sqlalchemy/test_dialect.py | 41 +-
.../consumer/SubscriptionConsumer.java | 8 +-
.../session/subscription/util/CollectionUtils.java | 21 +-
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 2 +-
.../client/sync/SyncDataNodeClientPool.java | 2 +-
.../iotdb/confignode/conf/ConfigNodeConfig.java | 24 +-
.../confignode/conf/ConfigNodeDescriptor.java | 25 +-
.../consensus/request/ConfigPhysicalPlan.java | 4 +
.../consensus/response/ttl/ShowTTLResp.java | 1 +
.../iotdb/confignode/manager/ConfigManager.java | 39 +-
.../iotdb/confignode/manager/ProcedureManager.java | 639 +++++++++------------
.../iotdb/confignode/manager/TTLManager.java | 1 +
.../PartiteGraphPlacementRegionGroupAllocator.java | 7 +-
.../receiver/protocol/IoTDBConfigNodeReceiver.java | 12 +
.../manager/schema/ClusterSchemaManager.java | 11 +-
.../iotdb/confignode/persistence/TTLInfo.java | 1 +
.../confignode/persistence/node/NodeInfo.java | 1 +
.../confignode/procedure/ProcedureExecutor.java | 24 -
.../confignode/procedure/store/ProcedureType.java | 1 +
.../request/ConfigPhysicalPlanSerDeTest.java | 18 +
.../region/AllocatorScatterWidthManualTest.java | 4 +-
.../GreedyCopySetRegionGroupAllocatorTest.java | 4 +-
.../confignode/persistence/TriggerInfoTest.java | 1 +
.../iotdb/confignode/persistence/UDFInfoTest.java | 1 +
.../apache/iotdb/consensus/iot/IoTConsensus.java | 157 ++---
.../consensus/iot/IoTConsensusServerImpl.java | 20 +-
.../apache/iotdb/consensus/pipe/PipeConsensus.java | 28 +-
.../apache/iotdb/consensus/iot/StabilityTest.java | 36 --
.../assembly/resources/conf/logback-datanode.xml | 18 +
.../ArithmeticBinaryColumnTransformer.ftl | 1 -
.../templates/ArithmeticColumnTransformerApi.ftl | 23 +-
.../templates/ArithmeticUnaryColumnTransformer.ftl | 23 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 23 +-
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 120 +++-
.../db/pipe/agent/task/PipeDataNodeTaskAgent.java | 9 +-
.../subtask/connector/PipeConnectorSubtask.java | 34 --
.../client/IoTDBDataNodeAsyncClientManager.java | 45 +-
.../connector/protocol/opcua/OpcUaNameSpace.java | 13 +-
.../pipeconsensus/PipeConsensusAsyncConnector.java | 4 +-
.../pipeconsensus/PipeConsensusSyncConnector.java | 56 +-
.../deletion/persist/PageCacheDeletionBuffer.java | 2 +-
.../PipeDataNodeRemainingEventAndTimeOperator.java | 2 +-
.../protocol/airgap/IoTDBAirGapReceiver.java | 52 +-
.../protocol/airgap/IoTDBAirGapReceiverAgent.java | 7 +-
.../legacy/IoTDBLegacyPipeReceiverAgent.java | 3 +-
.../protocol/legacy/loader/DeletionLoader.java | 3 +-
.../protocol/legacy/loader/TsFileLoader.java | 3 +-
.../protocol/thrift/IoTDBDataNodeReceiver.java | 56 +-
.../statement/PipeConvertedInsertRowStatement.java | 6 +
.../PipeConvertedInsertTabletStatement.java | 7 +
...eStatementDataTypeConvertExecutionVisitor.java} | 101 +++-
...eStatementDataTypeConvertExecutionVisitor.java} | 11 +-
.../iotdb/db/protocol/mqtt/MPPPublishHandler.java | 3 +-
.../rest/v1/impl/GrafanaApiServiceImpl.java | 9 +-
.../protocol/rest/v1/impl/RestApiServiceImpl.java | 9 +-
.../rest/v2/impl/GrafanaApiServiceImpl.java | 9 +-
.../protocol/rest/v2/impl/RestApiServiceImpl.java | 12 +-
.../protocol/thrift/impl/ClientRPCServiceImpl.java | 55 +-
.../impl/DataNodeInternalRPCServiceImpl.java | 3 +-
.../thrift/impl/DataNodeRegionManager.java | 4 +-
.../db/queryengine/common/MPPQueryContext.java | 14 +-
.../queryengine/execution/FutureStateChange.java | 23 +-
.../db/queryengine/execution/StateMachine.java | 23 +-
.../timerangeiterator/AggrWindowIterator.java | 26 +-
.../PreAggrWindowWithNaturalMonthIterator.java | 8 +-
.../TimeRangeIteratorFactory.java | 9 +-
.../execution/operator/AggregationUtil.java | 7 +-
.../process/SlidingWindowAggregationOperator.java | 7 +-
.../comparator/AscBinaryTypeJoinKeyComparator.java | 48 +-
.../AscBooleanTypeJoinKeyComparator.java | 38 +-
.../comparator/AscDoubleTypeJoinKeyComparator.java | 38 +-
.../comparator/AscFloatTypeJoinKeyComparator.java | 38 +-
.../comparator/AscIntTypeJoinKeyComparator.java | 38 +-
.../comparator/AscLongTypeJoinKeyComparator.java | 38 +-
.../DescBinaryTypeJoinKeyComparator.java | 48 +-
.../DescBooleanTypeJoinKeyComparator.java | 38 +-
.../DescDoubleTypeJoinKeyComparator.java | 38 +-
.../comparator/DescFloatTypeJoinKeyComparator.java | 38 +-
.../comparator/DescIntTypeJoinKeyComparator.java | 38 +-
.../comparator/DescLongTypeJoinKeyComparator.java | 38 +-
.../join/merge/comparator/JoinKeyComparator.java | 8 +-
.../merge/comparator/JoinKeyComparatorFactory.java | 13 +
.../relational/AbstractMergeSortJoinOperator.java | 176 ++++--
.../relational/MergeSortFullOuterJoinOperator.java | 99 ++--
.../relational/MergeSortInnerJoinOperator.java | 71 ++-
.../relational/MergeSortSemiJoinOperator.java | 46 +-
.../relational/aggregation/AvgAccumulator.java | 73 +++
.../relational/aggregation/CountAccumulator.java | 20 +
.../relational/aggregation/SumAccumulator.java | 69 +++
.../relational/aggregation/TableAccumulator.java | 32 +-
.../relational/aggregation/TableAggregator.java | 24 +-
.../aggregation/TableModeAccumulator.java | 102 ++++
.../aggregation/TableVarianceAccumulator.java | 86 +++
.../aggregation/grouped/GroupedAccumulator.java | 24 +-
.../aggregation/grouped/GroupedAggregator.java | 24 +-
.../aggregation/grouped/UpdateMemory.java | 24 +-
.../aggregation/grouped/array/BigArrays.java | 24 +-
.../aggregation/grouped/array/BinaryBigArray.java | 24 +-
.../aggregation/grouped/array/BooleanBigArray.java | 24 +-
.../aggregation/grouped/array/ByteBigArray.java | 24 +-
.../aggregation/grouped/array/DoubleBigArray.java | 24 +-
.../aggregation/grouped/array/FloatBigArray.java | 24 +-
.../aggregation/grouped/array/IntBigArray.java | 24 +-
.../aggregation/grouped/array/IntBigArrays.java | 24 +-
.../aggregation/grouped/array/IntComparator.java | 24 +-
.../aggregation/grouped/array/LongBigArray.java | 24 +-
.../aggregation/grouped/array/MapBigArray.java | 24 +-
.../aggregation/grouped/array/ObjectBigArray.java | 24 +-
.../aggregation/grouped/array/ShortBigArray.java | 24 +-
.../grouped/builder/HashAggregationBuilder.java | 24 +-
.../builder/InMemoryHashAggregationBuilder.java | 24 +-
.../grouped/hash/CombineHashFunction.java | 24 +-
.../aggregation/grouped/hash/FlatGroupByHash.java | 24 +-
.../aggregation/grouped/hash/FlatHash.java | 24 +-
.../aggregation/grouped/hash/FlatHashStrategy.java | 24 +-
.../aggregation/grouped/hash/GroupByHash.java | 24 +-
.../grouped/hash/VariableWidthData.java | 24 +-
.../iotdb/db/queryengine/plan/Coordinator.java | 37 +-
.../queryengine/plan/analyze/AnalyzeVisitor.java | 4 +-
.../plan/analyze/TemplatedAggregationAnalyze.java | 4 +-
.../analyze/cache/schema/DataNodeTTLCache.java | 1 +
.../load/TreeSchemaAutoCreatorAndVerifier.java | 3 +-
.../analyze/schema/AutoCreateSchemaExecutor.java | 3 +-
.../analyze/schema/ClusterSchemaFetchExecutor.java | 3 +-
.../plan/execution/ExecutionResult.java | 1 +
.../plan/execution/IQueryExecution.java | 2 +
.../queryengine/plan/execution/QueryExecution.java | 5 +
.../plan/execution/config/ConfigExecution.java | 5 +
.../execution/config/TableConfigTaskVisitor.java | 21 +-
.../execution/config/TreeConfigTaskVisitor.java | 45 +-
.../config/executor/ClusterConfigTaskExecutor.java | 28 +-
.../plan/optimization/LimitOffsetPushDown.java | 20 +-
.../db/queryengine/plan/parser/ASTVisitor.java | 4 +-
.../plan/planner/LocalExecutionPlanner.java | 1 +
.../queryengine/plan/planner/LogicalPlanner.java | 1 +
.../plan/planner/OperatorTreeGenerator.java | 31 +-
.../plan/planner/TableOperatorGenerator.java | 110 ++--
.../planner/distribution/DistributionPlanner.java | 1 +
.../plan/planner/plan/DistributedQueryPlan.java | 1 +
.../plan/planner/plan/LogicalQueryPlan.java | 1 +
.../plan/planner/plan/PlanFragment.java | 1 +
.../plan/planner/plan/node/PlanNodeId.java | 1 +
.../planner/plan/node/process/DeviceViewNode.java | 1 +
.../plan/planner/plan/node/process/FillNode.java | 1 +
.../plan/planner/plan/node/process/FilterNode.java | 1 +
.../plan/node/process/GroupByLevelNode.java | 1 +
.../plan/node/process/HorizontallyConcatNode.java | 1 +
.../plan/planner/plan/node/process/LimitNode.java | 1 +
.../planner/plan/node/process/ProcessNode.java | 1 +
.../plan/planner/plan/node/process/SortNode.java | 1 +
.../node/process/join/FullOuterTimeJoinNode.java | 1 +
.../plan/planner/plan/node/write/InsertNode.java | 10 +
.../plan/relational/analyzer/Analysis.java | 7 +-
.../relational/analyzer/StatementAnalyzer.java | 50 +-
.../querystats/PlanOptimizersStatsCollector.java | 24 +-
.../querystats/QueryPlanOptimizerStatistics.java | 24 +-
.../querystats/QueryPlanOptimizerStats.java | 24 +-
.../function/arithmetic/AdditionResolver.java | 23 +-
.../function/arithmetic/DivisionResolver.java | 23 +-
.../function/arithmetic/ModulusResolver.java | 23 +-
.../arithmetic/MultiplicationResolver.java | 23 +-
.../function/arithmetic/SubtractionResolver.java | 23 +-
.../metadata/fetcher/TableDeviceSchemaFetcher.java | 6 +-
.../fetcher/TableDeviceSchemaValidator.java | 3 +-
.../plan/relational/planner/Assignments.java | 24 +-
.../relational/planner/ExpressionExtractor.java | 24 +-
.../planner/ExpressionSymbolInliner.java | 24 +-
.../plan/relational/planner/NodeAndMappings.java | 24 +-
.../plan/relational/planner/OrderingScheme.java | 23 +-
.../relational/planner/OrderingTranslator.java | 24 +-
.../plan/relational/planner/PlanBuilder.java | 24 +-
.../plan/relational/planner/PlanNodeSearcher.java | 24 +-
.../plan/relational/planner/QueryPlanner.java | 44 +-
.../plan/relational/planner/RelationPlan.java | 24 +-
.../plan/relational/planner/RelationPlanner.java | 24 +-
.../plan/relational/planner/SortOrder.java | 24 +-
.../plan/relational/planner/SubqueryPlanner.java | 24 +-
.../plan/relational/planner/SymbolAllocator.java | 24 +-
.../plan/relational/planner/SymbolsExtractor.java | 24 +-
.../relational/planner/TableLogicalPlanner.java | 23 +-
.../plan/relational/planner/TranslationMap.java | 24 +-
.../planner/distribute/SubPlanGenerator.java | 23 +-
.../distribute/TableDistributedPlanGenerator.java | 23 +-
.../distribute/TableDistributedPlanner.java | 24 +-
.../distribute/TableModelQueryFragmentPlanner.java | 24 +-
.../TableModelTypeProviderExtractor.java | 23 +-
.../planner/ir/DefaultTraversalVisitor.java | 23 +-
.../planner/ir/DeterminismEvaluator.java | 23 +-
.../planner/ir/ExpressionTreeRewriter.java | 1 +
.../plan/relational/planner/ir/IrUtils.java | 23 +-
.../planner/ir/ReplaceSymbolInExpression.java | 24 +-
.../planner/iterative/GroupReference.java | 24 +-
.../planner/iterative/IterativeOptimizer.java | 24 +-
.../plan/relational/planner/iterative/Lookup.java | 24 +-
.../plan/relational/planner/iterative/Memo.java | 24 +-
.../plan/relational/planner/iterative/Plans.java | 24 +-
.../relational/planner/iterative/RuleIndex.java | 23 +-
.../relational/planner/iterative/RuleStats.java | 24 +-
.../planner/iterative/RuleStatsRecorder.java | 24 +-
.../rule/EliminateLimitProjectWithTableScan.java | 24 +-
.../rule/EliminateLimitWithTableScan.java | 24 +-
.../planner/iterative/rule/InlineProjections.java | 24 +-
.../planner/iterative/rule/MergeFilters.java | 23 +-
.../iterative/rule/MergeLimitWithMergeSort.java | 24 +-
.../planner/iterative/rule/MergeLimits.java | 24 +-
.../iterative/rule/ProjectOffPushDownRule.java | 24 +-
.../iterative/rule/PruneAggregationColumns.java | 24 +-
.../rule/PruneAggregationSourceColumns.java | 24 +-
.../iterative/rule/PruneDistinctAggregation.java | 139 +++++
.../planner/iterative/rule/PruneFilterColumns.java | 24 +-
.../planner/iterative/rule/PruneLimitColumns.java | 24 +-
.../planner/iterative/rule/PruneOffsetColumns.java | 24 +-
.../iterative/rule/PruneOutputSourceColumns.java | 24 +-
.../iterative/rule/PruneProjectColumns.java | 24 +-
.../planner/iterative/rule/PruneSortColumns.java | 24 +-
.../iterative/rule/PruneTableScanColumns.java | 24 +-
.../iterative/rule/PushLimitThroughOffset.java | 23 +-
.../rule/RemoveRedundantIdentityProjections.java | 24 +-
.../rule/TransformUncorrelatedSubqueryToJoin.java | 24 +-
.../relational/planner/node/AggregationNode.java | 24 +-
.../relational/planner/node/ChildReplacer.java | 24 +-
.../planner/node/DeviceTableScanNode.java | 23 +-
.../planner/node/ExplainAnalyzeNode.java | 23 +-
.../plan/relational/planner/node/JoinNode.java | 3 +-
.../plan/relational/planner/node/LimitNode.java | 23 +-
.../plan/relational/planner/node/OffsetNode.java | 23 +-
.../plan/relational/planner/node/OutputNode.java | 23 +-
.../plan/relational/planner/node/Patterns.java | 24 +-
.../plan/relational/planner/node/ProjectNode.java | 23 +-
.../plan/relational/planner/node/SortNode.java | 23 +-
.../relational/planner/node/TableScanNode.java | 23 +-
.../optimizations/AdaptivePlanOptimizer.java | 23 +-
.../planner/optimizations/JoinUtils.java | 35 +-
.../optimizations/LogicalOptimizeFactory.java | 3 +
.../planner/optimizations/PlanOptimizer.java | 24 +-
.../PushAggregationIntoTableScan.java | 23 +-
.../PushLimitOffsetIntoTableScan.java | 23 +-
.../optimizations/PushPredicateIntoTableScan.java | 137 ++---
.../optimizations/QueryCardinalityUtil.java | 17 +
.../planner/optimizations/SymbolMapper.java | 24 +-
.../TransformAggregationToStreamable.java | 23 +-
.../optimizations/UnaliasSymbolReferences.java | 24 +-
.../plan/relational/sql/rewrite/ShowRewrite.java | 24 +-
.../relational/sql/rewrite/StatementRewrite.java | 24 +-
.../plan/relational/utils/DisjointSet.java | 1 +
.../plan/relational/utils/MoreLists.java | 24 +-
.../db/queryengine/plan/scheduler/IScheduler.java | 1 +
.../plan/statement/crud/InsertBaseStatement.java | 4 +-
.../crud/InsertMultiTabletsStatement.java | 2 +-
.../plan/statement/crud/InsertRowStatement.java | 9 +-
.../crud/InsertRowsOfOneDeviceStatement.java | 2 +-
.../plan/statement/crud/InsertRowsStatement.java | 2 +-
.../plan/statement/crud/InsertTabletStatement.java | 12 +-
.../plan/statement/crud/LoadTsFileStatement.java | 2 +-
.../plan/statement/pipe/PipeEnrichedStatement.java | 3 +-
.../AbstractCaseWhenThenColumnTransformer.java | 23 +-
.../column/TableCaseWhenThenColumnTransformer.java | 23 +-
.../column/TreeCaseWhenThenColumnTransformer.java | 23 +-
.../AbstractCastFunctionColumnTransformer.java | 23 +-
.../scalar/DateBinFunctionColumnTransformer.java | 23 +-
.../scalar/TryCastFunctionColumnTransformer.java | 23 +-
.../read/resp/info/impl/ShowSchemaResult.java | 1 +
.../read/resp/info/impl/ShowTimeSeriesResult.java | 1 +
.../schemaregion/utils/ResourceByPathUtils.java | 1 +
.../iotdb/db/service/RegionMigrateService.java | 49 +-
.../iotdb/db/service/metrics/WritingMetrics.java | 32 ++
.../db/service/metrics/file/TsFileMetrics.java | 33 ++
.../iotdb/db/storageengine/StorageEngine.java | 4 +
.../storageengine/buffer/CacheHitRatioMonitor.java | 4 +-
.../db/storageengine/dataregion/DataRegion.java | 7 +-
.../dataregion/DataRegionMetrics.java | 14 +-
.../impl/ReadPointCompactionPerformer.java | 6 +-
.../RepairUnsortedFileCompactionPerformer.java | 13 +
.../compaction/selector/ICompactionSelector.java | 1 +
.../compaction/selector/ICrossSpaceSelector.java | 1 +
.../selector/IInnerSeqSpaceSelector.java | 1 +
.../dataregion/memtable/AbstractMemTable.java | 1 -
.../memtable/TsFileProcessorInfoMetrics.java | 8 +-
.../dataregion/memtable/WritableMemChunk.java | 1 +
.../dataregion/modification/ModEntry.java | 2 +-
.../filescan/model/AlignedDeviceChunkMetaData.java | 1 +
.../dataregion/wal/buffer/WALBuffer.java | 6 +-
.../dataregion/wal/buffer/WALEntry.java | 2 +
.../dataregion/wal/buffer/WALInfoEntry.java | 34 ++
.../dataregion/wal/buffer/WALSignalEntry.java | 5 +
.../storageengine/dataregion/wal/node/WALNode.java | 4 +-
.../wal/utils/MemoryControlledWALEntryQueue.java | 81 +++
.../load/active/ActiveLoadTsFileLoader.java | 3 +-
.../rescon/memory/MemTableManager.java | 1 +
.../db/storageengine/rescon/memory/SystemInfo.java | 31 +-
.../rescon/memory/TsFileResourceManager.java | 18 +
.../task/subtask/SubscriptionConnectorSubtask.java | 9 -
.../org/apache/iotdb/db/utils/CommonUtils.java | 13 +-
.../org/apache/iotdb/db/utils/DateTimeUtils.java | 9 +-
.../java/org/apache/iotdb/db/utils/MmapUtil.java | 1 +
.../iotdb/db/utils/annotations/TableModel.java | 33 --
.../iotdb/db/utils/annotations/TreeModel.java | 33 --
.../schemaRegion/SchemaRegionTableDeviceTest.java | 13 +-
.../connector/PipeDataNodeThriftRequestTest.java | 22 +-
.../aggregation/TimeRangeIteratorTest.java | 53 +-
.../operator/AggregationOperatorTest.java | 7 +-
.../AlignedSeriesAggregationScanOperatorTest.java | 3 +-
.../operator/HorizontallyConcatOperatorTest.java | 5 +-
.../execution/operator/LastQueryOperatorTest.java | 9 +-
.../operator/LastQueryTreeSortOperatorTest.java | 9 +-
.../operator/MergeTreeSortOperatorTest.java | 5 +
.../execution/operator/OperatorMemoryTest.java | 16 +-
.../operator/RawDataAggregationOperatorTest.java | 3 +-
.../SeriesAggregationScanOperatorTest.java | 3 +-
.../SlidingWindowAggregationOperatorTest.java | 8 +-
.../operator/UpdateLastCacheOperatorTest.java | 3 +-
.../plan/optimization/LimitOffsetPushDownTest.java | 11 +-
.../plan/relational/analyzer/DistinctTest.java | 119 ++++
.../plan/relational/analyzer/JoinTest.java | 291 ++++++++--
.../analyzer/LimitOffsetPushDownTest.java | 23 +-
.../plan/relational/analyzer/TSBSMetadata.java | 23 +-
.../plan/relational/analyzer/TestMatadata.java | 23 +-
.../plan/relational/analyzer/TestPlanBuilder.java | 1 +
.../plan/relational/analyzer/TestUtils.java | 1 +
.../plan/relational/planner/SubqueryTest.java | 1 +
.../AggregationDeviceTableScanMatcher.java | 24 +-
.../planner/assertions/AggregationFunction.java | 24 +-
.../assertions/AggregationFunctionMatcher.java | 24 +-
.../assertions/AggregationFunctionProvider.java | 24 +-
.../planner/assertions/AggregationMatcher.java | 24 +-
.../planner/assertions/AggregationStepMatcher.java | 24 +-
.../planner/assertions/AliasMatcher.java | 24 +-
.../planner/assertions/AliasPresent.java | 24 +-
.../assertions/BaseStrictSymbolsMatcher.java | 24 +-
.../planner/assertions/ColumnReference.java | 24 +-
.../planner/assertions/DeviceTableScanMatcher.java | 24 +-
.../planner/assertions/EquiJoinClauseProvider.java | 28 +-
.../planner/assertions/ExchangeNodeMatcher.java | 24 +-
.../planner/assertions/ExpectedValueProvider.java | 24 +-
.../planner/assertions/ExpressionMatcher.java | 24 +-
.../planner/assertions/ExpressionVerifier.java | 24 +-
.../planner/assertions/FilterMatcher.java | 24 +-
.../assertions/IdentityProjectionMatcher.java | 24 +-
.../InformationSchemaTableScanMatcher.java | 24 +-
.../relational/planner/assertions/JoinMatcher.java | 24 +-
.../planner/assertions/LimitMatcher.java | 24 +-
.../relational/planner/assertions/MatchResult.java | 24 +-
.../relational/planner/assertions/Matcher.java | 24 +-
.../planner/assertions/NotPlanNodeMatcher.java | 24 +-
.../planner/assertions/OffsetMatcher.java | 24 +-
.../planner/assertions/OutputMatcher.java | 24 +-
.../relational/planner/assertions/PlanAssert.java | 24 +-
.../planner/assertions/PlanMatchPattern.java | 26 +-
.../planner/assertions/PlanMatchingState.java | 24 +-
.../planner/assertions/PlanMatchingVisitor.java | 24 +-
.../planner/assertions/PlanNodeMatcher.java | 24 +-
.../planner/assertions/PlanTestSymbol.java | 24 +-
.../planner/assertions/PredicateMatcher.java | 24 +-
.../planner/assertions/RvalueMatcher.java | 24 +-
.../relational/planner/assertions/SortMatcher.java | 24 +-
.../assertions/StrictAssignedSymbolsMatcher.java | 24 +-
.../planner/assertions/StrictSymbolsMatcher.java | 24 +-
.../relational/planner/assertions/SymbolAlias.java | 28 +-
.../planner/assertions/SymbolAliases.java | 24 +-
.../planner/assertions/TableScanMatcher.java | 24 +-
.../plan/relational/planner/assertions/Util.java | 24 +-
.../column/unary/scalar/DateBinFunctionTest.java | 23 +-
.../buffer/CacheHitRatioMonitorTest.java | 4 +-
.../compaction/AbstractCompactionTest.java | 1 +
.../compaction/CompactionTaskComparatorTest.java | 1 +
.../compaction/CompactionTaskManagerTest.java | 1 +
.../ReadPointCompactionPerformerTest.java | 1 +
.../inner/InnerCompactionSchedulerTest.java | 1 +
.../inner/InnerSpaceCompactionExceptionTest.java | 1 +
.../recover/SizeTieredCompactionRecoverTest.java | 1 +
.../repair/RepairUnsortedFileCompactionTest.java | 44 ++
.../utils/MultiTsFileDeviceIteratorTest.java | 1 +
.../dataregion/memtable/MemTableFlushTaskTest.java | 1 +
.../dataregion/tsfile/FakedTsFileResource.java | 1 +
.../rescon/memory/ResourceManagerTest.java | 40 ++
.../iotdb/metrics/core/IoTDBMetricManager.java | 2 +-
.../iotdb/metrics/AbstractMetricManager.java | 12 +-
.../iotdb/metrics/AbstractMetricService.java | 40 +-
.../iotdb/metrics/impl/DoNothingMetricManager.java | 2 +-
iotdb-core/node-commons/pom.xml | 4 +-
.../conf/iotdb-system.properties.template | 60 +-
.../async/AsyncPipeDataTransferServiceClient.java | 28 +-
.../commons/client/sync/ByteBuddyEnhancer.java | 75 +++
.../sync/SyncThriftClientWithErrorHandler.java | 30 +-
.../iotdb/commons/concurrent/ThreadName.java | 4 +
.../commons/concurrent/ThreadPoolMetrics.java | 207 +++----
.../WrappedScheduledExecutorService.java | 2 +
.../WrappedSingleThreadExecutorService.java | 2 +
.../WrappedSingleThreadScheduledExecutor.java | 2 +
.../threadpool/WrappedThreadPoolExecutor.java | 2 +
.../apache/iotdb/commons/conf/CommonConfig.java | 50 ++
.../iotdb/commons/conf/ConfigurationFileUtils.java | 25 +-
.../apache/iotdb/commons/conf/IoTDBConstant.java | 2 +
.../iotdb/commons/exception/ShutdownException.java | 1 +
.../PipeRuntimeConnectorCriticalException.java | 14 +-
...meConnectorRetryTimesConfigurableException.java | 3 +-
.../pipe/PipeRuntimeCriticalException.java | 14 +-
.../exception/pipe/PipeRuntimeException.java | 10 +-
.../commons/executable/ExecutableManager.java | 11 +
.../iotdb/commons/partition/DataPartition.java | 1 +
.../commons/partition/DataPartitionQueryParam.java | 1 +
.../apache/iotdb/commons/partition/Partition.java | 1 +
.../apache/iotdb/commons/path/MeasurementPath.java | 1 +
.../org/apache/iotdb/commons/path/PartialPath.java | 1 +
.../iotdb/commons/path/PathDeserializeUtil.java | 1 +
.../connector/protocol/IoTDBAirGapConnector.java | 6 +-
.../pipe/datastructure/pattern/TablePattern.java | 2 +-
.../commons/pipe/receiver/IoTDBFileReceiver.java | 76 ++-
.../commons/pipe/receiver/IoTDBReceiverAgent.java | 6 +-
.../filter/impl/StringValueFilterVisitor.java | 5 +-
.../schema/filter/impl/values/LikeFilter.java | 2 +-
.../apache/iotdb/commons/schema/ttl/TTLCache.java | 1 +
.../iotdb/commons/service/metric/enums/Metric.java | 1 +
.../meta/consumer/ConsumerGroupMeta.java | 34 +-
.../meta/consumer/ConsumerGroupMetaKeeper.java | 7 +-
.../iotdb/commons/trigger/TriggerInformation.java | 1 +
.../apache/iotdb/commons/trigger/TriggerTable.java | 1 +
.../commons/udf/utils/UDFBinaryTransformer.java | 1 +
.../commons/udf/utils/UDFDataTypeTransformer.java | 1 +
.../src/main/thrift/confignode.thrift | 4 +-
.../iotdb/library/dprofile/UDTFResample.java | 6 +-
.../iotdb/library/dquality/UDTFCompleteness.java | 3 +-
.../iotdb/library/dquality/UDTFConsistency.java | 2 +-
.../iotdb/library/dquality/UDTFTimeliness.java | 3 +-
.../iotdb/library/dquality/UDTFValidity.java | 3 +-
.../apache/iotdb/library/frequency/UDTFIFFT.java | 7 +-
.../library/series/UDTFConsecutiveSequences.java | 5 +-
.../library/series/UDTFConsecutiveWindows.java | 11 +-
.../java/org/apache/iotdb/library/util/Util.java | 90 ++-
pom.xml | 12 +-
518 files changed, 7975 insertions(+), 3948 deletions(-)
create mode 100644 .github/workflows/todos-check.yml
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/commit/{IoTDBRegionMigrateNormalIT.java
=> batch/IoTDBRegionMigrateNormalITForIoTV2Batch.java} (93%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/commit/{IoTDBRegionMigrateOtherIT.java
=> batch/IoTDBRegionMigrateOtherITForIoTV2Batch.java} (93%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/commit/{IoTDBRegionMigrateNormalIT.java
=> stream/IoTDBRegionMigrateNormalITForIoTV2Stream.java} (76%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/commit/{IoTDBRegionMigrateOtherIT.java
=> stream/IoTDBRegionMigrateOtherITForIoTV2Stream.java} (78%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/{IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV2IT.java
=>
batch/IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV2Batch.java}
(97%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/{IoTDBRegionMigrateDataNodeCrashForIoTV2IT.java
=> batch/IoTDBRegionMigrateDataNodeCrashForIoTV2Batch.java} (97%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/{IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV2IT.java
=> batch/IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV2Batch.java}
(97%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/{IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV2IT.java
=>
batch/IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV2Batch.java}
(97%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/{IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV2IT.java
=>
stream/IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV2Stream.java}
(83%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/{iotv1/IoTDBRegionMigrateDataNodeCrashForIoTV1IT.java
=> iotv2/stream/IoTDBRegionMigrateDataNodeCrashForIoTV2Stream.java} (89%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/{IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV2IT.java
=>
stream/IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV2Stream.java}
(81%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/{IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV2IT.java
=>
stream/IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV2Stream.java}
(81%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/iotv2/{IoTDBRegionMigrateClusterCrashIoTV2IT.java
=> batch/IoTDBRegionMigrateClusterCrashIoTV2Batch.java} (97%)
rename
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/iotv2/{IoTDBRegionMigrateConfigNodeCrashIoTV2IT.java
=> batch/IoTDBRegionMigrateConfigNodeCrashIoTV2Batch.java} (98%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/{iotv1/IoTDBRegionMigrateClusterCrashIoTV1IT.java
=> iotv2/stream/IoTDBRegionMigrateClusterCrashIoTV2Stream.java} (94%)
copy
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/{iotv1/IoTDBRegionMigrateConfigNodeCrashIoTV1IT.java
=> iotv2/stream/IoTDBRegionMigrateConfigNodeCrashIoTV2Stream.java} (96%)
delete mode 100644
integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBLoadPlainTsFileIT.java
copy
integration-test/src/test/java/org/apache/iotdb/subscription/it/DisplayName.java
=>
iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/util/CollectionUtils.java
(66%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/receiver/visitor/{PipeStatementDataTypeConvertExecutionVisitor.java
=> PipeTableStatementDataTypeConvertExecutionVisitor.java} (68%)
rename
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/receiver/visitor/{PipeStatementDataTypeConvertExecutionVisitor.java
=> PipeTreeStatementDataTypeConvertExecutionVisitor.java} (95%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneDistinctAggregation.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/wal/utils/MemoryControlledWALEntryQueue.java
delete mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/annotations/TableModel.java
delete mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/annotations/TreeModel.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/DistinctTest.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/client/sync/ByteBuddyEnhancer.java