This is an automated email from the ASF dual-hosted git repository.
caogaofei pushed a change to branch beyyes/joinOperator
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from bf2ef59b245 perfect join operator impl
add a43c0e3ac74 fix bug (#13396)
add 271270fa776 Fix default authentication of C++ Client (#13363)
add 6b5aa85d762 Bump torch from 2.1.0 to 2.2.0 in /iotdb-core/ainode
(#13336)
add 27f90650fe8 Fix query stuck caused by restarting DN while doing query
add beabc195167 Pipe: Fix TsFileInsertionDataContainer may generate
ClassCastException (#13415)
add 717c2a71bf4 Subscription: reduce the length of the stringified
subscription event & do not print warn logs for eagerly pollable events (#13405)
add 8aa36e51e01 Introduce JoinNode in logical plan and distributed plan
add 1765f067698 Make status code and error msg be consistent in any case
add 9cef05eecbb Change version to 2.0.0-SNAPSHOT
add 6f5f6a5b7e1 Calculate metadata memory when estimate compaction task
memory (#13404)
add 04fa109aff9 clear AsyncTsFileResourceRecoverTaskList after data region
recoverd (#13412)
add 566b11214b0 Fix error log when drop database or migrate region (#13398)
add 16a6eea2147 modify pom.xml (#13376)
add 62a04dc1676 Properly handle the case where a single IndexedRequest
contains multiple “delete PlanNode” operations on the receiving end of
IoTConsensus. #13418
add bfdbcb1c721 Pipe: Optimized the opc key store behaviour (#13417)
add 8ee9863838b Repair task may create compaction log file twice in
sequence and unsequence dir (#13413)
new 9f1d925a566 merge with master
add 2a015fc4ed8 AINode: Fix restart functionality and enhance error
clarity (#13424)
add d982a220cb4 [Inconsistent copies] Enhance IoTConsensus Retry (#13395)
add 8a2aba23c06 Load: Support remote load in import-tsfile script (#13352)
add c9d6dd977c9 Revert "Load: Support remote load in import-tsfile script
(#13352)" (#13437)
add a660d80c7b9 Fix: remote load in import-tsfile script (#13438)
add 0ac492f362b Support "`" & disable "." in database name
add 2cbd0777ea4 Check decoded page size in compaction (#13380)
add ba944cba052 Automatically trigger CI for active non-committer again
(#13442)
add ba1bac55203 Make the JDK version check in remove-datanode.bat
consistent with other .bat files #13445
add 0be6fdbe545 Pipe: Tolerate the error of listening queues in cluster
restart (#13434)
add cb09e2fdecc Fix table name serialization for table-model insertion
(#13446)
add 47689551c50 Support the pushdown of between predicate to schema region
add d502232b2df Rename IoTDBShutdownHook to DataNodeShutdownHook & Delay
the execution of the “clear lock file” step in DataNodeShutdownHook (#13452)
add 67bee6e3a16 Automatically trigger CI for active non-committer #13450
add 3e882a41d50 Pipe: refactor committer key for event committer after
pipe restart to avoid non-monotonic increase (#13416)
add 74fb62206b8 Fixed the bug that schema related query fails when get
from cache with complicated filter
add 15365ffe363 Allow duplicated column names in table model
add 77ce37f0940 Fix compaction device info cache (#13453)
add b7562e3cd17 fix index out of bound exception in settle compaction task
(#13462)
add 900de3e9098 Pipe: Added conflict detection of params for reusing of
OPCUA server (#13458)
add f43cac5713b Add deserializeFromWAL and related code for
ContinuousSameSearchIndexSeparatorNode (#13464)
add f3b76555802 [Py-Client] Support table model with python client (#13443)
add cfc4eee7c91 AINode: Refined architecture for enhanced modularity &
Added basic IT (#13423)
add 15469a276ff Optimize column batch selection when there are many value
columns (#13456)
add 4aff3bba3f4 [PY-Client] fix python client package issue (#13468)
add 9dd8d3be95c Pipe: Remove and close asynchronous connector manager when
all clients are useless (#13399)
add 2ec74a41a63 Support FE of Aggregation in TableModel
new af66cb885f0 Merge branch 'master' into beyyes/joinOperator
The 2 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:
.asf.yaml | 2 -
.github/workflows/multi-language-client.yml | 17 +-
code-coverage/pom.xml | 2 +-
data.zip | Bin 0 -> 101329 bytes
distribution/pom.xml | 10 +-
example/client-cpp-example/pom.xml | 2 +-
example/jdbc/pom.xml | 2 +-
example/mqtt-customize/pom.xml | 2 +-
example/mqtt/pom.xml | 2 +-
example/pipe-count-point-processor/pom.xml | 2 +-
example/pipe-opc-ua-sink/pom.xml | 2 +-
example/pom.xml | 2 +-
example/rest-java-example/pom.xml | 2 +-
example/schema/pom.xml | 2 +-
example/session/pom.xml | 2 +-
example/trigger/pom.xml | 2 +-
example/udf/pom.xml | 2 +-
integration-test/pom.xml | 32 +-
.../org/apache/iotdb/it/env/cluster/env/AIEnv.java | 2 +-
.../java/org/apache/iotdb/ainode/it/AIEnvIT.java | 80 --
.../org/apache/iotdb/ainode/it/AINodeBasicIT.java | 228 ++++
.../org/apache/iotdb/db/it/IoTDBRecoverIT.java | 40 +-
.../apache/iotdb/db/it/IoTDBRecoverUnclosedIT.java | 29 +-
.../db/it/aggregation/IoTDBAggregationIT.java | 237 ++--
.../aggregation/IoTDBAggregationLargeDataIT.java | 133 +-
.../aggregation/IoTDBAggregationSmallDataIT.java | 113 +-
.../iotdb/db/it/aggregation/IoTDBCountIfIT.java | 2 +-
.../iotdb/db/it/aggregation/IoTDBModeIT.java | 2 +-
.../db/it/aggregation/IoTDBTimeDurationIT.java | 2 +-
.../scalar/IoTDBSubStringFunctionIT.java | 6 +-
.../db/it/orderBy/IoTDBOrderByForDebugIT.java | 1406 --------------------
.../it/schema/IoTDBDeleteAlignedTimeseriesIT.java | 8 +-
.../db/it/schema/IoTDBDeleteTimeSeriesIT.java | 52 +-
.../iotdb/db/it/udaf/IoTDBUDAFNormalQueryIT.java | 44 +-
.../iotdb/db/it/udf/IoTDBUDTFHybridQueryIT.java | 6 +-
.../iotdb/pipe/it/single/IoTDBPipeOPCUAIT.java | 50 +-
.../scalar/IoTDBSubStringFunctionTableIT.java | 2 +-
.../it/query/recent/IoTDBNullIdQueryIT.java | 20 +
.../relational/it/schema/IoTDBDatabaseIT.java | 119 +-
.../iotdb/relational/it/schema/IoTDBDeviceIT.java | 11 +-
.../src/test/resources/ainode-example/config.yaml | 5 +
.../src/test/resources/ainode-example/model.pt | Bin 0 -> 1906 bytes
iotdb-api/external-api/pom.xml | 2 +-
iotdb-api/pipe-api/pom.xml | 2 +-
.../configuration/PipeRuntimeEnvironment.java | 2 +
iotdb-api/pom.xml | 2 +-
iotdb-api/trigger-api/pom.xml | 2 +-
iotdb-api/udf-api/pom.xml | 2 +-
iotdb-client/cli/pom.xml | 28 +-
.../cli/src/assembly/resources/tools/backup.bat | 2 +-
.../cli/src/assembly/resources/tools/backup.sh | 2 +-
.../src/assembly/resources/tools/export-data.bat | 2 +-
.../src/assembly/resources/tools/export-data.sh | 2 +-
.../src/assembly/resources/tools/export-schema.bat | 2 +-
.../src/assembly/resources/tools/export-schema.sh | 2 +-
.../src/assembly/resources/tools/export-tsfile.bat | 2 +-
.../src/assembly/resources/tools/export-tsfile.sh | 2 +-
.../src/assembly/resources/tools/import-data.bat | 2 +-
.../src/assembly/resources/tools/import-data.sh | 2 +-
.../src/assembly/resources/tools/import-schema.bat | 2 +-
.../src/assembly/resources/tools/import-schema.sh | 2 +-
.../src/assembly/resources/tools/load-tsfile.bat | 2 +-
.../src/assembly/resources/tools/load-tsfile.sh | 2 +-
.../java/org/apache/iotdb/cli/AbstractCli.java | 4 +-
.../iotdb/tool/{ => backup}/IoTDBDataBackTool.java | 3 +-
.../iotdb/tool/{ => data}/AbstractDataTool.java | 2 +-
.../apache/iotdb/tool/{ => data}/ExportData.java | 2 +-
.../apache/iotdb/tool/{ => data}/ImportData.java | 2 +-
.../tool/{ => schema}/AbstractSchemaTool.java | 2 +-
.../iotdb/tool/{ => schema}/ExportSchema.java | 2 +-
.../iotdb/tool/{ => schema}/ImportSchema.java | 2 +-
.../tool/{ => tsfile}/AbstractTsFileTool.java | 2 +-
.../iotdb/tool/{ => tsfile}/ExportTsFile.java | 2 +-
.../iotdb/tool/{ => tsfile}/ImportTsFile.java | 302 +----
.../apache/iotdb/tool/tsfile/ImportTsFileBase.java | 243 ++++
.../iotdb/tool/tsfile/ImportTsFileLocally.java | 53 +
.../iotdb/tool/tsfile/ImportTsFileRemotely.java | 338 +++++
.../iotdb/tool/tsfile/ImportTsFileScanTool.java | 95 ++
.../org/apache/iotdb/tool/WriteDataFileTest.java | 2 +
iotdb-client/client-cpp/pom.xml | 4 +-
iotdb-client/client-cpp/src/main/Session.h | 2 +-
iotdb-client/client-py/TableModelSessionExample.py | 154 +++
.../client-py/TableModelSessionPoolExample.py | 160 +++
iotdb-client/client-py/iotdb/Session.py | 113 +-
iotdb-client/client-py/iotdb/SessionPool.py | 11 +
iotdb-client/client-py/iotdb/utils/Field.py | 15 +-
.../client-py/iotdb/utils/IoTDBConstants.py | 6 +
.../client-py/iotdb/utils/IoTDBRpcDataSet.py | 16 +-
iotdb-client/client-py/iotdb/utils/NumpyTablet.py | 58 +-
.../client-py/iotdb/utils/SessionDataSet.py | 4 +-
iotdb-client/client-py/iotdb/utils/Tablet.py | 67 +-
iotdb-client/client-py/pom.xml | 8 +-
iotdb-client/client-py/release.sh | 1 +
.../tests/integration/test_relational_session.py | 143 ++
iotdb-client/isession/pom.xml | 8 +-
.../org/apache/iotdb/isession/SessionDataSet.java | 34 +-
iotdb-client/jdbc/pom.xml | 8 +-
.../org/apache/iotdb/jdbc/IoTDBJDBCResultSet.java | 42 +-
.../java/org/apache/iotdb/jdbc/IoTDBStatement.java | 6 +-
.../iotdb/jdbc/IoTDBDatabaseMetadataTest.java | 6 +-
.../apache/iotdb/jdbc/IoTDBJDBCResultSetTest.java | 9 +
iotdb-client/pom.xml | 2 +-
iotdb-client/service-rpc/pom.xml | 6 +-
.../java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java | 443 +++---
iotdb-client/session/pom.xml | 10 +-
.../apache/iotdb/session/SessionConnection.java | 15 +-
.../org/apache/iotdb/session/ThriftConnection.java | 3 +-
.../apache/iotdb/session/pool/SessionPoolTest.java | 10 +-
iotdb-core/ainode/iotdb/ainode/client.py | 225 +---
iotdb-core/ainode/iotdb/ainode/config.py | 240 ++--
iotdb-core/ainode/iotdb/ainode/constant.py | 1 -
iotdb-core/ainode/iotdb/ainode/exception.py | 23 +-
iotdb-core/ainode/iotdb/ainode/factory.py | 272 ----
iotdb-core/ainode/iotdb/ainode/handler.py | 105 +-
iotdb-core/ainode/iotdb/ainode/log.py | 45 +-
.../ainode/iotdb/ainode/manager}/__init__.py | 0
.../ainode/iotdb/ainode/manager/cluster_manager.py | 41 +
.../{inference.py => manager/inference_manager.py} | 176 ++-
.../ainode/iotdb/ainode/manager/model_manager.py | 84 ++
.../ainode/iotdb/ainode/model}/__init__.py | 0
.../built_in_model_factory.py} | 315 ++++-
.../ainode/iotdb/ainode/model/model_factory.py | 237 ++++
.../ainode/iotdb/ainode/model/model_storage.py | 113 ++
iotdb-core/ainode/iotdb/ainode/parser.py | 191 ---
iotdb-core/ainode/iotdb/ainode/script.py | 177 ++-
iotdb-core/ainode/iotdb/ainode/service.py | 100 +-
iotdb-core/ainode/iotdb/ainode/storage.py | 318 -----
iotdb-core/ainode/iotdb/ainode/util.py | 79 --
.../ainode/iotdb/ainode/util}/__init__.py | 0
.../ainode/{encryption.py => util/decorator.py} | 9 +
iotdb-core/ainode/iotdb/ainode/util/lock.py | 84 ++
iotdb-core/ainode/iotdb/ainode/{ => util}/serde.py | 0
.../ainode/iotdb/ainode/util/status.py | 31 +-
iotdb-core/ainode/poetry.lock | 229 +++-
iotdb-core/ainode/pom.xml | 10 +-
iotdb-core/antlr/pom.xml | 2 +-
iotdb-core/confignode/pom.xml | 26 +-
.../iotdb/confignode/manager/ConfigManager.java | 36 +-
.../manager/node/ClusterNodeStartUtils.java | 26 +
.../pipe/extractor/ConfigRegionListeningQueue.java | 19 +-
.../manager/schema/ClusterSchemaManager.java | 5 +-
.../persistence/schema/ClusterSchemaInfo.java | 223 ++--
iotdb-core/consensus/pom.xml | 14 +-
.../consensus/iot/client/DispatchLogHandler.java | 41 +-
iotdb-core/datanode/pom.xml | 40 +-
.../assembly/resources/sbin/remove-datanode.bat | 12 +-
.../dataregion/DataExecutionVisitor.java | 8 +-
.../dataregion/DataRegionStateMachine.java | 57 +-
.../IoTConsensusDataRegionStateMachine.java | 4 +-
.../client/IoTDBDataNodeAsyncClientManager.java | 49 +-
.../protocol/legacy/IoTDBLegacyPipeConnector.java | 12 +-
.../connector/protocol/opcua/OpcUaConnector.java | 64 +-
.../protocol/opcua/OpcUaKeyStoreLoader.java | 36 +-
.../connector/protocol/opcua/OpcUaNameSpace.java | 18 +-
.../protocol/opcua/OpcUaServerBuilder.java | 52 +-
.../pipeconsensus/PipeConsensusAsyncConnector.java | 9 +-
.../async/IoTDBDataRegionAsyncConnector.java | 8 +
.../tablet/PipeInsertNodeTabletInsertionEvent.java | 6 +-
.../tablet/TabletInsertionDataContainer.java | 4 +-
.../TsFileInsertionQueryDataTabletIterator.java | 2 +-
.../scan/TsFileInsertionScanDataContainer.java | 17 +-
.../event/realtime/PipeRealtimeEventFactory.java | 2 +-
.../schemaregion/SchemaRegionListeningQueue.java | 4 +-
.../processor/aggregate/AggregateProcessor.java | 5 +-
.../visitor/PipePlanToStatementVisitor.java | 2 +-
.../protocol/thrift/impl/ClientRPCServiceImpl.java | 3 +-
.../thrift/impl/DataNodeRegionManager.java | 22 +-
.../queryengine/common/header/DatasetHeader.java | 37 +-
.../queryengine/execution/QueryStateMachine.java | 13 +
.../execution/exchange/source/SourceHandle.java | 2 +-
.../fragment/FragmentInstanceManager.java | 3 +
.../execution/schedule/AbstractDriverThread.java | 4 +-
.../plan/analyze/ClusterPartitionFetcher.java | 12 +-
.../cache/schema/DataNodeDevicePathCache.java | 12 +-
.../queryengine/plan/execution/QueryExecution.java | 2 +
.../execution/config/TableConfigTaskVisitor.java | 4 +-
.../config/executor/ClusterConfigTaskExecutor.java | 150 +--
.../config/metadata/relational/CreateDBTask.java | 4 +-
.../config/metadata/relational/ShowTablesTask.java | 2 +-
.../TableModelStatementMemorySourceVisitor.java | 5 +-
.../plan/planner/TableOperatorGenerator.java | 13 +
.../planner/distribution/DistributionPlanner.java | 2 +-
.../plan/planner/plan/node/PlanGraphPrinter.java | 58 +
.../plan/planner/plan/node/PlanNodeType.java | 8 +
.../plan/planner/plan/node/PlanVisitor.java | 12 +
.../plan/node/pipe/PipeEnrichedInsertNode.java | 8 +-
.../ContinuousSameSearchIndexSeparatorNode.java | 83 +-
.../plan/planner/plan/node/write/InsertNode.java | 33 +-
.../planner/plan/node/write/InsertRowNode.java | 21 +-
.../planner/plan/node/write/InsertRowsNode.java | 2 +-
.../plan/node/write/InsertRowsOfOneDeviceNode.java | 12 +-
.../planner/plan/node/write/InsertTabletNode.java | 24 +-
.../plan/node/write/RelationalInsertRowNode.java | 20 +-
.../plan/node/write/RelationalInsertRowsNode.java | 2 +-
.../node/write/RelationalInsertTabletNode.java | 13 +-
.../plan/relational/analyzer/Analysis.java | 38 +
.../relational/analyzer/ExpressionAnalyzer.java | 27 +
.../PredicatePushIntoMetadataChecker.java | 11 +-
.../schema/CheckSchemaPredicateVisitor.java | 6 +-
.../ConvertSchemaPredicateToFilterVisitor.java | 105 +-
.../schema/ExtractPredicateColumnNameVisitor.java | 27 +-
.../relational/metadata/FunctionNullability.java | 10 +
.../plan/relational/metadata/Metadata.java | 40 +-
.../metadata/TableBuiltinAggregationFunction.java | 116 ++
.../relational/metadata/TableMetadataImpl.java | 8 +-
.../metadata/fetcher/SchemaPredicateUtil.java | 70 +-
.../metadata/fetcher/TableDeviceSchemaFetcher.java | 26 +-
.../plan/relational/planner/NodeAndMappings.java | 38 +
.../plan/relational/planner/QueryPlanner.java | 357 +++++
.../plan/relational/planner/SymbolAllocator.java | 10 +
.../plan/relational/planner/SymbolsExtractor.java | 27 +-
.../relational/planner/TableLogicalPlanner.java | 24 +-
.../plan/relational/planner/TableModelPlanner.java | 6 +-
.../distribute/TableDistributedPlanGenerator.java | 194 ++-
.../distribute/TableDistributedPlanner.java | 18 +-
.../TableModelTypeProviderExtractor.java | 12 +
.../iterative/rule/PruneAggregationColumns.java | 47 +
.../rule/PruneAggregationSourceColumns.java | 54 +
.../iterative/rule/PruneTableScanColumns.java | 5 +-
.../relational/planner/node/AggregationNode.java | 542 ++++++++
.../planner/node/AggregationTableScanNode.java | 261 ++++
.../plan/relational/planner/node/Patterns.java | 9 +-
.../relational/planner/node/TableScanNode.java | 45 +-
.../optimizations/LogicalOptimizeFactory.java | 17 +
.../PushAggregationIntoTableScan.java | 226 ++++
.../PushLimitOffsetIntoTableScan.java | 7 +
.../optimizations/PushPredicateIntoTableScan.java | 76 ++
.../planner/optimizations/SymbolMapper.java | 248 ++++
.../TransformAggregationToStreamable.java | 160 +++
.../optimizations/TransformSortToStreamSort.java | 26 +-
.../optimizations/UnaliasSymbolReferences.java | 470 +++++++
.../relational/planner/optimizations/Util.java | 189 +++
.../scheduler/FixedRateFragInsStateTracker.java | 16 +-
.../scheduler/FragmentInstanceDispatcherImpl.java | 4 +
.../plan/statement/crud/InsertTabletStatement.java | 2 +-
.../apache/iotdb/db/schemaengine/SchemaEngine.java | 28 +-
.../metric/SchemaRegionCachedMetric.java | 2 +-
.../rescon/MemSchemaRegionStatistics.java | 31 +-
.../schemaregion/impl/SchemaRegionMemoryImpl.java | 10 +-
.../schemaregion/impl/SchemaRegionPBTreeImpl.java | 2 +-
.../mtree/impl/mem/MTreeBelowSGMemoryImpl.java | 301 +++--
.../java/org/apache/iotdb/db/service/DataNode.java | 2 +-
...ShutdownHook.java => DataNodeShutdownHook.java} | 14 +-
.../iotdb/db/storageengine/StorageEngine.java | 1 +
.../db/storageengine/dataregion/DataRegion.java | 14 +-
.../execute/task/InnerSpaceCompactionTask.java | 3 +-
.../task/InsertionCrossSpaceCompactionTask.java | 8 +-
.../task/RepairUnsortedFileCompactionTask.java | 7 -
.../execute/task/SettleCompactionTask.java | 8 +
...BatchedFastAlignedSeriesCompactionExecutor.java | 41 +-
...edReadChunkAlignedSeriesCompactionExecutor.java | 42 +-
.../utils/AlignedSeriesBatchCompactionUtils.java | 161 ++-
.../ReadChunkAlignedSeriesCompactionExecutor.java | 94 +-
.../compaction/io/CompactionTsFileReader.java | 27 +
.../estimator/CompactionEstimateUtils.java | 48 +
.../FastCompactionInnerCompactionEstimator.java | 13 +-
.../FastCrossSpaceCompactionEstimator.java | 12 +-
.../ReadChunkInnerCompactionEstimator.java | 15 +-
.../selector/utils/TsFileResourceCandidate.java | 3 +-
.../dataregion/snapshot/SnapshotLoader.java | 7 +-
.../timeindex/FileTimeIndexCacheRecorder.java | 7 +-
.../dataregion/wal/buffer/WALEntry.java | 3 +
.../dataregion/wal/io/WALInputStream.java | 1 -
.../file/UnsealedTsFileRecoverPerformer.java | 3 +
.../broker/SubscriptionPrefetchingQueue.java | 7 +-
.../db/subscription/event/SubscriptionEvent.java | 22 +-
.../event/batch/SubscriptionPipeEventBatches.java | 4 +-
.../batch/SubscriptionPipeTabletEventBatch.java | 21 +-
.../db/trigger/executor/TriggerFireVisitor.java | 8 +-
.../apache/iotdb/db/utils/ErrorHandlingUtils.java | 7 +-
.../schemaRegion/AbstractSchemaRegionTest.java | 5 +-
.../SchemaRegionSimpleRecoverTest.java | 3 +-
.../event/TsFileInsertionDataContainerTest.java | 16 +-
...nuousSameSearchIndexSeparatorNodeSerDeTest.java | 56 +
.../node/write/InsertRowsNodeSerdeTest.java | 228 ++--
.../write/InsertRowsOfOneDeviceNodeSerdeTest.java | 2 +-
.../node/write/InsertTabletNodeSerdeTest.java | 86 +-
.../planner/node/write/WritePlanNodeSplitTest.java | 28 +-
.../plan/relational/analyzer/AggregationTest.java | 584 ++++++++
.../plan/relational/analyzer/AnalyzerTest.java | 15 +
.../plan/relational/analyzer/JoinTest.java | 68 +-
.../relational/analyzer/MockTSBSDataPartition.java | 173 +++
.../plan/relational/analyzer/SubQueryTest.java | 54 +-
.../{TestMatadata.java => TSBSMetadata.java} | 303 +++--
.../plan/relational/analyzer/TSBSTest.java | 1342 +++++++++++++++++++
.../plan/relational/analyzer/TestMatadata.java | 8 +-
.../plan/relational/planner/ExampleTest.java | 13 +-
.../plan/relational/planner/PlanTester.java | 34 +-
.../planner/assertions/AggregationFunction.java | 62 +
.../assertions/AggregationFunctionMatcher.java | 72 +
.../assertions/AggregationFunctionProvider.java | 87 ++
.../planner/assertions/AggregationMatcher.java | 145 ++
.../planner/assertions/AggregationStepMatcher.java | 57 +
.../assertions/AggregationTableScanMatcher.java | 186 +++
.../planner/assertions/ColumnReference.java | 10 +-
.../planner/assertions/ExpectedValueProvider.java | 30 +
.../planner/assertions/PlanMatchPattern.java | 179 ++-
.../planner/assertions/PredicateMatcher.java | 46 +
.../planner/assertions/TableScanMatcher.java | 10 +-
.../InsertionCrossSpaceCompactionSelectorTest.java | 76 ++
...nkCompactionPerformerWithAlignedSeriesTest.java | 30 +
.../settle/SettleCompactionTaskTest.java | 31 +
.../compaction/utils/BatchCompactionUtilsTest.java | 12 +-
.../wal/node/ConsensusReqReaderTest.java | 2 +-
iotdb-core/metrics/core/pom.xml | 4 +-
iotdb-core/metrics/interface/pom.xml | 8 +-
iotdb-core/metrics/pom.xml | 2 +-
iotdb-core/node-commons/pom.xml | 24 +-
.../iotdb/commons/concurrent/ThreadName.java | 4 +-
.../org/apache/iotdb/commons/path/PartialPath.java | 19 +
.../plugin/env/PipeTaskRuntimeEnvironment.java | 4 +-
.../iotdb/commons/pipe/event/EnrichedEvent.java | 7 +-
.../iotdb/commons/pipe/progress/CommitterKey.java | 95 ++
.../pipe/progress/PipeEventCommitManager.java | 97 +-
.../commons/pipe/progress/PipeEventCommitter.java | 34 +-
.../org/apache/iotdb/commons/utils/PathUtils.java | 4 +-
iotdb-core/pom.xml | 2 +-
iotdb-core/relational-grammar/pom.xml | 2 +-
iotdb-protocol/openapi/pom.xml | 2 +-
iotdb-protocol/pom.xml | 2 +-
iotdb-protocol/thrift-ainode/pom.xml | 4 +-
iotdb-protocol/thrift-commons/pom.xml | 2 +-
iotdb-protocol/thrift-confignode/pom.xml | 4 +-
iotdb-protocol/thrift-consensus/pom.xml | 4 +-
iotdb-protocol/thrift-datanode/pom.xml | 4 +-
.../thrift-datanode/src/main/thrift/client.thrift | 1 +
library-udf/pom.xml | 4 +-
pom.xml | 5 +-
328 files changed, 12890 insertions(+), 5718 deletions(-)
create mode 100644 data.zip
delete mode 100644
integration-test/src/test/java/org/apache/iotdb/ainode/it/AIEnvIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/ainode/it/AINodeBasicIT.java
delete mode 100644
integration-test/src/test/java/org/apache/iotdb/db/it/orderBy/IoTDBOrderByForDebugIT.java
create mode 100644
integration-test/src/test/resources/ainode-example/config.yaml
create mode 100644 integration-test/src/test/resources/ainode-example/model.pt
rename iotdb-client/cli/src/main/java/org/apache/iotdb/tool/{ =>
backup}/IoTDBDataBackTool.java (99%)
rename iotdb-client/cli/src/main/java/org/apache/iotdb/tool/{ =>
data}/AbstractDataTool.java (99%)
rename iotdb-client/cli/src/main/java/org/apache/iotdb/tool/{ =>
data}/ExportData.java (99%)
rename iotdb-client/cli/src/main/java/org/apache/iotdb/tool/{ =>
data}/ImportData.java (99%)
rename iotdb-client/cli/src/main/java/org/apache/iotdb/tool/{ =>
schema}/AbstractSchemaTool.java (99%)
rename iotdb-client/cli/src/main/java/org/apache/iotdb/tool/{ =>
schema}/ExportSchema.java (99%)
rename iotdb-client/cli/src/main/java/org/apache/iotdb/tool/{ =>
schema}/ImportSchema.java (99%)
rename iotdb-client/cli/src/main/java/org/apache/iotdb/tool/{ =>
tsfile}/AbstractTsFileTool.java (99%)
rename iotdb-client/cli/src/main/java/org/apache/iotdb/tool/{ =>
tsfile}/ExportTsFile.java (99%)
rename iotdb-client/cli/src/main/java/org/apache/iotdb/tool/{ =>
tsfile}/ImportTsFile.java (50%)
create mode 100644
iotdb-client/cli/src/main/java/org/apache/iotdb/tool/tsfile/ImportTsFileBase.java
create mode 100644
iotdb-client/cli/src/main/java/org/apache/iotdb/tool/tsfile/ImportTsFileLocally.java
create mode 100644
iotdb-client/cli/src/main/java/org/apache/iotdb/tool/tsfile/ImportTsFileRemotely.java
create mode 100644
iotdb-client/cli/src/main/java/org/apache/iotdb/tool/tsfile/ImportTsFileScanTool.java
create mode 100644 iotdb-client/client-py/TableModelSessionExample.py
create mode 100644 iotdb-client/client-py/TableModelSessionPoolExample.py
create mode 100644
iotdb-client/client-py/tests/integration/test_relational_session.py
delete mode 100644 iotdb-core/ainode/iotdb/ainode/factory.py
copy {iotdb-client/client-py/iotdb =>
iotdb-core/ainode/iotdb/ainode/manager}/__init__.py (100%)
create mode 100644 iotdb-core/ainode/iotdb/ainode/manager/cluster_manager.py
rename iotdb-core/ainode/iotdb/ainode/{inference.py =>
manager/inference_manager.py} (66%)
create mode 100644 iotdb-core/ainode/iotdb/ainode/manager/model_manager.py
copy {iotdb-client/client-py/iotdb =>
iotdb-core/ainode/iotdb/ainode/model}/__init__.py (100%)
rename iotdb-core/ainode/iotdb/ainode/{attribute.py =>
model/built_in_model_factory.py} (67%)
create mode 100644 iotdb-core/ainode/iotdb/ainode/model/model_factory.py
create mode 100644 iotdb-core/ainode/iotdb/ainode/model/model_storage.py
delete mode 100644 iotdb-core/ainode/iotdb/ainode/parser.py
delete mode 100644 iotdb-core/ainode/iotdb/ainode/storage.py
delete mode 100644 iotdb-core/ainode/iotdb/ainode/util.py
copy {iotdb-client/client-py/iotdb =>
iotdb-core/ainode/iotdb/ainode/util}/__init__.py (100%)
rename iotdb-core/ainode/iotdb/ainode/{encryption.py => util/decorator.py}
(78%)
create mode 100644 iotdb-core/ainode/iotdb/ainode/util/lock.py
rename iotdb-core/ainode/iotdb/ainode/{ => util}/serde.py (100%)
copy iotdb-client/client-py/release.sh =>
iotdb-core/ainode/iotdb/ainode/util/status.py (58%)
mode change 100755 => 100644
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableBuiltinAggregationFunction.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/NodeAndMappings.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneAggregationColumns.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneAggregationSourceColumns.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AggregationNode.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AggregationTableScanNode.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/PushAggregationIntoTableScan.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/SymbolMapper.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/TransformAggregationToStreamable.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/UnaliasSymbolReferences.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/Util.java
rename
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/{IoTDBShutdownHook.java
=> DataNodeShutdownHook.java} (94%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/planner/node/write/ContinuousSameSearchIndexSeparatorNodeSerDeTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AggregationTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/MockTSBSDataPartition.java
copy
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/{TestMatadata.java
=> TSBSMetadata.java} (51%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TSBSTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/AggregationFunction.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/AggregationFunctionMatcher.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/AggregationFunctionProvider.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/AggregationMatcher.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/AggregationStepMatcher.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/AggregationTableScanMatcher.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/ExpectedValueProvider.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/PredicateMatcher.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/progress/CommitterKey.java