This is an automated email from the ASF dual-hosted git repository.
tanxinyu pushed a change to branch auto_trigger_ci_for_non_committer
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from 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
add d4074920d44 Load: modify TsFile version check to enable V3 load to V4
(#13400)
add 453bc7b39cd Remove redundant closing of consensus layer in DataNode
shutdown process (#13478)
add dd900cfa27b Support dictionary encoding for STRING & refactor encoding
support condition (#13474)
add f1d6b3fa4cb trim (#13477)
add 6b43820c134 fix last time check (#13479)
add c4ace325364 Reduce IDeviceID creation in insert process (#13472)
new 59b41edfee6 Revert "Automatically trigger CI for active non-committer
#13450"
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/multi-language-client.yml | 17 +-
data.zip | Bin 0 -> 101329 bytes
.../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/IoTDBEncodingIT.java | 100 +-
.../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 +-
.../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 | 13 +-
.../it/query/recent/IoTDBNullIdQueryIT.java | 20 +
.../iotdb/relational/it/schema/IoTDBDeviceIT.java | 11 +-
.../iotdb/session/it/IoTDBSessionSimpleIT.java | 22 +-
.../src/test/resources/ainode-example/config.yaml | 5 +
.../src/test/resources/ainode-example/model.pt | Bin 0 -> 1906 bytes
.../java/org/apache/iotdb/cli/AbstractCli.java | 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 | 2 +-
iotdb-client/client-py/release.sh | 1 +
.../tests/integration/test_relational_session.py | 143 +++
.../org/apache/iotdb/isession/SessionDataSet.java | 34 +-
.../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 +
.../java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java | 443 ++++---
.../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 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 12 +
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 5 +
.../dataregion/DataExecutionVisitor.java | 8 +-
.../dataregion/DataRegionStateMachine.java | 2 +-
.../client/IoTDBDataNodeAsyncClientManager.java | 49 +-
.../connector/protocol/opcua/OpcUaConnector.java | 57 +-
.../connector/protocol/opcua/OpcUaNameSpace.java | 18 +-
.../protocol/opcua/OpcUaServerBuilder.java | 43 +-
.../pipeconsensus/PipeConsensusAsyncConnector.java | 9 +-
.../async/IoTDBDataRegionAsyncConnector.java | 8 +
.../tablet/PipeInsertNodeTabletInsertionEvent.java | 6 +-
.../tablet/TabletInsertionDataContainer.java | 4 +-
.../event/realtime/PipeRealtimeEventFactory.java | 2 +-
.../visitor/PipePlanToStatementVisitor.java | 2 +-
.../protocol/thrift/impl/ClientRPCServiceImpl.java | 3 +-
.../queryengine/common/header/DatasetHeader.java | 37 +-
.../plan/analyze/LoadTsFileAnalyzer.java | 44 +-
.../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 +++
.../plan/relational/sql/parser/AstBuilder.java | 2 +-
.../plan/statement/crud/InsertTabletStatement.java | 2 +-
.../iotdb/db/schemaengine/SchemaEngineMode.java | 3 +-
.../metric/SchemaRegionCachedMetric.java | 2 +-
.../rescon/MemSchemaRegionStatistics.java | 31 +-
.../schemaregion/impl/SchemaRegionPBTreeImpl.java | 2 +-
.../java/org/apache/iotdb/db/service/DataNode.java | 30 +-
...ShutdownHook.java => DataNodeShutdownHook.java} | 98 +-
.../db/storageengine/dataregion/DataRegion.java | 10 +-
.../execute/task/SettleCompactionTask.java | 8 +
...BatchedFastAlignedSeriesCompactionExecutor.java | 41 +-
...edReadChunkAlignedSeriesCompactionExecutor.java | 42 +-
.../utils/AlignedSeriesBatchCompactionUtils.java | 161 ++-
.../ReadChunkAlignedSeriesCompactionExecutor.java | 50 +-
.../selector/utils/TsFileResourceCandidate.java | 3 +-
.../dataregion/memtable/DeviceIDFactory.java | 16 +-
.../dataregion/wal/buffer/WALEntry.java | 3 +
.../file/UnsealedTsFileRecoverPerformer.java | 3 +
.../load/memory/LoadTsFileAbstractMemoryBlock.java | 4 +
.../memory/LoadTsFileAnalyzeSchemaMemoryBlock.java | 28 +-
.../memory/LoadTsFileDataCacheMemoryBlock.java | 7 +
.../load/memory/LoadTsFileMemoryManager.java | 28 +-
.../load/splitter/TsFileSplitter.java | 13 +-
.../event/batch/SubscriptionPipeEventBatches.java | 4 +-
.../db/trigger/executor/TriggerFireVisitor.java | 8 +-
.../apache/iotdb/db/utils/ModificationUtils.java | 14 +-
.../org/apache/iotdb/db/utils/SchemaUtils.java | 51 +-
...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 | 32 +
.../settle/SettleCompactionTaskTest.java | 31 +
.../compaction/utils/BatchCompactionUtilsTest.java | 12 +-
.../wal/node/ConsensusReqReaderTest.java | 2 +-
.../apache/iotdb/db/utils/EnvironmentUtils.java | 4 -
.../iotdb/commons/concurrent/ThreadName.java | 4 +-
.../iotdb/commons/conf/CommonDescriptor.java | 3 -
.../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 +-
.../thrift-datanode/src/main/thrift/client.thrift | 1 +
pom.xml | 3 +-
206 files changed, 10989 insertions(+), 3477 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
create mode 100644
integration-test/src/test/resources/ainode-example/config.yaml
create mode 100644 integration-test/src/test/resources/ainode-example/model.pt
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} (65%)
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