This is an automated email from the ASF dual-hosted git repository.

justinchen pushed a commit to branch new_opc_server
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 7b2ff0ab5015b833a7c9317b1330718a57aa8825
Merge: 8fddc8dd340 2bdbd41eee8
Author: Caideyipi <[email protected]>
AuthorDate: Mon Dec 22 11:59:04 2025 +0800

    Merge branch 'master' of https://github.com/apache/iotdb into new_opc_server

 .github/workflows/cluster-it-1c1d1a.yml            |    3 -
 LICENSE                                            |   10 +
 LICENSE-binary                                     |    4 +-
 code-coverage/pom.xml                              |    2 +-
 dependencies.json                                  |    2 +-
 distribution/pom.xml                               |   12 +-
 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 +-
 .../apache/iotdb/TableModelSessionPoolExample.java |    2 +-
 example/trigger/pom.xml                            |    2 +-
 example/udf/pom.xml                                |    2 +-
 integration-test/pom.xml                           |   32 +-
 .../it/env/cluster/config/MppCommonConfig.java     |    6 +
 .../it/env/cluster/config/MppDataNodeConfig.java   |    6 +
 .../env/cluster/config/MppSharedCommonConfig.java  |    7 +
 .../iotdb/it/env/cluster/node/AINodeWrapper.java   |    2 +-
 .../iotdb/it/env/cluster/node/DataNodeWrapper.java |    4 +
 .../it/env/remote/config/RemoteCommonConfig.java   |    5 +
 .../it/env/remote/config/RemoteDataNodeConfig.java |    5 +
 .../org/apache/iotdb/itbase/env/CommonConfig.java  |    2 +
 .../apache/iotdb/itbase/env/DataNodeConfig.java    |    2 +
 .../iotdb/itbase/runtime/ClusterTestResultSet.java |   16 +-
 .../iotdb/itbase/runtime/ClusterTestStatement.java |    7 +
 .../iotdb/ainode/it/AINodeCallInferenceIT.java     |  117 ++
 .../iotdb/ainode/it/AINodeClusterConfigIT.java     |    3 -
 .../ainode/it/AINodeConcurrentForecastIT.java      |  119 ++
 .../ainode/it/AINodeConcurrentInferenceIT.java     |  187 ---
 .../apache/iotdb/ainode/it/AINodeForecastIT.java   |  188 +++
 .../iotdb/ainode/it/AINodeInferenceSQLIT.java      |  344 ------
 .../ainode/it/AINodeInstanceManagementIT.java      |   79 +-
 .../iotdb/ainode/it/AINodeModelManageIT.java       |   53 +-
 .../apache/iotdb/ainode/utils/AINodeTestUtils.java |  138 ++-
 .../iotdb/db/it/audit/IoTDBAuditLogBasicIT.java    |    2 +
 .../it/query/IoTDBPredicateConversionTreeIT.java   |  293 +++++
 .../it/db/it/IoTDBPreparedStatementIT.java         |  385 ++++++
 .../it/query/object/IoTDBObjectQueryIT.java        |  200 ++++
 .../it/query/object/IoTDBObjectQueryIT2.java       |  296 +++++
 .../it/query/old/IoTDBSimpleQueryTableIT.java      |   63 +-
 .../scalar/IoTDBScalarFunctionTableIT.java         |   16 +-
 .../it/query/recent/IoTDBLengthFunctionIT.java     |    2 +-
 .../recent/IoTDBPredicateConversionTableIT.java    |  379 ++++++
 .../it/query/recent/IoTDBTableFunctionIT.java      |   92 ++
 .../informationschema/IoTDBCurrentQueriesIT.java   |  263 +++++
 .../relational/it/schema/IoTDBDatabaseIT.java      |   20 +-
 .../iotdb/relational/it/schema/IoTDBTableIT.java   |  138 +++
 .../relational/it/session/IoTDBObjectInsertIT.java |  329 ++++++
 .../it/session/IoTDBObjectInsertIT2.java           |  170 +++
 .../it/session/IoTDBSessionRelationalIT.java       |    1 -
 .../iotdb/session/it/IoTDBConnectionsIT.java       |  364 ++++++
 .../src/test/resources/ainode-example/config.yaml  |    5 -
 .../{ainode-example/model.pt => object-example.pt} |  Bin
 iotdb-api/external-api/pom.xml                     |    2 +-
 iotdb-api/pipe-api/pom.xml                         |    7 +-
 .../iotdb/pipe/api/collector/DataCollector.java    |   23 +-
 .../iotdb/pipe/api/collector/TabletCollector.java  |   30 +-
 .../api/customizer/parameter/PipeParameters.java   |   31 +-
 .../event/dml/insertion/TabletInsertionEvent.java  |   11 +
 .../java/org/apache/iotdb/pipe/api/type/Type.java  |    5 +-
 .../customizer/parameter/PipeParametersTest.java   |   26 +-
 iotdb-api/pom.xml                                  |    2 +-
 iotdb-api/trigger-api/pom.xml                      |    2 +-
 iotdb-api/udf-api/pom.xml                          |    2 +-
 .../iotdb/udf/api/relational/access/Record.java    |   44 +-
 .../java/org/apache/iotdb/udf/api/type/Type.java   |   10 +-
 iotdb-client/cli/pom.xml                           |   22 +-
 .../java/org/apache/iotdb/cli/AbstractCli.java     |    1 +
 .../org/apache/iotdb/tool/data/ExportData.java     |    5 +-
 iotdb-client/client-cpp/pom.xml                    |    4 +-
 iotdb-client/client-cpp/src/main/Common.cpp        |    1 +
 iotdb-client/client-cpp/src/main/Common.h          |    3 +-
 .../client-cpp/src/main/IoTDBRpcDataSet.cpp        |    1 +
 iotdb-client/client-cpp/src/main/Session.cpp       |   30 +-
 iotdb-client/client-cpp/src/main/Session.h         |   54 +-
 .../client-cpp/src/main/SessionDataSet.cpp         |    2 +
 .../src/test/cpp/sessionRelationalIT.cpp           |   12 +-
 iotdb-client/client-py/pom.xml                     |    8 +-
 iotdb-client/isession/pom.xml                      |    8 +-
 .../org/apache/iotdb/isession/SessionDataSet.java  |   17 +
 iotdb-client/jdbc/pom.xml                          |    8 +-
 .../iotdb/jdbc/IoTDBAbstractDatabaseMetadata.java  |    1 +
 .../org/apache/iotdb/jdbc/IoTDBJDBCResultSet.java  |   29 +-
 iotdb-client/pom.xml                               |    2 +-
 iotdb-client/service-rpc/pom.xml                   |    6 +-
 .../org/apache/iotdb/rpc/IoTDBJDBCDataSet.java     |    6 +
 .../java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java |    6 +
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |   26 +-
 iotdb-client/session/pom.xml                       |   24 +-
 .../java/org/apache/iotdb/session/Session.java     |    8 +-
 .../payload/SubscriptionSessionDataSet.java        |    1 +
 .../apache/iotdb/session/util/SessionUtils.java    |    3 +
 iotdb-core/ainode/ainode.spec                      |  138 ++-
 iotdb-core/ainode/iotdb/ainode/core/config.py      |   41 +-
 iotdb-core/ainode/iotdb/ainode/core/constant.py    |  206 +---
 iotdb-core/ainode/iotdb/ainode/core/exception.py   |  110 +-
 .../core/inference/dispatcher/basic_dispatcher.py  |    6 +-
 .../ainode/core/inference/inference_request.py     |   37 +-
 .../core/inference/inference_request_pool.py       |  124 +-
 .../inference/{strategy => pipeline}/__init__.py   |    0
 .../core/inference/pipeline/basic_pipeline.py      |  104 ++
 .../core/inference/pipeline/pipeline_loader.py     |   56 +
 .../iotdb/ainode/core/inference/pool_controller.py |   87 +-
 .../iotdb/ainode/core/inference/pool_group.py      |    6 +-
 .../pool_scheduler/basic_pool_scheduler.py         |    6 +-
 .../strategy/abstract_inference_pipeline.py        |   60 -
 .../strategy/timer_sundial_inference_pipeline.py   |   51 -
 .../strategy/timerxl_inference_pipeline.py         |   51 -
 .../ainode/iotdb/ainode/core/inference/utils.py    |   45 +-
 .../iotdb/ainode/core/manager/inference_manager.py |  208 +---
 .../iotdb/ainode/core/manager/model_manager.py     |  157 +--
 .../ainode/iotdb/ainode/core/manager/utils.py      |   11 +-
 .../ainode/core/model/built_in_model_factory.py    | 1238 --------------------
 .../core/model/{timerxl => chronos2}/__init__.py   |    0
 .../iotdb/ainode/core/model/chronos2/base.py       |  300 +++++
 .../ainode/core/model/chronos2/chronos_bolt.py     |  703 +++++++++++
 .../iotdb/ainode/core/model/chronos2/config.py     |  138 +++
 .../iotdb/ainode/core/model/chronos2/dataset.py    |  756 ++++++++++++
 .../iotdb/ainode/core/model/chronos2/layers.py     |  481 ++++++++
 .../iotdb/ainode/core/model/chronos2/model.py      |  909 ++++++++++++++
 .../core/model/chronos2/pipeline_chronos2.py       |  391 +++++++
 .../iotdb/ainode/core/model/chronos2/utils.py      |  242 ++++
 .../{timerxl/__init__.py => model_constants.py}    |   24 +
 .../ainode/iotdb/ainode/core/model/model_enums.py  |   70 --
 .../iotdb/ainode/core/model/model_factory.py       |  291 -----
 .../ainode/iotdb/ainode/core/model/model_info.py   |  144 ++-
 .../ainode/iotdb/ainode/core/model/model_loader.py |  155 +++
 .../iotdb/ainode/core/model/model_storage.py       |  761 ++++++------
 .../strategy => model/sktime}/__init__.py          |    0
 .../ainode/core/model/sktime/arima/config.json     |   25 +
 .../core/model/sktime/configuration_sktime.py      |  409 +++++++
 .../model/sktime/exponential_smoothing/config.json |   11 +
 .../core/model/sktime/gaussian_hmm/config.json     |   22 +
 .../ainode/core/model/sktime/gmm_hmm/config.json   |   24 +
 .../ainode/core/model/sktime/modeling_sktime.py    |  180 +++
 .../core/model/sktime/naive_forecaster/config.json |    9 +
 .../ainode/core/model/sktime/pipeline_sktime.py    |   75 ++
 .../core/model/sktime/stl_forecaster/config.json   |   22 +
 .../ainode/core/model/sktime/stray/config.json     |   11 +
 .../ainode/core/model/sundial/modeling_sundial.py  |    8 +-
 .../ainode/core/model/sundial/pipeline_sundial.py  |   61 +
 .../strategy => model/timer_xl}/__init__.py        |    0
 .../{timerxl => timer_xl}/configuration_timer.py   |    0
 .../model/{timerxl => timer_xl}/modeling_timer.py  |    9 +-
 .../ainode/core/model/timer_xl/pipeline_timer.py   |   56 +
 .../{timerxl => timer_xl}/ts_generation_mixin.py   |    0
 .../ainode/iotdb/ainode/core/model/uri_utils.py    |  137 ---
 iotdb-core/ainode/iotdb/ainode/core/model/utils.py |  137 +++
 iotdb-core/ainode/iotdb/ainode/core/rpc/client.py  |   39 -
 iotdb-core/ainode/iotdb/ainode/core/rpc/handler.py |   83 +-
 iotdb-core/ainode/iotdb/ainode/core/util/serde.py  |   30 +-
 iotdb-core/ainode/pom.xml                          |   12 +-
 iotdb-core/ainode/pyproject.toml                   |   11 +-
 iotdb-core/antlr/pom.xml                           |    2 +-
 iotdb-core/confignode/pom.xml                      |   26 +-
 .../iotdb/confignode/audit/CNAuditLogger.java      |   50 +-
 .../async/AsyncAINodeHeartbeatClientPool.java      |   19 +-
 .../async/AsyncDataNodeHeartbeatClientPool.java    |    1 -
 .../confignode/conf/SystemPropertiesUtils.java     |   15 +
 .../consensus/request/ConfigPhysicalPlan.java      |   24 -
 .../request/read/model/GetModelInfoPlan.java       |   64 -
 .../request/read/model/ShowModelPlan.java          |   70 --
 .../request/write/model/CreateModelPlan.java       |   79 --
 .../request/write/model/DropModelInNodePlan.java   |   70 --
 .../request/write/model/DropModelPlan.java         |   79 --
 .../request/write/model/UpdateModelInfoPlan.java   |  122 --
 .../consensus/response/model/GetModelInfoResp.java |   63 -
 .../consensus/response/model/ModelTableResp.java   |   62 -
 .../iotdb/confignode/manager/ConfigManager.java    |  179 ---
 .../apache/iotdb/confignode/manager/IManager.java  |   42 -
 .../iotdb/confignode/manager/ModelManager.java     |  245 ----
 .../iotdb/confignode/manager/ProcedureManager.java |   20 -
 .../iotdb/confignode/manager/node/NodeManager.java |    1 +
 .../manager/schema/ClusterSchemaManager.java       |   13 +-
 .../iotdb/confignode/persistence/ModelInfo.java    |  378 ------
 .../persistence/executor/ConfigPlanExecutor.java   |   25 -
 .../persistence/pipe/PipePluginInfo.java           |   78 +-
 .../procedure/impl/model/CreateModelProcedure.java |  250 ----
 .../procedure/impl/model/DropModelProcedure.java   |  200 ----
 .../procedure/impl/node/RemoveAINodeProcedure.java |   17 +-
 .../impl/pipe/task/AlterPipeProcedureV2.java       |    1 +
 .../procedure/state/RemoveAINodeState.java         |    1 -
 .../procedure/store/ProcedureFactory.java          |   12 -
 .../confignode/procedure/store/ProcedureType.java  |    2 +
 .../thrift/ConfigNodeRPCServiceProcessor.java      |   25 -
 iotdb-core/consensus/pom.xml                       |   14 +-
 iotdb-core/datanode/pom.xml                        |   42 +-
 .../org/apache/iotdb/db/audit/DNAuditLogger.java   |  398 +------
 .../iotdb/db/auth/ClusterAuthorityFetcher.java     |   59 +-
 .../apache/iotdb/db/conf/DataNodeMemoryConfig.java |    5 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |   76 ++
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |   47 +
 .../dataregion/DataExecutionVisitor.java           |   13 +
 .../db/exception/ainode/GetModelInfoException.java |    2 +-
 .../agent/task/subtask/sink/PipeSinkSubtask.java   |    7 +-
 .../db/pipe/event/common/row/PipeRowCollector.java |   35 +-
 .../tablet/PipeInsertNodeTabletInsertionEvent.java |   85 +-
 .../common/tablet/PipeRawTabletEventConverter.java |   72 ++
 .../common/tablet/PipeRawTabletInsertionEvent.java |    7 +
 .../event/common/tablet/PipeTabletCollector.java   |   61 +
 .../tablet/parser/TabletInsertionEventParser.java  |    4 +
 .../TabletInsertionEventTablePatternParser.java    |   14 +-
 .../TabletInsertionEventTreePatternParser.java     |   10 +
 .../processor/aggregate/AggregateProcessor.java    |    3 +
 .../resource/memory/InsertNodeMemoryEstimator.java |    1 +
 .../request/PipeTransferTabletBatchReqV2.java      |    7 +-
 .../request/PipeTransferTabletRawReq.java          |  110 +-
 .../request/PipeTransferTabletRawReqV2.java        |   50 +-
 .../sink/protocol/opcda/OpcDaServerHandle.java     |    2 +
 .../pipe/sink/protocol/opcua/OpcUaNameSpace.java   |  122 +-
 .../db/pipe/sink/protocol/opcua/OpcUaSink.java     |   71 +-
 .../handler/PipeTransferTrackableHandler.java      |    1 +
 .../sink/protocol/writeback/WriteBackSink.java     |    4 +-
 .../pipe/sink/util/TabletStatementConverter.java   |  476 ++++++++
 .../sink/util/sorter/InsertEventDataAdapter.java   |  127 ++
 .../util/sorter/InsertTabletStatementAdapter.java  |  118 ++
 ...EventSorter.java => PipeInsertEventSorter.java} |   95 +-
 .../sorter/PipeTableModelTabletEventSorter.java    |   67 +-
 .../sorter/PipeTreeModelTabletEventSorter.java     |   48 +-
 .../db/pipe/sink/util/sorter/TabletAdapter.java    |  113 ++
 .../db/protocol/client/AINodeClientFactory.java    |  133 ---
 .../iotdb/db/protocol/client/ConfigNodeClient.java |   30 +-
 .../protocol/client/DataNodeClientPoolFactory.java |   42 +-
 .../db/protocol/client/ainode/AINodeClient.java    |  401 -------
 .../client/ainode/AINodeClientManager.java         |   75 --
 .../iotdb/db/protocol/client/an/AINodeClient.java  |  321 +++++
 .../db/protocol/client/an/AINodeClientManager.java |   52 +-
 .../protocol/rest/v2/impl/RestApiServiceImpl.java  |   16 +-
 .../iotdb/db/protocol/session/ClientSession.java   |   23 +
 .../iotdb/db/protocol/session/IClientSession.java  |   48 +
 .../db/protocol/session/InternalClientSession.java |   24 +
 .../db/protocol/session/MqttClientSession.java     |   23 +
 .../db/protocol/session/PreparedStatementInfo.java |   99 ++
 .../db/protocol/session/RestClientSession.java     |   25 +
 .../iotdb/db/protocol/session/SessionManager.java  |   66 +-
 .../thrift/handler/BaseServerContextHandler.java   |    1 +
 .../protocol/thrift/impl/ClientRPCServiceImpl.java |  338 +++++-
 .../impl/DataNodeInternalRPCServiceImpl.java       |    8 +
 .../db/queryengine/common/ConnectionInfo.java      |   64 +
 .../iotdb/db/queryengine/common/QueryId.java       |    7 +
 .../execution/aggregation/AccumulatorFactory.java  |    1 +
 .../execution/aggregation/AvgAccumulator.java      |    1 +
 .../execution/aggregation/ExtremeAccumulator.java  |    6 +
 .../aggregation/FirstValueAccumulator.java         |    6 +
 .../aggregation/LastValueAccumulator.java          |    6 +
 .../aggregation/MaxMinByBaseAccumulator.java       |    6 +
 .../execution/aggregation/MaxValueAccumulator.java |    6 +
 .../execution/aggregation/MinValueAccumulator.java |    6 +
 .../execution/aggregation/SumAccumulator.java      |    1 +
 .../execution/aggregation/VarianceAccumulator.java |    1 +
 .../execution/executor/RegionWriteExecutor.java    |   14 +
 .../execution/memory/LocalMemoryManager.java       |    1 -
 .../execution/operator/AggregationUtil.java        |    1 +
 .../execution/operator/process/TopKOperator.java   |    2 +
 .../operator/process/TransformOperator.java        |    1 +
 .../operator/process/ai/InferenceOperator.java     |   82 +-
 .../operator/process/function/partition/Slice.java |   53 +-
 .../process/join/merge/MergeSortComparator.java    |    1 +
 .../expression/PatternExpressionComputation.java   |    5 +-
 .../process/window/function/value/LagFunction.java |    1 +
 .../window/function/value/LeadFunction.java        |    1 +
 .../process/window/utils/RowComparator.java        |    3 +
 .../execution/operator/source/SeriesScanUtil.java  |    1 +
 .../InformationSchemaContentSupplierFactory.java   |  323 +++--
 .../relational/LastQueryAggTableScanOperator.java  |    1 +
 .../relational/aggregation/AccumulatorFactory.java |    2 +
 .../ApproxCountDistinctAccumulator.java            |    1 +
 .../relational/aggregation/AvgAccumulator.java     |    2 +
 .../relational/aggregation/ExtremeAccumulator.java |    5 +
 .../relational/aggregation/FirstAccumulator.java   |    4 +
 .../relational/aggregation/FirstByAccumulator.java |    4 +
 .../relational/aggregation/LastAccumulator.java    |    4 +
 .../relational/aggregation/LastByAccumulator.java  |    4 +
 .../aggregation/MaskedRecordIterator.java          |    2 -
 .../relational/aggregation}/RecordIterator.java    |   61 +-
 .../relational/aggregation/SumAccumulator.java     |    2 +
 .../aggregation/TableMaxMinByBaseAccumulator.java  |    5 +
 .../aggregation/TableVarianceAccumulator.java      |    2 +
 .../UserDefinedAggregateFunctionAccumulator.java   |    1 -
 .../source/relational/aggregation/Utils.java       |    2 +
 .../GroupedApproxCountDistinctAccumulator.java     |    1 +
 .../aggregation/grouped/GroupedAvgAccumulator.java |    1 +
 .../grouped/GroupedExtremeAccumulator.java         |    8 +
 .../grouped/GroupedFirstAccumulator.java           |    8 +
 .../grouped/GroupedFirstByAccumulator.java         |    9 +
 .../grouped/GroupedLastAccumulator.java            |    8 +
 .../grouped/GroupedLastByAccumulator.java          |    9 +
 .../aggregation/grouped/GroupedMaxAccumulator.java |    8 +
 .../grouped/GroupedMaxMinByBaseAccumulator.java    |   15 +
 .../aggregation/grouped/GroupedMinAccumulator.java |    8 +
 .../grouped/GroupedModeAccumulator.java            |    4 +
 .../aggregation/grouped/GroupedSumAccumulator.java |    1 +
 .../GroupedUserDefinedAggregateAccumulator.java    |    2 +-
 .../grouped/GroupedVarianceAccumulator.java        |    1 +
 .../operator/window/WindowManagerFactory.java      |    2 +
 .../relational/ColumnTransformerBuilder.java       |   41 +-
 .../iotdb/db/queryengine/plan/Coordinator.java     |  440 ++++++-
 .../queryengine/plan/analyze/AnalyzeVisitor.java   |  134 +--
 .../plan/analyze/ClusterPartitionFetcher.java      |    4 +
 .../db/queryengine/plan/analyze/IModelFetcher.java |    4 -
 .../db/queryengine/plan/analyze/ModelFetcher.java  |   51 +-
 .../plan/execution/IQueryExecution.java            |    2 +
 .../queryengine/plan/execution/QueryExecution.java |    5 +
 .../plan/execution/config/ConfigExecution.java     |    5 +
 .../execution/config/TableConfigTaskVisitor.java   |   39 +-
 .../execution/config/TreeConfigTaskVisitor.java    |    4 +-
 .../config/executor/ClusterConfigTaskExecutor.java |   74 +-
 .../config/executor/IConfigTaskExecutor.java       |    2 +-
 ...eateTrainingTask.java => CreateTuningTask.java} |    8 +-
 .../execution/config/session/DeallocateTask.java   |   72 ++
 .../plan/execution/config/session/PrepareTask.java |   85 ++
 .../session/PreparedStatementMemoryManager.java    |  157 +++
 .../predicate/ConvertPredicateToFilterVisitor.java |  134 ++-
 .../db/queryengine/plan/parser/ASTVisitor.java     |   22 +-
 .../plan/planner/OperatorTreeGenerator.java        |    1 +
 .../plan/planner/TableOperatorGenerator.java       |   55 +-
 .../planner/distribution/ExchangeNodeAdder.java    |    6 +-
 .../plan/planner/plan/node/PlanNodeType.java       |    8 +
 .../plan/planner/plan/node/PlanVisitor.java        |    5 +
 .../plan/node/process/AI/InferenceNode.java        |    3 +-
 .../planner/plan/node/source/ShowQueriesNode.java  |    2 +-
 .../planner/plan/node/write/InsertRowNode.java     |   11 +-
 .../planner/plan/node/write/InsertTabletNode.java  |   29 +-
 .../plan/planner/plan/node/write/ObjectNode.java   |  327 ++++++
 .../plan/node/write/RelationalInsertRowsNode.java  |   48 +-
 .../node/write/RelationalInsertTabletNode.java     |  122 ++
 .../parameter/model/ModelInferenceDescriptor.java  |   61 +-
 .../relational/analyzer/StatementAnalyzer.java     |  106 +-
 .../analyzer/StatementAnalyzerFactory.java         |   17 +-
 .../predicate/ConvertPredicateToFilterVisitor.java |  116 +-
 .../function/TableBuiltinTableFunction.java        |    6 +-
 .../function/tvf/ClassifyTableFunction.java        |  383 ++++++
 .../function/tvf/ForecastTableFunction.java        |  298 ++---
 .../plan/relational/metadata/Metadata.java         |    6 -
 .../relational/metadata/TableMetadataImpl.java     |   50 +-
 .../fetcher/TableDeviceSchemaValidator.java        |   27 +-
 .../plan/relational/planner/TableModelPlanner.java |   25 +-
 .../planner/distribute/AddExchangeNodes.java       |   41 +-
 .../distribute/TableDistributedPlanGenerator.java  |    8 +-
 .../DataNodeLocationSupplierFactory.java           |    4 +-
 .../optimizations/PushPredicateIntoTableScan.java  |  100 ++
 .../plan/relational/sql/AstMemoryEstimator.java    |   67 ++
 .../plan/relational/sql/ParameterExtractor.java    |  121 ++
 .../plan/relational/sql/ast/AstVisitor.java        |   16 +
 .../plan/relational/sql/ast/Deallocate.java        |   79 ++
 .../plan/relational/sql/ast/DeleteDevice.java      |    3 +-
 .../plan/relational/sql/ast/Execute.java           |   96 ++
 .../plan/relational/sql/ast/ExecuteImmediate.java  |   99 ++
 .../plan/relational/sql/ast/InsertRow.java         |   11 +-
 .../plan/relational/sql/ast/InsertRows.java        |   14 +-
 .../plan/relational/sql/ast/InsertTablet.java      |    9 +
 .../plan/relational/sql/ast/LoadTsFile.java        |   61 +-
 .../plan/relational/sql/ast/Prepare.java           |   87 ++
 .../plan/relational/sql/ast/Statement.java         |   25 +
 .../plan/relational/sql/parser/AstBuilder.java     |   38 +
 .../plan/relational/sql/util/AstUtil.java          |   30 +
 .../plan/relational/type/CompatibleResolver.java   |    5 +
 .../plan/relational/type/InternalTypeManager.java  |    6 +
 .../relational/utils/ResultColumnAppender.java     |  145 +++
 .../plan/relational/utils/TypeUtil.java            |   13 +-
 .../scheduler/FragmentInstanceDispatcherImpl.java  |    2 +-
 .../db/queryengine/plan/statement/Statement.java   |   23 +
 .../plan/statement/component/OrderByComponent.java |    6 +
 .../plan/statement/crud/InsertBaseStatement.java   |   10 +
 .../plan/statement/crud/InsertTabletStatement.java |  204 +++-
 .../plan/statement/crud/LoadTsFileStatement.java   |   48 +
 .../db/queryengine/plan/udf/UDTFForecast.java      |   27 +-
 .../FragmentInstanceStatisticsDrawer.java          |    2 +-
 .../udf/UserDefineScalarFunctionTransformer.java   |    2 +-
 .../AbstractCastFunctionColumnTransformer.java     |   10 +
 ...r.java => AbstractLengthColumnTransformer.java} |   15 +-
 .../unary/scalar/BlobLengthColumnTransformer.java  |   25 +-
 .../scalar/CastFunctionColumnTransformer.java      |    3 +
 .../unary/scalar/LengthColumnTransformer.java      |   30 +-
 .../scalar/ObjectLengthColumnTransformer.java}     |   23 +-
 .../unary/scalar/ReadObjectColumnTransformer.java  |  114 ++
 .../scalar/TryCastFunctionColumnTransformer.java   |    3 +
 .../dag/input/ConstantInputReader.java             |    1 +
 .../unary/ArithmeticNegationTransformer.java       |    1 +
 .../dag/transformer/unary/InTransformer.java       |    2 +
 .../unary/scalar/CastFunctionTransformer.java      |    7 +
 .../unary/scalar/DiffFunctionTransformer.java      |    1 +
 .../unary/scalar/RoundFunctionTransformer.java     |    1 +
 .../transformation/dag/util/TransformUtils.java    |    2 +
 .../transformation/dag/util/TypeUtils.java         |    1 +
 .../datastructure/row/SerializableRowList.java     |    2 +
 .../datastructure/tv/SerializableTVList.java       |    1 +
 .../schemaregion/impl/SchemaRegionMemoryImpl.java  |    6 +-
 .../schemaregion/impl/SchemaRegionPBTreeImpl.java  |    2 +-
 .../java/org/apache/iotdb/db/service/DataNode.java |    3 +
 .../iotdb/db/service/metrics/FileMetrics.java      |   20 +
 .../db/service/metrics/file/ObjectFileMetrics.java |   86 ++
 .../metrics/memory/QueryEngineMemoryMetrics.java   |   12 +-
 .../iotdb/db/storageengine/StorageEngine.java      |   44 +
 .../storageengine/dataregion/Base32ObjectPath.java |  169 +++
 .../db/storageengine/dataregion/DataRegion.java    |   90 +-
 .../db/storageengine/dataregion/IObjectPath.java   |   70 ++
 .../storageengine/dataregion/PlainObjectPath.java  |  126 ++
 .../performer/impl/FastCompactionPerformer.java    |    3 +-
 .../execute/task/CrossSpaceCompactionTask.java     |    6 +
 .../execute/task/InnerSpaceCompactionTask.java     |    6 +
 .../execute/task/SettleCompactionTask.java         |    7 +-
 .../compaction/execute/utils/CompactionUtils.java  |  184 +++
 .../execute/utils/MultiTsFileDeviceIterator.java   |   19 +-
 .../fast/FastAlignedSeriesCompactionExecutor.java  |   26 +-
 .../FastNonAlignedSeriesCompactionExecutor.java    |    6 +-
 .../fast/element/ChunkMetadataElement.java         |   10 +-
 .../fast/reader/CompactionAlignedChunkReader.java  |    8 +-
 .../ReadChunkAlignedSeriesCompactionExecutor.java  |    1 +
 .../readchunk/SingleSeriesCompactionExecutor.java  |    1 +
 .../utils/writer/AbstractCompactionWriter.java     |    1 +
 .../compaction/repair/RepairDataFileScanUtil.java  |    2 +-
 .../dataregion/memtable/AbstractMemTable.java      |   86 +-
 .../memtable/AlignedReadOnlyMemChunk.java          |    2 +
 .../memtable/AlignedWritableMemChunk.java          |  133 ++-
 .../dataregion/memtable/IMemTable.java             |    6 +-
 .../dataregion/memtable/TsFileProcessor.java       |   18 +-
 .../dataregion/memtable/WritableMemChunk.java      |   53 +-
 .../read/reader/chunk/DiskAlignedChunkLoader.java  |   16 +-
 .../read/reader/chunk/DiskChunkLoader.java         |   10 +
 .../read/reader/chunk/MemAlignedPageReader.java    |    1 +
 .../read/reader/chunk/MemPageReader.java           |    2 +
 .../allocation/AbstractNodeAllocationStrategy.java |   21 +-
 .../dataregion/wal/buffer/WALBuffer.java           |    3 +
 .../dataregion/wal/buffer/WALEntry.java            |    6 +
 .../dataregion/wal/buffer/WALEntryType.java        |    4 +-
 .../dataregion/wal/buffer/WALInfoEntry.java        |    4 +
 .../dataregion/wal/node/IWALNode.java              |    3 +
 .../dataregion/wal/node/WALFakeNode.java           |    6 +
 .../storageengine/dataregion/wal/node/WALNode.java |   52 +-
 .../file/UnsealedTsFileRecoverPerformer.java       |    2 +
 .../storageengine/load/active/ActiveLoadAgent.java |   90 ++
 .../splitter/BatchedAlignedValueChunkData.java     |    2 +
 .../db/storageengine/rescon/disk/TierManager.java  |   50 +
 .../rescon/memory/PrimitiveArrayManager.java       |    1 +
 .../iotdb/db/tools/TsFileSplitByPartitionTool.java |    1 +
 .../org/apache/iotdb/db/utils/CommonUtils.java     |    1 +
 .../iotdb/db/utils/EncodingInferenceUtils.java     |    1 +
 .../java/org/apache/iotdb/db/utils/MemUtils.java   |    4 +-
 .../org/apache/iotdb/db/utils/ObjectTypeUtils.java |  303 +++++
 .../org/apache/iotdb/db/utils/ObjectWriter.java    |   82 ++
 .../apache/iotdb/db/utils/QueryDataSetUtils.java   |   11 +-
 .../org/apache/iotdb/db/utils/TabletDecoder.java   |    1 +
 .../apache/iotdb/db/utils/TimeValuePairUtils.java  |    2 +
 .../apache/iotdb/db/utils/TypeInferenceUtils.java  |    1 +
 .../db/utils/datastructure/AlignedTVList.java      |   12 +
 .../MergeSortMultiAlignedTVListIterator.java       |    1 +
 .../MergeSortMultiTVListIterator.java              |    1 +
 .../datastructure/MultiAlignedTVListIterator.java  |    1 +
 .../utils/datastructure/MultiTVListIterator.java   |    1 +
 .../iotdb/db/utils/datastructure/TVList.java       |    5 +
 .../db/utils/windowing/window/WindowImpl.java      |    1 +
 .../pipe/event/TsFileInsertionEventParserTest.java |   34 +-
 .../pipe/sink/PipeDataNodeThriftRequestTest.java   |    4 +-
 .../apache/iotdb/db/pipe/sink/PipeSinkTest.java    |  101 ++
 .../db/pipe/sink/PipeStatementEventSorterTest.java |  313 +++++
 .../sink/util/TabletStatementConverterTest.java    |  607 ++++++++++
 .../operator/MergeTreeSortOperatorTest.java        |    5 +
 .../predicate/TreePredicateConversionTest.java     |  572 +++++++++
 .../plan/function/RecordObjectTypeTest.java        |  154 +++
 .../plan/parser/StatementGeneratorTest.java        |   33 +
 ...NodeSerdeTest.java => SourceNodeSerdeTest.java} |   20 +-
 .../plan/relational/analyzer/AnalyzerTest.java     |    7 +-
 .../plan/relational/analyzer/AuthTest.java         |   10 +-
 .../analyzer/RowPatternRecognitionTest.java        |    4 +-
 .../plan/relational/analyzer/TSBSMetadata.java     |    6 -
 .../relational/analyzer/TableFunctionTest.java     |    7 +-
 .../plan/relational/analyzer/TestMetadata.java     |   19 -
 .../plan/relational/planner/PlanTester.java        |    6 +-
 .../planner/assertions/ColumnReference.java        |   10 +-
 .../planner/assertions/PlanMatchPattern.java       |   20 +-
 .../informationschema/CurrentQueriesTest.java      |  184 +++
 .../informationschema}/ShowQueriesTest.java        |    8 +-
 .../predicate/TablePredicateConversionTest.java    |  506 ++++++++
 .../scalar/BlobLengthColumnTransformerTest.java    |   22 +-
 .../unary/scalar/ObjectTypeFunctionTest.java       |  186 +++
 .../object/ObjectTypeCompactionTest.java           |  314 +++++
 .../memtable/WritableMemChunkRegionScanTest.java   |  359 ++++++
 .../wal/allocation/FirstCreateStrategyTest.java    |   81 ++
 .../datastructure/PrimitiveArrayManagerTest.java   |    1 +
 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                    |   27 +-
 .../conf/iotdb-system.properties.template          |   16 +
 .../iotdb/commons/audit/AbstractAuditLogger.java   |   77 +-
 .../iotdb/commons/client/ClientPoolFactory.java    |   28 +
 .../async/AsyncAINodeInternalServiceClient.java}   |   25 +-
 .../async/AsyncPipeDataTransferServiceClient.java  |    7 +-
 .../iotdb/commons/concurrent/ThreadName.java       |    1 +
 .../apache/iotdb/commons/conf/CommonConfig.java    |    9 +
 .../iotdb/commons/conf/CommonDescriptor.java       |    6 +
 .../apache/iotdb/commons/conf/IoTDBConstant.java   |    1 +
 .../commons/exception/ObjectFileNotExist.java}     |   13 +-
 .../commons/file/SystemPropertiesHandler.java      |   13 +-
 .../iotdb/commons/model/ModelInformation.java      |   43 +-
 .../org/apache/iotdb/commons/model/ModelTable.java |    4 +-
 .../service/PipePluginExecutableManager.java       |    9 +
 .../pipe/config/constant/PipeSinkConstant.java     |   12 +
 .../pipe/receiver/PipeReceiverStatusHandler.java   |    6 +-
 .../schema/column/ColumnHeaderConstant.java        |   18 +-
 .../commons/schema/table/InformationSchema.java    |   78 +-
 .../apache/iotdb/commons/schema/table/TsTable.java |   34 +
 .../apache/iotdb/commons/udf/builtin/UDTFAbs.java  |    3 +
 .../iotdb/commons/udf/builtin/UDTFBottomK.java     |    1 +
 .../commons/udf/builtin/UDTFCommonDerivative.java  |    1 +
 .../udf/builtin/UDTFCommonValueDifference.java     |    1 +
 .../iotdb/commons/udf/builtin/UDTFConst.java       |    5 +
 .../udf/builtin/UDTFContinuouslySatisfy.java       |    2 +
 .../udf/builtin/UDTFEqualSizeBucketAggSample.java  |    1 +
 .../udf/builtin/UDTFEqualSizeBucketM4Sample.java   |    1 +
 .../builtin/UDTFEqualSizeBucketOutlierSample.java  |    1 +
 .../builtin/UDTFEqualSizeBucketRandomSample.java   |    1 +
 .../iotdb/commons/udf/builtin/UDTFInRange.java     |    3 +
 .../apache/iotdb/commons/udf/builtin/UDTFJexl.java |    3 +
 .../apache/iotdb/commons/udf/builtin/UDTFM4.java   |    1 +
 .../apache/iotdb/commons/udf/builtin/UDTFMath.java |    3 +
 .../udf/builtin/UDTFNonNegativeDerivative.java     |    1 +
 .../builtin/UDTFNonNegativeValueDifference.java    |    1 +
 .../iotdb/commons/udf/builtin/UDTFOnOff.java       |    1 +
 .../iotdb/commons/udf/builtin/UDTFSelectK.java     |    2 +
 .../apache/iotdb/commons/udf/builtin/UDTFTopK.java |    1 +
 .../iotdb/commons/udf/builtin/UDTFValueTrend.java  |    1 +
 .../relational/TableBuiltinScalarFunction.java     |    1 +
 .../commons/udf/utils/UDFDataTypeTransformer.java  |    7 +
 .../apache/iotdb/commons/utils/SerializeUtils.java |    6 +
 iotdb-core/pom.xml                                 |    2 +-
 iotdb-core/relational-grammar/pom.xml              |    2 +-
 .../db/relational/grammar/sql/RelationalSql.g4     |   23 +
 iotdb-protocol/openapi/pom.xml                     |    2 +-
 iotdb-protocol/pom.xml                             |    2 +-
 iotdb-protocol/thrift-ainode/pom.xml               |    4 +-
 .../thrift-ainode/src/main/thrift/ainode.thrift    |   25 +-
 iotdb-protocol/thrift-commons/pom.xml              |    2 +-
 iotdb-protocol/thrift-confignode/pom.xml           |    4 +-
 .../src/main/thrift/confignode.thrift              |   64 +-
 iotdb-protocol/thrift-consensus/pom.xml            |    4 +-
 iotdb-protocol/thrift-datanode/pom.xml             |    4 +-
 .../thrift-datanode/src/main/thrift/client.thrift  |    3 +-
 .../src/main/thrift/datanode.thrift                |    8 +
 library-udf/pom.xml                                |    4 +-
 pom.xml                                            |   20 +-
 scripts/sbin/windows/start-confignode.bat          |   28 -
 scripts/sbin/windows/start-datanode.bat            |   48 -
 550 files changed, 23302 insertions(+), 9049 deletions(-)


Reply via email to