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

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

commit 325f51328eb391da653ab6371e7435f27cfe259b
Merge: 56e9bf247cb c257be65a19
Author: shuwenwei <[email protected]>
AuthorDate: Tue Feb 3 17:37:46 2026 +0800

    Merge branch 'iotdb_master' into table_disk_usage_statistics_with_cache

 .github/workflows/multi-language-client.yml        |    15 +-
 LICENSE                                            |    12 +-
 LICENSE-binary                                     |    12 +-
 README.md                                          |     4 +-
 README_ZH.md                                       |     4 +-
 dependencies.json                                  |     1 -
 distribution/pom.xml                               |    14 +
 distribution/src/assembly/all.xml                  |     8 +
 distribution/src/assembly/datanode.xml             |    10 +
 .../src/assembly/external-service-impl.xml         |    55 +
 docker/src/main/Dockerfile-1c1d                    |     4 +-
 example/client-cpp-example/src/CMakeLists.txt      |   115 +-
 example/mqtt-customize/pom.xml                     |     6 +-
 .../server/CustomizedJsonPayloadFormatter.java     |     6 +-
 ...Formatter => org.apache.iotdb.PayloadFormatter} |     0
 external-service-impl/mqtt/pom.xml                 |   177 +
 .../apache/iotdb}/mqtt/BrokerAuthenticator.java    |     2 +-
 .../apache/iotdb}/mqtt/JSONPayloadFormatter.java   |     2 +-
 .../apache/iotdb}/mqtt/LinePayloadFormatter.java   |     2 +-
 .../org/apache/iotdb}/mqtt/MPPPublishHandler.java  |     4 +-
 .../java/org/apache/iotdb/mqtt}/MQTTService.java   |    28 +-
 .../main/java/org/apache/iotdb}/mqtt/Message.java  |     2 +-
 .../apache/iotdb}/mqtt/PayloadFormatManager.java   |     5 +-
 .../org/apache/iotdb}/mqtt/PayloadFormatter.java   |     2 +-
 .../java/org/apache/iotdb}/mqtt/TableMessage.java  |     2 +-
 .../java/org/apache/iotdb}/mqtt/TreeMessage.java   |     2 +-
 .../org.apache.iotdb.mqtt.PayloadFormatter         |     4 +-
 .../iotdb}/mqtt/BrokerAuthenticatorTest.java       |    18 +-
 .../iotdb}/mqtt/JSONPayloadFormatterTest.java      |     3 +-
 .../iotdb}/mqtt/LinePayloadFormatterTest.java      |     3 +-
 .../iotdb}/mqtt/PayloadFormatManagerTest.java      |     8 +-
 .../pom.xml                                        |    28 +-
 .../rest-openapi}/pom.xml                          |    34 +-
 .../src/main/openapi3/iotdb_rest_common.yaml       |     0
 .../src/main/openapi3/iotdb_rest_table_v1.yaml     |     0
 .../src/main/openapi3/iotdb_rest_v1.yaml           |     0
 .../src/main/openapi3/iotdb_rest_v2.yaml           |     0
 external-service-impl/rest/pom.xml                 |   226 +
 .../java/org/apache/iotdb/rest}/RestService.java   |    30 +-
 .../rest/protocol}/filter/ApiOriginFilter.java     |     2 +-
 .../rest/protocol}/filter/AuthorizationFilter.java |     4 +-
 .../protocol}/filter/BasicSecurityContext.java     |     2 +-
 .../apache/iotdb/rest/protocol}/filter/User.java   |     2 +-
 .../iotdb/rest/protocol}/filter/UserCache.java     |     2 +-
 .../protocol}/handler/AuthorizationHandler.java    |     4 +-
 .../rest/protocol}/impl/PingApiServiceImpl.java    |     6 +-
 .../table/v1/handler/ExceptionHandler.java         |     4 +-
 .../table/v1/handler/ExecuteStatementHandler.java  |     2 +-
 .../table/v1/handler/QueryDataSetHandler.java      |     6 +-
 .../table/v1/handler/RequestValidationHandler.java |     6 +-
 .../v1/handler/StatementConstructionHandler.java   |     4 +-
 .../table/v1/impl/RestApiServiceImpl.java          |    26 +-
 .../rest/protocol}/utils/InsertRowDataUtils.java   |     2 +-
 .../protocol}/utils/InsertTabletSortDataUtils.java |     2 +-
 .../protocol/v1}/handler/ExceptionHandler.java     |     4 +-
 .../v1/handler/ExecuteStatementHandler.java        |     2 +-
 .../protocol}/v1/handler/QueryDataSetHandler.java  |    26 +-
 .../v1/handler/RequestValidationHandler.java       |     8 +-
 .../v1/handler/StatementConstructionHandler.java   |     4 +-
 .../protocol}/v1/impl/GrafanaApiServiceImpl.java   |    18 +-
 .../rest/protocol}/v1/impl/RestApiServiceImpl.java |    32 +-
 .../protocol/v2}/handler/ExceptionHandler.java     |     4 +-
 .../v2/handler/ExecuteStatementHandler.java        |     2 +-
 .../rest/protocol}/v2/handler/FastLastHandler.java |    10 +-
 .../protocol}/v2/handler/QueryDataSetHandler.java  |    22 +-
 .../v2/handler/RequestValidationHandler.java       |    12 +-
 .../v2/handler/StatementConstructionHandler.java   |     8 +-
 .../protocol}/v2/impl/GrafanaApiServiceImpl.java   |    18 +-
 .../rest/protocol}/v2/impl/RestApiServiceImpl.java |    36 +-
 integration-test/pom.xml                           |    19 +
 integration-test/src/assembly/mpp-share.xml        |    10 +
 .../it/env/cluster/config/MppCommonConfig.java     |     5 -
 .../env/cluster/config/MppSharedCommonConfig.java  |     6 -
 .../it/env/cluster/node/AbstractNodeWrapper.java   |     2 +-
 .../it/env/remote/config/RemoteCommonConfig.java   |     5 -
 .../iotdb/it/utils/TsFileTableGenerator.java       |    30 +-
 .../BuiltinTimeSeriesGeneratingFunctionEnum.java   |     1 -
 .../org/apache/iotdb/itbase/env/CommonConfig.java  |     2 -
 .../iotdb/ainode/it/AINodeCallInferenceIT.java     |    14 +
 .../apache/iotdb/ainode/it/AINodeForecastIT.java   |    21 +-
 .../ainode/it/AINodeInstanceManagementIT.java      |     8 +
 .../apache/iotdb/ainode/utils/AINodeTestUtils.java |     4 +-
 .../partition/IoTDBPartitionTableAutoCleanIT.java  |    57 +-
 .../org/apache/iotdb/db/it/IoTDBDeletionIT.java    |    25 +
 .../org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java |   259 +
 .../db/it/aligned/IoTDBAlignedLastQueryIT.java     |    10 +-
 .../iotdb/db/it/auth/IoTDBSeriesPermissionIT.java  |     7 +
 .../iotdb/db/it/last/IoTDBLastQueryAlias2IT.java   |    60 +
 .../iotdb/db/it/last/IoTDBLastQueryAliasIT.java    |   164 +
 .../db/it/last/IoTDBLastQueryLastCacheIT.java      |    42 +
 .../iotdb/db/it/mqtt/IoTDBMQTTServiceJsonIT.java   |   363 +
 .../db/it/query/IoTDBAggregationFirstByIT.java     |   271 +
 .../it/query/IoTDBAggregationFirstByInGroupIT.java |   177 +
 .../iotdb/db/it/query/IoTDBAggregationFirstIT.java |   349 +
 .../it/query/IoTDBAggregationFirstInGroupIT.java   |   172 +
 .../db/it/query/IoTDBAggregationLastByIT.java      |   272 +
 .../it/query/IoTDBAggregationLastByInGroupIT.java  |   170 +
 .../iotdb/db/it/query/IoTDBAggregationLastIT.java  |   333 +
 .../db/it/query/IoTDBAggregationLastInGroupIT.java |   166 +
 .../db/it/schema/IoTDBAlterTimeSeriesTypeIT.java   |  1469 +-
 .../db/it/udf/IoTDBUDTFBuiltinFunctionIT.java      |   235 -
 .../auto/basic/IoTDBTreePatternFormatIT.java       |   245 +-
 .../treemodel/manual/IoTDBPipeInclusionIT.java     |    10 +-
 .../treemodel/manual/IoTDBPipePermissionIT.java    |    56 +
 .../iotdb/pipe/it/single/IoTDBPipeOPCUAIT.java     |    40 +-
 .../it/db/it/IoTDBAuthenticationTableIT.java       |    36 +
 .../relational/it/db/it/IoTDBInsertTableIT.java    |     1 +
 .../relational/it/db/it/IoTDBLoadTsFileIT.java     |   211 +-
 .../it/db/it/IoTDBWindowFunction3IT.java           |   179 +
 .../relational/it/mqtt/IoTDBMQTTServiceIT.java     |     1 +
 .../it/query/recent/IoTDBTableAggregationIT.java   |     9 +
 .../recent/scalar/IoTDBCastLiteralFunctionIT.java  |   146 +
 .../it/rest/it/IoTDBRestServiceInsertValuesIT.java |     2 +-
 .../it/schema/IoTDBAlterColumnTypeIT.java          |   805 +-
 .../relational/it/schema/IoTDBDatabaseIT.java      |    15 +-
 .../iotdb/relational/it/schema/IoTDBTableIT.java   |    24 +-
 .../it/schema/IoTDBTableWithDefinedTimeIT.java     |   230 +
 .../it/cluster/IoTDBSubscriptionRestartIT.java     |     7 +-
 .../it/dual/AbstractSubscriptionDualIT.java        |     3 -
 .../dual/tablemodel/IoTDBSubscriptionTopicIT.java  |     7 +
 .../IoTDBSubscriptionConsumerGroupIT.java          |    57 +
 .../IoTDBSubscriptionTimePrecisionIT.java          |     2 +
 .../dual/treemodel/IoTDBSubscriptionTopicIT.java   |    14 +
 .../it/local/AbstractSubscriptionLocalIT.java      |     1 -
 .../it/local/IoTDBSubscriptionBasicIT.java         |     8 +
 .../it/local/IoTDBSubscriptionDataTypeIT.java      |    21 +
 .../it/local/IoTDBSubscriptionIdempotentIT.java    |     4 +
 .../it/local/IoTDBSubscriptionTopicIT.java         |     5 +
 .../tablemodel/IoTDBSubscriptionIsolationIT.java   |     3 +
 .../tablemodel/IoTDBSubscriptionPermissionIT.java  |     5 +
 .../it/triple/AbstractSubscriptionTripleIT.java    |     5 -
 .../treemodel/IoTDBSubscriptionSharingIT.java      |     2 +
 .../IoTDBDefaultPullConsumerDataSetIT.java         |     2 +
 .../IoTDBDefaultTsfilePushConsumerIT.java          |     2 +
 .../IoTDBRootDatasetPushConsumerIT.java            |     2 +
 .../IoTDBRootPullConsumeTsfileIT.java              |     2 +
 ...merPullConsumerWith1TopicShareProcessMixIT.java |     2 +
 .../param/IoTDBTestParamPullConsumerIT.java        |    26 +
 .../param/IoTDBTestParamPushConsumerIT.java        |    19 +
 .../param/IoTDBTestParamSubscriptionSessionIT.java |     6 +
 .../regression/param/IoTDBTestParamTopicIT.java    |    20 +
 ...DBTestAutoCommitFalseDataSetPullConsumerIT.java |     2 +
 ...TDBTestAutoCommitTrueDataSetPullConsumerIT.java |     2 +
 .../format/IoTDBDBDataSetPullConsumerIT.java       |     2 +
 .../format/IoTDBDBTsfilePullConsumerIT.java        |     2 +
 .../IoTDBAllTsDatasetPullConsumerIT.java           |     2 +
 .../IoTDBAllTsTsfilePullConsumerIT.java            |     2 +
 .../IoTDBAllTsfilePullConsumerSnapshotIT.java      |     2 +
 .../IoTDBPathDeviceDataSetPullConsumerIT.java      |     2 +
 .../IoTDBPathDeviceTsfilePullConsumerIT.java       |     2 +
 .../IoTDBTimeTsDatasetPullConsumerIT.java          |     2 +
 .../IoTDBTimeTsTsfilePullConsumerIT.java           |     2 +
 .../IoTDBSnapshotDevicePullConsumerDataSetIT.java  |     2 +
 .../IoTDBSnapshotDevicePullConsumerTsfileIT.java   |     2 +
 ...DBConsumer2With1TopicShareProcessDataSetIT.java |     2 +
 ...TDBConsumer2With1TopicShareProcessTsfileIT.java |     2 +
 .../multi/IoTDBMultiGroupVsMultiConsumerIT.java    |     2 +
 .../IoTDBOneConsumerMultiTopicsDatasetIT.java      |     2 +
 .../multi/IoTDBOneConsumerMultiTopicsMixIT.java    |     2 +
 .../multi/IoTDBOneConsumerMultiTopicsTsfileIT.java |     2 +
 .../pattern/IoTDBDBPatternPullConsumeTsfileIT.java |     2 +
 .../IoTDBDBPatternPullConsumerDataSetIT.java       |     2 +
 .../IoTDBDefaultPatternPullConsumerDataSetIT.java  |     2 +
 .../IoTDBDevicePatternPullConsumeTsfileIT.java     |     2 +
 .../IoTDBDevicePatternPullConsumerDataSetIT.java   |     2 +
 ...DBMiddleMatch2PatternPullConsumerDataSetIT.java |     2 +
 ...IoTDBMiddleMatchPatternPullConsumeTsfileIT.java |     2 +
 ...TDBMiddleMatchPatternPullConsumerDataSetIT.java |     2 +
 .../IoTDBRootPatternPullConsumeTsfileIT.java       |     2 +
 .../pattern/IoTDBTSPatternPullConsumeTsfileIT.java |     2 +
 .../IoTDBTSPatternPullConsumerDataSetIT.java       |     2 +
 .../time/IoTDBAllPullConsumerDataSetIT.java        |     2 +
 .../time/IoTDBHistoryPullConsumerDataSetIT.java    |     2 +
 .../time/IoTDBRealTimePullConsumerDataSetIT.java   |     2 +
 ...oTDBTimeRangeAccuratePullConsumerDataSetIT.java |     2 +
 .../time/IoTDBTimeRangePullConsumerDataSetIT.java  |     2 +
 .../format/IoTDBTestPushConsumeDataSetIT.java      |     2 +
 .../IoTDBTestPushConsumeNoTargetDirTsfileIT.java   |     2 +
 .../format/IoTDBTestPushConsumeTsfileIT.java       |     2 +
 .../IoTDBLooseAllTsDatasetPushConsumerIT.java      |     2 +
 ...TDBLooseAllTsDatasetPushConsumerSnapshotIT.java |     2 +
 .../IoTDBLooseAllTsfilePushConsumerIT.java         |     2 +
 .../IoTDBPathLooseDeviceTsfilePushConsumerIT.java  |     2 +
 .../IoTDBPathLooseTsDatasetPushConsumerIT.java     |     2 +
 .../IoTDBPathLooseTsfilePushConsumerIT.java        |     2 +
 .../IoTDBPathTsLooseDatasetPushConsumerIT.java     |     2 +
 .../IoTDBTimeLooseTsDatasetPushConsumerIT.java     |     2 +
 .../IoTDBTimeLooseTsTsfilePushConsumerIT.java      |     2 +
 .../IoTDBTimeLooseTsfilePushConsumerIT.java        |     2 +
 .../IoTDBTimeTsLooseDatasetPushConsumerIT.java     |     2 +
 ...oTDBSnapshotTSPatternDatasetPushConsumerIT.java |     2 +
 ...IoTDBSnapshotTSPatternTsfilePushConsumerIT.java |     2 +
 ...DBConsumer2With1TopicShareProcessDataSetIT.java |     2 +
 ...TDBConsumer2With1TopicShareProcessTsfileIT.java |     2 +
 .../multi/IoTDBMultiGroupVsMultiConsumerIT.java    |     2 +
 .../IoTDBOneConsumerMultiTopicsDatasetIT.java      |     2 +
 .../multi/IoTDBOneConsumerMultiTopicsMixIT.java    |     2 +
 .../multi/IoTDBOneConsumerMultiTopicsTsfileIT.java |     2 +
 .../IoTDBDBPatternDatasetPushConsumerIT.java       |     2 +
 .../IoTDBDBPatternTsfilePushConsumerIT.java        |     2 +
 .../IoTDBDefaultPatternTsfilePushConsumerIT.java   |     2 +
 .../IoTDBDevicePatternDatasetPushConsumerIT.java   |     2 +
 .../IoTDBDevicePatternTsfilePushConsumerIT.java    |     2 +
 .../IoTDBRootPatternDatasetPushConsumerIT.java     |     2 +
 .../IoTDBTSPatternDatasetPushConsumerIT.java       |     2 +
 .../IoTDBTSPatternTsfilePushConsumerIT.java        |     2 +
 .../IoTDBHistoryRootDatasetPushConsumerIT.java     |     2 +
 .../time/IoTDBHistoryRootTsFilePushConsumerIT.java |     2 +
 .../time/IoTDBRealTimeDBDatasetPushConsumerIT.java |     2 +
 .../time/IoTDBRealTimeDBTsfilePushConsumerIT.java  |     2 +
 ...DBTimeRangeAccurateDBDataSetPushConsumerIT.java |     2 +
 .../IoTDBTimeRangeDBDataSetPushConsumerIT.java     |     2 +
 .../time/IoTDBTimeRangeDBTsfilePushConsumerIT.java |     2 +
 .../topic/IoTDBDataSet1TopicConsumerSpecialIT.java |     2 +
 .../regression/topic/IoTDBTestTopicNameIT.java     |     2 +
 .../regression/user/IoTDBOtherUserConsumerIT.java  |     8 +-
 .../apache/iotdb/tools/it/ExportTsFileTestIT.java  |     3 +-
 .../api/customizer/parameter/PipeParameters.java   |    23 +-
 .../customizer/parameter/PipeParametersTest.java   |     6 +-
 .../org/apache/iotdb/tool/data/ExportDataTree.java |   221 +-
 iotdb-client/client-cpp/pom.xml                    |    37 +-
 .../client-cpp/src/main/AbstractSessionBuilder.h   |    39 +-
 iotdb-client/client-cpp/src/main/CMakeLists.txt    |    43 +-
 iotdb-client/client-cpp/src/main/NodesSupplier.cpp |    73 +-
 iotdb-client/client-cpp/src/main/NodesSupplier.h   |    34 +-
 iotdb-client/client-cpp/src/main/Session.cpp       |     2 +-
 iotdb-client/client-cpp/src/main/Session.h         |     4 +
 iotdb-client/client-cpp/src/main/SessionBuilder.h  |    15 +
 .../client-cpp/src/main/SessionConnection.cpp      |    26 +-
 .../client-cpp/src/main/SessionConnection.h        |    11 +-
 .../client-cpp/src/main/TableSessionBuilder.h      |    15 +
 .../client-cpp/src/main/ThriftConnection.cpp       |    22 +-
 .../client-cpp/src/main/ThriftConnection.h         |    10 +-
 iotdb-client/client-cpp/src/test/CMakeLists.txt    |    74 +-
 iotdb-client/client-cpp/src/test/catch2/catch.hpp  | 17974 +++++++++++++++++++
 iotdb-client/client-cpp/src/test/main.cpp          |    15 +-
 iotdb-client/client-py/iotdb/Session.py            |     8 +-
 .../client-py/iotdb/tsfile/utils/tsblock_serde.py  |     1 -
 .../client-py/iotdb/utils/SessionDataSet.py        |    19 +
 .../client-py/iotdb/utils/iotdb_rpc_dataset.py     |    68 +
 iotdb-client/client-py/session_example.py          |     6 +
 .../client-py/table_model_session_example.py       |     4 +
 .../client-py/tests/integration/test_dataframe.py  |    50 +
 .../client-py/tests/integration/test_todf.py       |     2 +-
 iotdb-core/ainode/iotdb/ainode/core/constant.py    |     2 +
 .../iotdb/ainode/core/inference/pool_controller.py |    11 +
 .../pool_scheduler/basic_pool_scheduler.py         |     9 +
 .../iotdb/ainode/core/manager/inference_manager.py |     8 +-
 .../ainode/core/model/chronos2/chronos_bolt.py     |     2 +-
 .../ainode/iotdb/ainode/core/model/model_info.py   |    13 +
 .../ainode/iotdb/ainode/core/model/model_loader.py |     7 +-
 .../iotdb/ainode/core/model/moirai2/__init__.py    |     8 +-
 .../ainode/core/model/moirai2/common/__init__.py   |     3 -
 .../ainode/core/model/moirai2/common/torch_util.py |   130 +
 .../core/model/moirai2/configuration_moirai2.py    |    61 +
 .../ainode/core/model/moirai2/modeling_moirai2.py  |  1352 ++
 .../ainode/core/model/moirai2/module/__init__.py   |     3 -
 .../ainode/core/model/moirai2/module/attention.py  |   366 +
 .../iotdb/ainode/core/model/moirai2/module/ffn.py  |   159 +
 .../iotdb/ainode/core/model/moirai2/module/norm.py |    62 +
 .../core/model/moirai2/module/packed_scaler.py     |   125 +
 .../model/moirai2/module/position/__init__.py}     |    31 +-
 .../core/model/moirai2/module/position/additive.py |    81 +
 .../model/moirai2/module/position/attn_bias.py     |   113 +
 .../moirai2/module/position/attn_projection.py     |   215 +
 .../core/model/moirai2/module/transformer.py       |   246 +
 .../ainode/core/model/moirai2/module/ts_embed.py   |   294 +
 .../ainode/core/model/moirai2/pipeline_moirai2.py  |   169 +
 .../core/model/moirai2/transform/__init__.py       |     3 -
 .../ainode/core/model/moirai2/transform/_base.py   |    71 +
 .../ainode/core/model/moirai2/transform/_mixin.py  |   126 +
 .../core/model/moirai2/transform/imputation.py     |   133 +
 iotdb-core/ainode/iotdb/ainode/core/rpc/handler.py |    10 +
 iotdb-core/ainode/iotdb/ainode/core/rpc/service.py |    12 +-
 iotdb-core/ainode/pyproject.toml                   |     1 +
 iotdb-core/confignode/pom.xml                      |     6 -
 .../client/sync/CnToAnSyncRequestType.java}        |    10 +-
 .../client/sync/SyncAINodeClientPool.java          |   151 +
 .../consensus/request/ConfigPhysicalPlanType.java  |     1 -
 .../confignode/manager/ClusterQuotaManager.java    |     5 +-
 .../iotdb/confignode/manager/TTLManager.java       |    14 +
 .../agent/plugin/PipeConfigNodePluginAgent.java    |     4 +-
 .../pipe/agent/task/PipeConfigNodeSubtask.java     |    27 +-
 .../pipe/sink/protocol/IoTDBConfigRegionSink.java  |     4 +-
 .../pipe/source/ConfigRegionListeningFilter.java   |     2 +-
 .../iotdb/confignode/persistence/TTLInfo.java      |    17 +
 .../confignode/persistence/quota/QuotaInfo.java    |     4 +-
 .../confignode/persistence/schema/ConfigMTree.java |    12 +-
 .../procedure/PartitionTableAutoCleaner.java       |    18 +-
 .../procedure/impl/node/RemoveAINodeProcedure.java |    22 +-
 .../impl/region/AddRegionPeerProcedure.java        |     2 +-
 .../schema/AlterTimeSeriesDataTypeProcedure.java   |    55 +-
 .../persistence/schema/ConfigMTreeTest.java        |     3 +-
 .../AlterTimeSeriesDataTypeProcedureTest.java      |    66 +
 iotdb-core/datanode/pom.xml                        |    70 +-
 .../org/apache/iotdb/db/auth/AuthorityChecker.java |     2 +
 .../apache/iotdb/db/conf/DataNodeMemoryConfig.java |    17 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |     2 +-
 .../dataregion/DataExecutionVisitor.java           |     9 +-
 .../ainode/AINodeConnectionException.java}         |    25 +-
 .../dataregion/PipeDataRegionPluginAgent.java      |    18 +-
 .../schemaregion/PipeSchemaRegionPluginAgent.java  |     4 +-
 .../db/pipe/agent/task/PipeDataNodeTaskAgent.java  |    29 +-
 .../task/builder/PipeDataNodeTaskBuilder.java      |     2 +-
 .../pipe/agent/task/stage/PipeTaskSinkStage.java   |    12 +-
 .../subtask/processor/PipeProcessorSubtask.java    |     8 +-
 .../agent/task/subtask/sink/PipeSinkSubtask.java   |    40 +-
 .../subtask/sink/PipeSinkSubtaskLifeCycle.java     |     6 +-
 .../task/subtask/sink/PipeSinkSubtaskManager.java  |     2 +-
 .../common/deletion/PipeDeleteDataNodeEvent.java   |     1 +
 .../tablet/PipeInsertNodeTabletInsertionEvent.java |    15 +-
 .../scan/TsFileInsertionEventScanParser.java       |   157 +-
 .../PipeDataNodeRemainingEventAndTimeOperator.java |    10 +-
 .../protocol/thrift/IoTDBDataNodeReceiver.java     |     2 +-
 .../sink/protocol/opcda/OpcDaServerHandle.java     |     4 +-
 .../db/pipe/sink/protocol/opcua/OpcUaSink.java     |    79 +-
 .../sink/protocol/opcua/client/ClientRunner.java   |    51 +-
 .../protocol/opcua/client/IoTDBOpcUaClient.java    |    38 +-
 .../sink/protocol/writeback/WriteBackSink.java     |     2 +-
 .../source/dataregion/IoTDBDataRegionSource.java   |     9 +-
 ...istoricalDataRegionTsFileAndDeletionSource.java |    24 +-
 .../db/protocol/session/MqttClientSession.java     |     6 +-
 .../impl/DataNodeInternalRPCServiceImpl.java       |     8 -
 .../queryengine/execution/QueryStateMachine.java   |     2 +-
 .../execution/executor/RegionReadExecutor.java     |     4 +-
 .../fragment/FragmentInstanceContext.java          |     2 +-
 .../execution/operator/GroupedTopNBuilder.java}    |    17 +-
 .../operator/GroupedTopNRowNumberAccumulator.java  |   483 +
 .../operator/GroupedTopNRowNumberBuilder.java      |   182 +
 .../queryengine/execution/operator/IdRegistry.java |    76 +
 .../operator/RowIdComparisonStrategy.java}         |    11 +-
 .../execution/operator/RowIdHashStrategy.java}     |    12 +-
 .../execution/operator/RowReference.java           |    45 +
 .../operator/RowReferenceTsBlockManager.java       |   386 +
 .../SimpleTsBlockWithPositionComparator.java       |    52 +
 .../operator/TsBlockWithPositionComparator.java}   |    11 +-
 .../TableInsertTabletStatementGenerator.java       |    10 +-
 .../operator/process/TableIntoOperator.java        |     7 +-
 .../execution/operator/process/ValuesOperator.java |   120 +
 .../operator/process/ai/InferenceOperator.java     |    14 +-
 .../operator/process/function/partition/Slice.java |     6 +-
 .../AlignedUpdateViewPathLastCacheOperator.java    |    25 +-
 .../operator/process/last/LastQueryOperator.java   |     6 +-
 .../process/last/UpdateLastCacheOperator.java      |     2 +-
 .../last/UpdateViewPathLastCacheOperator.java      |     2 +-
 .../process/rowpattern/expression/Computation.java |     4 +
 .../operator/process/window/RowNumberOperator.java |   214 +
 .../process/window/TopKRankingOperator.java        |   278 +
 .../execution/operator/source/FileLoaderUtils.java |     8 +-
 .../execution/operator/source/SeriesScanUtil.java  |     8 +-
 .../relational/LastQueryAggTableScanOperator.java  |    64 +-
 .../relational/aggregation/AccumulatorFactory.java |   162 +-
 .../relational/aggregation/FirstAccumulator.java   |   445 +-
 .../relational/aggregation/FirstByAccumulator.java |   494 +-
 .../aggregation/FirstByDescAccumulator.java        |   180 +-
 .../aggregation/FirstDescAccumulator.java          |   168 +-
 .../relational/aggregation/LastAccumulator.java    |   373 +-
 .../relational/aggregation/LastByAccumulator.java  |   442 +-
 .../aggregation/LastByDescAccumulator.java         |   234 +-
 .../aggregation/LastDescAccumulator.java           |   198 +-
 .../relational/aggregation/RecordIterator.java     |     6 +-
 .../source/relational/aggregation/Utils.java       |    39 +-
 .../grouped/GroupedFirstAccumulator.java           |   390 +-
 .../grouped/GroupedFirstByAccumulator.java         |   473 +-
 .../grouped/GroupedLastAccumulator.java            |   390 +-
 .../grouped/GroupedLastByAccumulator.java          |   476 +-
 .../grouped/array/IntArrayFIFOQueue.java           |   201 +
 .../grouped/array/LongBigArrayFIFOQueue.java       |   197 +
 .../grouped/hash/NoChannelGroupByHash.java         |    72 +
 .../relational/ColumnTransformerBuilder.java       |    32 +-
 .../execution/schedule/AbstractDriverThread.java   |     4 +-
 .../execution/schedule/DriverScheduler.java        |     2 +-
 .../execution/schedule/task/DriverTask.java        |    12 +-
 .../queryengine/plan/analyze/AnalyzeVisitor.java   |     6 +-
 .../plan/analyze/load/LoadTsFileAnalyzer.java      |     7 +
 .../analyze/load/LoadTsFileTableSchemaCache.java   |    12 +-
 .../queryengine/plan/execution/QueryExecution.java |     2 +-
 .../execution/config/TableConfigTaskVisitor.java   |    82 +-
 .../config/executor/ClusterConfigTaskExecutor.java |    56 +-
 .../db/queryengine/plan/parser/ASTVisitor.java     |    27 +-
 .../plan/planner/LogicalPlanBuilder.java           |    48 +-
 .../plan/planner/LogicalPlanVisitor.java           |    18 +-
 .../plan/planner/OperatorTreeGenerator.java        |    27 +-
 .../plan/planner/TableOperatorGenerator.java       |   214 +-
 .../plan/planner/plan/node/PlanGraphPrinter.java   |    49 +-
 .../plan/planner/plan/node/PlanNodeType.java       |    16 +-
 .../plan/planner/plan/node/PlanVisitor.java        |    16 +
 .../plan/node/load/LoadSingleTsFileNode.java       |    18 +-
 .../planner/plan/node/load/LoadTsFileNode.java     |    14 +-
 .../plan/node/process/last/LastQueryNode.java      |     6 +-
 .../plan/node/source/LastQueryScanNode.java        |   104 +-
 .../plan/node/write/RelationalInsertRowsNode.java  |    43 -
 .../node/write/RelationalInsertTabletNode.java     |    51 -
 .../relational/analyzer/ExpressionAnalyzer.java    |   105 +
 .../relational/analyzer/StatementAnalyzer.java     |    28 +-
 .../predicate/ConvertPredicateToFilterVisitor.java |    29 +-
 .../PredicatePushIntoMetadataChecker.java          |     6 +
 .../function/tvf/ClassifyTableFunction.java        |    10 +-
 .../function/tvf/ForecastTableFunction.java        |    10 +-
 .../plan/relational/metadata/Metadata.java         |    22 +-
 .../relational/metadata/TableMetadataImpl.java     |    23 +-
 .../fetcher/TableHeaderSchemaValidator.java        |    96 +-
 .../planner/CastToBlobLiteralVisitor.java          |     6 +
 .../planner/CastToBooleanLiteralVisitor.java       |     6 +
 .../planner/CastToDateLiteralVisitor.java          |     6 +
 .../planner/CastToDoubleLiteralVisitor.java        |     6 +
 .../planner/CastToFloatLiteralVisitor.java         |     6 +
 .../planner/CastToInt32LiteralVisitor.java         |     6 +
 .../planner/CastToInt64LiteralVisitor.java         |     6 +
 .../planner/CastToStringLiteralVisitor.java        |     6 +
 .../planner/CastToTimestampLiteralVisitor.java     |     6 +
 .../plan/relational/planner/IrTypeAnalyzer.java    |     7 +
 .../plan/relational/planner/LiteralEncoder.java    |     7 +-
 .../relational/planner/LiteralInterpreter.java     |     7 +
 .../plan/relational/planner/RelationPlanner.java   |     6 +-
 .../plan/relational/planner/SubqueryPlanner.java   |     2 +-
 .../distribute/TableDistributedPlanGenerator.java  |    70 +
 ...ithUncorrelatedScalarSubqueryReconstructor.java |     3 +-
 .../iterative/rule/GatherAndMergeWindows.java      |   333 +
 .../iterative/rule/PushDownFilterIntoWindow.java   |   166 +
 .../iterative/rule/PushDownLimitIntoWindow.java    |   100 +
 .../iterative/rule/RemoveRedundantWindow.java      |    49 +
 .../iterative/rule/ReplaceWindowWithRowNumber.java |    72 +
 .../relational/planner/iterative/rule/Util.java    |    45 +-
 .../plan/relational/planner/node/Patterns.java     |    20 +-
 .../relational/planner/node/RowNumberNode.java     |   215 +
 .../relational/planner/node/TopKRankingNode.java   |   208 +
 .../plan/relational/planner/node/ValuesNode.java   |   236 +
 .../plan/relational/planner/node/WindowNode.java   |     4 +
 .../optimizations/LogicalOptimizeFactory.java      |    16 +-
 .../planner/optimizations/SymbolMapper.java        |    33 +-
 .../optimizations/UnaliasSymbolReferences.java     |    24 +
 .../plan/relational/sql/ast/AstVisitor.java        |     4 +
 .../plan/relational/sql/ast/Expression.java        |     3 +
 .../plan/relational/sql/ast/FloatLiteral.java      |   117 +
 .../plan/relational/sql/ast/LoadTsFile.java        |    11 +-
 .../relational/sql/ast/TableExpressionType.java    |     3 +-
 .../plan/relational/sql/parser/AstBuilder.java     |    80 +-
 .../relational/sql/util/ExpressionFormatter.java   |    15 +-
 .../crud/InsertMultiTabletsStatement.java          |     6 +-
 .../plan/statement/crud/LoadTsFileStatement.java   |     9 +
 .../udf/BuiltinTimeSeriesGeneratingFunction.java   |     2 -
 .../db/queryengine/plan/udf/UDTFForecast.java      |     8 +-
 .../apache/iotdb/db/schemaengine/SchemaEngine.java |    12 +-
 .../impl/SchemaReaderLimitOffsetWrapper.java       |     2 +-
 .../schemaregion/utils/ResourceByPathUtils.java    |    69 +-
 .../db/schemaengine/table/DataNodeTableCache.java  |     8 +-
 .../java/org/apache/iotdb/db/service/DataNode.java |    20 +-
 .../externalservice/BuiltinExternalServices.java   |    13 +-
 .../ExternalServiceManagementService.java          |    56 +-
 .../db/storageengine/dataregion/DataRegion.java    |    74 +-
 .../memtable/AlignedReadOnlyMemChunk.java          |    12 +-
 .../dataregion/memtable/ReadOnlyMemChunk.java      |     8 +-
 .../dataregion/modification/ModificationFile.java  |    12 +-
 .../dataregion/snapshot/SnapshotLoader.java        |     1 +
 .../db/storageengine/load/LoadTsFileManager.java   |     6 +-
 .../task/stage/SubscriptionTaskSinkStage.java      |    16 +-
 .../subtask/SubscriptionSinkSubtaskManager.java    |    37 +-
 .../apache/iotdb/db/utils/ErrorHandlingUtils.java  |    14 +-
 .../org/apache/iotdb/db/utils/HeapTraversal.java   |    64 +
 .../org/apache/iotdb/db/utils/ObjectTypeUtils.java |    61 +-
 .../org/apache/iotdb/db/utils/SchemaUtils.java     |    78 +-
 .../iotdb/db/utils/TimestampPrecisionUtils.java    |     4 +-
 .../db/utils/datastructure/AlignedTVList.java      |     6 +-
 .../db/utils/datastructure/BackAlignedTVList.java  |     3 +-
 .../db/utils/datastructure/BackBinaryTVList.java   |     3 +-
 .../db/utils/datastructure/BackBooleanTVList.java  |     3 +-
 .../db/utils/datastructure/BackDoubleTVList.java   |     3 +-
 .../db/utils/datastructure/BackFloatTVList.java    |     3 +-
 .../db/utils/datastructure/BackIntTVList.java      |     3 +-
 .../db/utils/datastructure/BackLongTVList.java     |     3 +-
 .../db/utils/datastructure/QuickAlignedTVList.java |     3 +-
 .../db/utils/datastructure/QuickBinaryTVList.java  |     3 +-
 .../db/utils/datastructure/QuickBooleanTVList.java |     3 +-
 .../db/utils/datastructure/QuickDoubleTVList.java  |     3 +-
 .../db/utils/datastructure/QuickFloatTVList.java   |     3 +-
 .../db/utils/datastructure/QuickIntTVList.java     |     3 +-
 .../db/utils/datastructure/QuickLongTVList.java    |     3 +-
 .../iotdb/db/utils/datastructure/TVList.java       |     2 +-
 .../db/utils/datastructure/TimAlignedTVList.java   |     3 +-
 .../db/utils/datastructure/TimBinaryTVList.java    |     3 +-
 .../db/utils/datastructure/TimBooleanTVList.java   |     3 +-
 .../db/utils/datastructure/TimDoubleTVList.java    |     3 +-
 .../db/utils/datastructure/TimFloatTVList.java     |     3 +-
 .../iotdb/db/utils/datastructure/TimIntTVList.java |     3 +-
 .../db/utils/datastructure/TimLongTVList.java      |     3 +-
 .../db/auth/role/LocalFileRoleAccessorTest.java    |     2 +-
 .../pipe/event/PipeTsFileInsertionEventTest.java   |     3 +
 .../pipe/event/TsFileInsertionEventParserTest.java |     4 +-
 .../db/pipe/pattern/TreePatternPruningTest.java    |    57 +-
 .../db/pipe/source/IoTDBDataRegionSourceTest.java  |     2 -
 .../db/protocol/rest/GrafanaApiServiceTest.java    |   450 -
 .../db/protocol/rest/IoTDBRestServiceTest.java     |   918 -
 .../process/window/function/FunctionTestUtils.java |     8 +-
 .../distribution/AggregationTableScanTest.java     |   177 +
 .../plan/planner/distribution/LastQueryTest.java   |     3 +
 .../logical/DataQueryLogicalPlannerTest.java       |    11 +-
 .../plan/planner/node/load/LoadTsFileNodeTest.java |     2 +-
 .../planner/node/source/SourceNodeSerdeTest.java   |     2 +
 .../plan/relational/analyzer/AnalyzerTest.java     |     6 +-
 .../plan/relational/analyzer/TSBSMetadata.java     |     6 +-
 .../plan/relational/analyzer/TestMetadata.java     |     6 +-
 .../planner/WindowFunctionOptimizationTest.java    |   300 +
 .../planner/assertions/ExpressionVerifier.java     |    14 +
 .../planner/assertions/PlanMatchPattern.java       |    38 +
 .../planner/assertions/WindowFunctionMatcher.java  |    82 +
 .../plan/statement/InsertStatementTest.java        |    16 +-
 .../compaction/CompactionDataTypeAlterTest.java    |    55 +
 .../settle/SettleCompactionTaskTest.java           |    32 +
 .../dataregion/memtable/PrimitiveMemTableTest.java |    57 +
 .../dataregion/snapshot/IoTDBSnapshotTest.java     |    78 +
 .../org/apache/iotdb/db/utils/AnnotationTest.java  |    59 +
 .../org/apache/iotdb/db/utils/SchemaUtilsTest.java |    18 +-
 .../iotdb/metrics/metricsets/jvm/JvmGcMetrics.java |    12 +-
 iotdb-core/node-commons/pom.xml                    |     4 -
 .../resources/conf/iotdb-system.properties         |     2 +-
 .../conf/iotdb-system.properties.template          |     2 +-
 .../iotdb/commons/auth/entity/TablePrivilege.java  |     3 +
 .../iotdb/commons/binaryallocator/arena/Arena.java |     7 +-
 .../iotdb/commons/client/ClientPoolFactory.java    |    22 +
 .../commons/client/sync/SyncAINodeClient.java      |   153 +
 .../apache/iotdb/commons/conf/CommonConfig.java    |    11 +-
 .../iotdb/commons/conf/CommonDescriptor.java       |     5 -
 .../commons/exception/ObjectFileNotExist.java      |     6 +-
 ...imeSinkNonReportTimeConfigurableException.java} |    40 +-
 ...RuntimeSinkRetryTimesConfigurableException.java |    27 +-
 .../commons/pipe/agent/plugin/PipePluginAgent.java |    68 +-
 .../task/subtask/PipeAbstractSinkSubtask.java      |    52 +
 .../pipe/config/constant/PipeSinkConstant.java     |     5 +
 .../pipe/config/constant/PipeSourceConstant.java   |     2 +
 .../pipe/config/constant/SystemConstant.java       |     2 +-
 .../datastructure/pattern/IoTDBTreePattern.java    |     5 +
 .../datastructure/pattern/PrefixTreePattern.java   |     5 +
 .../pipe/datastructure/pattern/TreePattern.java    |   192 +-
 .../pattern/UnionIoTDBTreePattern.java             |     5 +
 .../datastructure/pattern/UnionTreePattern.java    |     5 +
 .../pattern/WithExclusionIoTDBTreePattern.java     |     5 +
 .../pattern/WithExclusionTreePattern.java          |     5 +
 .../iotdb/commons/pipe/event/EnrichedEvent.java    |     5 +
 .../pipe/receiver/PipeReceiverStatusHandler.java   |    36 +-
 .../commons/schema/table/InformationSchema.java    |    19 -
 .../schema/table/TsFileTableSchemaUtil.java        |    30 +-
 .../apache/iotdb/commons/schema/table/TsTable.java |     6 -
 .../schema/table/column/TsTableColumnCategory.java |     4 +
 .../apache/iotdb/commons/schema/ttl/TTLCache.java  |    29 +
 .../apache/iotdb/commons/service/ServiceType.java  |     2 -
 .../subscription/config/SubscriptionConfig.java    |     4 +-
 .../apache/iotdb/commons/udf/builtin/UDTFJexl.java |   368 -
 .../ErrorHandlingCommonUtils.java}                 |    16 +-
 .../binaryallocator/BinaryAllocatorTest.java       |    10 +-
 .../schema/table/TsFileTableSchemaUtilTest.java    |    16 +-
 iotdb-protocol/pom.xml                             |     1 -
 .../src/main/thrift/datanode.thrift                |     8 -
 pom.xml                                            |    17 +-
 554 files changed, 39483 insertions(+), 6851 deletions(-)

diff --cc 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanGraphPrinter.java
index a402da55d75,180241b4192..180b4b9f1be
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanGraphPrinter.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanGraphPrinter.java
@@@ -84,10 -83,11 +84,12 @@@ import org.apache.iotdb.db.queryengine.
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.MarkDistinctNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.PatternRecognitionNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.PreviousFillNode;
+ import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.RowNumberNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.SemiJoinNode;
 +import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TableDiskUsageInformationSchemaTableScanNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TableFunctionProcessorNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TableScanNode;
+ import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TopKRankingNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TreeDeviceViewScanNode;
  import org.apache.iotdb.db.queryengine.plan.relational.planner.node.UnionNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.ValueFillNode;
diff --cc 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanNodeType.java
index fa1d02f2d3a,55aaefe8be6..6418d783c4e
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanNodeType.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanNodeType.java
@@@ -131,10 -129,11 +131,12 @@@ import org.apache.iotdb.db.queryengine.
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.MarkDistinctNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.PatternRecognitionNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.PreviousFillNode;
+ import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.RowNumberNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.SemiJoinNode;
 +import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TableDiskUsageInformationSchemaTableScanNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TableFunctionNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TableFunctionProcessorNode;
+ import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TopKRankingNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TreeAlignedDeviceViewScanNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TreeNonAlignedDeviceViewScanNode;
  import org.apache.iotdb.db.queryengine.plan.relational.planner.node.UnionNode;
@@@ -322,7 -320,9 +325,10 @@@ public enum PlanNodeType 
    TABLE_UNION_NODE((short) 1034),
    TABLE_INTERSECT_NODE((short) 1035),
    TABLE_EXCEPT_NODE((short) 1036),
-   TABLE_DISK_USAGE_INFORMATION_SCHEMA_TABLE_SCAN_NODE((short) 1037),
+   TABLE_TOPK_RANKING_NODE((short) 1037),
+   TABLE_ROW_NUMBER_NODE((short) 1038),
+   TABLE_VALUES_NODE((short) 1039),
++  TABLE_DISK_USAGE_INFORMATION_SCHEMA_TABLE_SCAN_NODE((short) 1040),
  
    RELATIONAL_INSERT_TABLET((short) 2000),
    RELATIONAL_INSERT_ROW((short) 2001),
@@@ -726,7 -722,11 +732,13 @@@
        case 1036:
          return ExceptNode.deserialize(buffer);
        case 1037:
-         return 
TableDiskUsageInformationSchemaTableScanNode.deserialize(buffer);
+         return TopKRankingNode.deserialize(buffer);
+       case 1038:
+         return RowNumberNode.deserialize(buffer);
+       case 1039:
+         return ValuesNode.deserialize(buffer);
++      case 1040:
++      return TableDiskUsageInformationSchemaTableScanNode.deserialize(buffer);
        case 2000:
          return RelationalInsertTabletNode.deserialize(buffer);
        case 2001:
diff --cc 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributedPlanGenerator.java
index 4b7de7c50c2,7072b5f519f..2ef838d5d65
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributedPlanGenerator.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributedPlanGenerator.java
@@@ -82,9 -80,9 +83,10 @@@ import org.apache.iotdb.db.queryengine.
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.SemiJoinNode;
  import org.apache.iotdb.db.queryengine.plan.relational.planner.node.SortNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.StreamSortNode;
 +import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TableDiskUsageInformationSchemaTableScanNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TableFunctionProcessorNode;
  import org.apache.iotdb.db.queryengine.plan.relational.planner.node.TopKNode;
+ import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TopKRankingNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TreeAlignedDeviceViewScanNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TreeDeviceViewScanNode;
  import 
org.apache.iotdb.db.queryengine.plan.relational.planner.node.TreeNonAlignedDeviceViewScanNode;
diff --cc 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/InformationSchema.java
index 34675b628ce,ac6c8ebab24..5a4f50e5912
--- 
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/InformationSchema.java
+++ 
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/InformationSchema.java
@@@ -353,26 -329,8 +338,25 @@@ public class InformationSchema 
      dataNodesTable.addColumnSchema(
          new AttributeColumnSchema(
              ColumnHeaderConstant.SCHEMA_CONSENSUS_PORT_TABLE_MODEL, 
TSDataType.INT32));
-     dataNodesTable.removeColumnSchema(TsTable.TIME_COLUMN_NAME);
      schemaTables.put(DATA_NODES, dataNodesTable);
  
 +    final TsTable tableDiskUsageTable = new TsTable(TABLE_DISK_USAGE);
 +    tableDiskUsageTable.addColumnSchema(
 +        new FieldColumnSchema(
 +            ColumnHeaderConstant.DATABASE.toLowerCase(Locale.ENGLISH), 
TSDataType.STRING));
 +    tableDiskUsageTable.addColumnSchema(
 +        new FieldColumnSchema(ColumnHeaderConstant.TABLE_NAME_TABLE_MODEL, 
TSDataType.STRING));
 +    tableDiskUsageTable.addColumnSchema(
 +        new FieldColumnSchema(ColumnHeaderConstant.DATA_NODE_ID_TABLE_MODEL, 
TSDataType.INT32));
 +    tableDiskUsageTable.addColumnSchema(
 +        new FieldColumnSchema(ColumnHeaderConstant.REGION_ID_TABLE_MODEL, 
TSDataType.INT32));
 +    tableDiskUsageTable.addColumnSchema(
 +        new 
FieldColumnSchema(ColumnHeaderConstant.TIME_PARTITION_TABLE_MODEL, 
TSDataType.INT64));
 +    tableDiskUsageTable.addColumnSchema(
 +        new FieldColumnSchema(ColumnHeaderConstant.SIZE_IN_BYTES_TABLE_MODEL, 
TSDataType.INT64));
 +    tableDiskUsageTable.removeColumnSchema(TsTable.TIME_COLUMN_NAME);
 +    schemaTables.put(TABLE_DISK_USAGE, tableDiskUsageTable);
 +
      final TsTable connectionsTable = new TsTable(CONNECTIONS);
      connectionsTable.addColumnSchema(
          new TagColumnSchema(ColumnHeaderConstant.DATANODE_ID, 
TSDataType.STRING));


Reply via email to