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

jiangtian pushed a change to branch share_mod_file
in repository https://gitbox.apache.org/repos/asf/iotdb.git


    from 595274192e7 Merge branch 'master' into share_mod_file
     add 2964bd20079 Pipe: Fixed the bug that the create/delete database cannot 
be passed to the receiver & SchemaRegionSnapshot parsing failure & The 
historical table/databases cannot be transferred & The class cast exception at 
receiver (#14876)
     add 7883265abcc Fix the incorrect configuration of the JAVA_HOME 
environment variable in  script." (#14893)
     add 4e0ecc24541 Add Date and Float data IT (#14892)
     add 4aadc09fb20 Fix IoTConsensus safe deleted index again (#14897)
     add 7b588c81b17 Pipe: fix threshold judgment for tablet and tsfile memory 
block & Subscription: close data container for current PipeTsFileInsertionEvent 
in batch (#14901)
     add 897e989261d Fixed the bug that procedure rollback may generate NPE && 
some of the rollback steps may not be / be extra executed (#14871)
     add 065a58d68bd Subscription: add methods to obtain the consumer 
identifier in the top-level interface (#14904)
     add 8760e10b796 Pipe: Avoid stuck in insertion process because failed to 
allocate memory (#14899)
     add 8e4fef3b8f0 Update dockerfile to use the latest ubuntu 24 (#14903)
     add 7615222e8fe Subscription: close memory block for previous tsfile 
response (#14909)
     add b8438dd0165 Add connection_time_out_in_ms for Python SDK (#14898)
     add 43ed88f4909 Allow to write time column only (#14703)
     add 9a93a0e29f1 Reject inserting invalid timestamp string (#14913)
     add 547e7f6f6b8 Initialize WALNode when DataRegion is created for iotv1 
and iotv2 (#14918)
     add 85326097340 Memtable enhancement for query (#14591)
     add 481a79d3c14 Fix that failure of one row in relational InsertRows will 
fail other rows (#14912)
     add b498285c4f4 Pipe: Modify MaxAllowedPinnedMemTableCount to adapt to 
changes in the number of DRs & Modify the implementation of the poll method in 
PipeRealtimePriorityBlockingQueue to reduce commit queue backlog & Adjust the 
default thread count related to Pipe for better performance & Significantly 
reduce pipeMemoryAllocateRetryIntervalMs & Provide a switch for memory control 
of ConnectorReadFileBuffer (#14917)
     add 650bbcc25f7 [RTO/RPO] Unify retry logic on SessionConnection (#14894)
     add 61576c0a5bc Implemented JDBC for IoTDB based on tables
     add 083ae4858fa Fix IT names & Fix region operation related IT (#14905)
     add 4d965e9d6ec Don't log known error's exception thread stack
     add 6b5e5b00e4c [To Master] MQTT Extensions to the Table Model Using the 
Row Protocol (#14848)
     add babc2af50ee Replace ExportTsFile By SubscriptionTsFile (#14812)
     add ca8482a7bb1 Improve authority control of cluster management (#14924)
     add 69a4eb2897b Subscription: avoid null pointer exception when get 
current response due to concurrent operations (#14926)
     add 82624e21d5f Load: auto detect TsFile's model (tree/table) (#14751)
     add 4866f6d2cfa Add logs for PartitionTableAutoCleaner (#14934)
     add 57ce941d889 Load: Add mods file metrics count (#14930)
     add a864d9fabc4   Fix class name of RPCServiceMBean #14940
     add bb8a5f74356 Pipe: Fix the protential resource leak issue of async 
client when async manager is closed (#14929)
     add 72dd41d62ed Pipe: Add memory control mechanism for TsFile batch mode 
in sinks (#14911)
     add 9733c7540cf Delete remove node logic in ServerCommandLine #14933
     add ab2ab36fa7d Subscription: check if all topic messages have been 
consumed when client polling (#14937)
     add 5d38f0c251e Fix the missing deletion when concurrent deletion and 
insertion compaction (#14955)
     add dbe2d37c389 enhance wal compatibility (#14954)
     add de10ea78911 [AINode] Optimize the error information when dropping 
built-in model (#14943)
     add fa9711e1146 IoTConsensusV2: Use custom commitIndex to indicate 
synchronization progress instead of pipe's commitIndex (#14624)
     add 29cc71b599f Add timestamp suffix to vulnerability check report. 
(#14960)
     add fb2cb7a394b Fix state setting of AbstractOperatePipeProcedureV2 & 
Enhance state checking of StateMachineProcedure #14959
     add 9e79d85b7a8 peformance regression of sequential inserting (#14951)
     add 95972550d8c Introduce flushing on specific regions & IoTConsensusV2: 
Flush old leader when leader transfer & Delay the execution of 
invalidateSchemaCache after leader change (#14910)
     add f6c3c5da617 Adapt to Mybatis generator (#14936)
     add 1e6513b1fc5 IoTConsensusV2: Multi-Dirs balance with sequence rolling 
strategy in receiver (#14962)
     add e1840d0ea7a [IoTConsensus] More accurate statistics on IoTConsensus 
memory management (#14965)
     add 56080ee2f58 Revert "Allow to write time column only (#14703)" (#14967)
     add b638a70a4cc Pipe: Reduce the frequency of printing logs when 
AirGapConnector connection fails (#14949)
     add a94ae439dde Fix the support of MQTT with java8 (#14968)
     add f1a224e56c1 Subscription: unify tablet push consumer builder return 
type (#14971)
     add ede623a27d8 Pipe: Implemented OPC DA Sink for local COM & Fixed the 
newest value of OPC UA Sink (#14964)
     add 2a77b7ab162 Pipe: Optimize the TsFile memory control mechanism of the 
disassembly table model (#14890)
     add aad2caa9f22 Fix flush old leader NPE when rebanlce #14981
     add 3384bd69a92 Subscription: add parameter to the clean up method to 
distinguish the force close situation & fix reference count management for 
iteration snapshot (#14966)
     add a1b9f7938af [Table Model Subquery] Support Exists subquery
     add 9ffef99a2ea Pipe: Make client-server the default setting of 
opc-ua-sink (#14979)
     add c1723158ebc [To Master] Adds extensibility to MQTT's table (#14976)
     add 662de3115c5 Pipe: Fixed the NPE caused by creating a new Region during 
the execution of Alter Pipe Procedure. (#14982)
     add b3e57d29409 Shuffle nodeurls to make sure all connections aren't to 
the first node by default #14983
     add ee7e8f9d349 [RTO/RPO] Add Phi Accrual for Node failure detection 
(#14866)
     add 21ad376a2a3 Add -lpf param in ExportData (#14957)
     add 5e1bd035dc6 Improved the calculation accuracy of table schema fetch + 
partial query & Fixed the bug that the attributes' memory is not calculated 
when schema region recovers (#14975)
     add 9c66a3cdc83 Fix group by hash when process TsBlock more than 1024 
lines (#14989)
     add 82e9361c6a6 Implemented max ttl under specific database getter for 
table model (#14977)
     add 174b2cb968f IoTConsensusV2: Transfer table deletion without any parse 
or filter (#14988)
     add c5a2e4364f4 Pipe: implement AutoCloseable for insert node event and 
raw tablet event & Subscription: add parameter control tablet event batch 
estimate & close memory block in tablet event for iteration snapshot (#14991)
     add f4c85210eca Pipe: Refactor pipe metrics related packages (#14997)
     add 90be866a86e Fix StreamingHashAggOperator when process input TsBlock 
with more than maxTsBlockLineNumber unPreGroup values in one preGroup
     add a40a0153fed Try remove NormalizeToOuterToInnerJoin
     add 0db89873e78 Modified pks, sversion, dbname (#14999)
     add 1adc74dffd2 fix: memtable enhancement issues (#14994)
     add e8d07c156da Load: detect region migration during second phase (#15005)
     add 17f099e03db Fix typo in SimpleNestedLoopJoinOperator
     add 5911f231b79 Pipe: Using caching to optimize the verifyTableDataType 
method in the Load analysis phase (#15007)
     add 9154e7c67c8 revert: page access when initialize statistics and build 
TsBlock for aligned memchunk (#15013)
     add 83d53722cd3 Make the error message clearer for query operator
     add d412a202af6 Reject insert without field column (#15017)
     add f9f0574b0f7 Fix frozen IoTConsensus sync lag (#15023)
     add 8fe854752de Bump jinja2 from 3.1.5 to 3.1.6 in /iotdb-core/ainode 
(#15026)
     add 1ab9631cb4b Added comment for table & column
     add 93f0795233d IoTConsensusV2: persistent isGeneratedByPipeConsensus 
(#14938)
     add 1669f503907 [Fix](query)(table model) GroupedAccumulator are not 
discovered before because of stream optimize
     add b8947ff54fd Delete Maintain Auth
     add 809ecd4cad1 Fix (#15027)
     add 23068b42bbe Add memory metrics and refact memory allocation (#14710)
     add f58ba839f2e Fixed the memory leakage of TableDeviceSchemaCache & The 
invalidation logic when filter by SK & The bug that last time may not be 
invalidated when the measurement with largest last time is invalidated (#15018)
     add fddf0a6eaa2 Fixed the metadata query & Fragment Instance & retry's 
timeout
     add 93abf64655f Fix overflow when using format in ns timestamp precision
     add 25af23d1b19 Added comments to tables and columns (#15033)
     add 8608710e89a Fix Memory NPE when use IDEA to debug #15034
     add 727ad63f214 Load: Detect 2PC Second Phase and RM Running in Parallel 
(#15020)
     add c557e3e42fc perf: more adjustment for memtable/tvlist  (#15035)
     add ee8b308d922 Fix resetPeerListTest for unstable port binding #15038
     add ce47273ba7f Subscription: let subscription module fully manage the 
parsing process of the insert node event (#15012)
     add ea4322722f3 Fix some issue in auth model.
     add 5bb6803e999 Pipe: Implemented runtime permission check (#14885)
     add 3b246f1f551 [Fix](query) Fix the calc logic of dispatch read time 
(#15036)
     add 55dc0478376 Fix division by zero error when flush memtable (#15045)
     add 59c1a8ef114 Load: Fix memory size counting on cases when query 
engine's memory is not sufficient (#15049)
     add af11a09648f Pipe: Fix tsfile resource deserialize failed (#15052) 
(#15053)
     add d7dbf41d95b Pipe: Fixed the pipe parsing bug for logical view (#15055)
     add cc0a99a456f Pipe: Optimize realtime performace when pipe starts after 
long time stop with heavy data backlog (#15048) (#15057)
     add f4fd9666876 Introduce User-defined Polymorphic Table Function
     add a7ebfa82873 DAL: Fix deletion buffer oom & enable DAL direct memory 
management
     add 40dd0315408 change next to nextWithTimer (#15071)
     add b2bacd3f284 Fix Memory Statistic in TimePartionInfoManager (#15073)
     add 5b917560d6d Fix the display of current database during switching 
between table and tree model
     add 24a93f578e9 Fixed the concurrency bug of create timeseries / 
set(unset) template & Optimized the table log & Removed the useless 
timeseries/table lock (#15062)
     add f16252d8105 [AINode] Support output time column for model inference
     add 3cab8602ebd IoTConsensusV2: Fix borrow tsfileWriter and delete 
tsfileWriter's file concurrency bug #15072
     add d756afb335f Timestamp of Long.MIN_VALUE may be deleted by ttl in 
compaction task (#15067)
     add e320964de18 Fix the exception handle of InsertionCompactionTask 
(#15074)
     add ce5cfed4cf7 Update DataNodeRegionManager.java (#15076)
     add 3f9778a6004 Compatibility modification for LikeViewExpression 
deserialization
     add df9dc4900fb Add exchange node for every children of 
MultiChildProcessNode
     add 1dcf94262f8 fix: memory cost for aligned tvlist (#15079)
     add 8aaaf8ea0c1 [feat](query) Implement column name match when query in 
TableModel (#14928)
     add 591fc141534 Try fix error inconsistent bug
     add 6a0815577c2 Modify the error message for when parameters do not match
     add 06c0911adca [RTO/RPO] Phi logging/concurrency Improvement (#15092)
     add 69fca073930 Pipe: Fix pipe executor stuck by unlimited file event 
memory allocation retries & Pipe: Fix IO triggered in disruptor & Pipe: Fix 
forceAllocateIfSufficient & Load: Remove RM detect logic during the second 
phase (#15085) (#15091)
     add 2d0ba711075 Int + Date and Long + Date do not check if the date 
exceeds the range
     add bcb18d24a01 IoTConsensusV2: Retry with power-increasing interval when 
follower is read-only (#15075)
     add 98f397c4c49 Optimize the logic of get ReplicaSets for devices
     add 8f15cceca31 Refactor DeviceEntry's attributeValues from List<Binary> 
to Binary[] to reduce the cost of ramBytesUsed()
     add a8e5080fc9c Remove useless metrics in AggTableScan and make the 
TimeseriesMetadataCache get time as FI level
     add 79a6e12b486 Close Session In ImportDataTable (#15065)
     add d3bd5c7bec3 Omitted the useless distinct logic for device when 
determined predicate does not contain "OR"
     add 07e0d21478a [opt](query) Improve the logic to calculate 
TRegionReplicaSets for devices (#15102)
     add 98acf8e5090 Optimized the query logic to make schema or weak data 
query read from local first & random if without local (#15106)
     add a637327f31d  fix create region group (#15108)
     add 19067243d0c Subscription IT: fix 
IoTDBConsumer2With1TopicShareProcessTsfileIT (#15110)
     add 010843f8933 Optimized the show/query devices logic to only return 
required attributes & Reduced unnecessary CPU usage in schema tsBlock building 
(#15109)
     add ec06abee8fc Fix template extension with null value (#15103)
     add ee8db0d3335 Merge branch 'master' into share_mod_file

No new revisions were added by this update.

Summary of changes:
 .github/workflows/vulnerability-check.yml          |    7 +-
 dependencies.json                                  |    1 +
 docker/src/main/DockerCompose/do-docker-build.sh   |    4 +-
 docker/src/main/Dockerfile-1.0.0-confignode        |    2 +-
 docker/src/main/Dockerfile-1.0.0-datanode          |    2 +-
 docker/src/main/Dockerfile-1.0.0-standalone        |    2 +-
 docker/src/main/Dockerfile-1c1d                    |    2 +-
 .../server/CustomizedJsonPayloadFormatter.java     |    8 +-
 .../java/org/apache/iotdb/mqtt/MQTTClient.java     |   39 +-
 .../apache/iotdb/SubscriptionSessionExample.java   |    2 +-
 .../TableModelSubscriptionSessionExample.java      |   16 +-
 .../iotdb/udf/table/ExcludeColumnExample.java      |  108 +
 .../org/apache/iotdb/udf/table/RepeatExample.java  |  125 +
 .../org/apache/iotdb/udf/table/SplitExample.java   |  114 +
 integration-test/pom.xml                           |    4 +
 .../example/relational/MyErrorTableFunction.java   |  114 +
 .../udf/example/relational/MyExcludeColumn.java    |   89 +
 .../udf/example/relational/MyRepeatWithIndex.java  |  102 +
 .../example/relational/MyRepeatWithoutIndex.java   |   99 +
 .../db/query/udf/example/relational/MySplit.java   |   98 +
 .../iotdb/it/env/cluster/ClusterConstant.java      |    1 +
 .../it/env/cluster/config/MppCommonConfig.java     |   10 +-
 .../it/env/cluster/config/MppDataNodeConfig.java   |   12 +
 .../env/cluster/config/MppSharedCommonConfig.java  |   13 +-
 .../iotdb/it/env/cluster/node/DataNodeWrapper.java |    3 +
 .../it/env/remote/config/RemoteCommonConfig.java   |    7 +-
 .../it/env/remote/config/RemoteDataNodeConfig.java |   10 +
 .../org/apache/iotdb/itbase/env/CommonConfig.java  |    4 +-
 .../apache/iotdb/itbase/env/DataNodeConfig.java    |    4 +
 .../org/apache/iotdb/ainode/it/AINodeBasicIT.java  |   17 +-
 .../{AbstractScript.java => AbstractScriptIT.java} |    2 +-
 .../apache/iotdb/cli/it/StartClientScriptIT.java   |    2 +-
 ....java => IoTDBAutoRegionGroupExtension2IT.java} |    4 +-
 ...st.java => IoTDBPartitionTableAutoCleanIT.java} |    2 +-
 ...IoTDBRegionOperationReliabilityITFramework.java |   72 -
 .../IoTDBRegionGroupExpandAndShrinkForIoTV1IT.java |   20 +-
 ...IoTDBRegionMigrateNormalITForIoTV2BatchIT.java} |    2 +-
 ...=> IoTDBRegionMigrateOtherForIoTV2BatchIT.java} |    2 +-
 ... IoTDBRegionMigrateNormalForIoTV2StreamIT.java} |    2 +-
 ...IoTDBRegionMigrateOtherITForIoTV2StreamIT.java} |    2 +-
 ...rCrashWhenRemoveRemotePeerForIoTV2BatchIT.java} |    2 +-
 ...RegionMigrateDataNodeCrashForIoTV2BatchIT.java} |    2 +-
 ...alCrashWhenDeleteLocalPeerForIoTV2BatchIT.java} |    2 +-
 ...lCrashWhenRemoveRemotePeerForIoTV2BatchIT.java} |    2 +-
 ...CrashWhenRemoveRemotePeerForIoTV2StreamIT.java} |    2 +-
 ...egionMigrateDataNodeCrashForIoTV2StreamIT.java} |    2 +-
 ...lCrashWhenDeleteLocalPeerForIoTV2StreamIT.java} |    2 +-
 ...CrashWhenRemoveRemotePeerForIoTV2StreamIT.java} |    2 +-
 ...oTDBRegionMigrateClusterCrashIoTV2BatchIT.java} |    2 +-
 ...BRegionMigrateConfigNodeCrashIoTV2BatchIT.java} |    2 +-
 ...TDBRegionMigrateClusterCrashIoTV2StreamIT.java} |    2 +-
 ...RegionMigrateConfigNodeCrashIoTV2StreamIT.java} |    2 +-
 .../apache/iotdb/db/it/IoTDBDuplicateTimeIT.java   |    5 +-
 .../apache/iotdb/db/it/IoTDBFloatPrecisionIT.java  |   45 +
 .../org/apache/iotdb/db/it/IoTDBLoadTsFileIT.java  |   73 -
 .../org/apache/iotdb/db/it/IoTDBRestartIT.java     |    4 +-
 .../org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java |   38 +
 .../org/apache/iotdb/db/it/auth/IoTDBAuthIT.java   |  132 +
 .../it/auth/IoTDBClusterAuthorityRelationalIT.java |    1 -
 .../iotdb/db/it/auth/IoTDBRelationalAuthIT.java    |   62 +-
 .../iotdb/db/it/auth/IoTDBSystemPermissionIT.java  |    2 -
 .../iotdb/db/it/groupby/IoTDBGroupByUnseqIT.java   |    2 +-
 .../iotdb/db/it/schema/IoTDBExtendTemplateIT.java  |    7 +
 .../org/apache/iotdb/db/it/utils/TestUtils.java    |    1 -
 .../pipe/it/dual/tablemodel/TableModelUtils.java   |    6 +
 .../manual/basic/IoTDBPipeDataSinkIT.java          |    6 +
 .../manual/basic/IoTDBPipeExtractorIT.java         |    7 +
 .../manual/basic/IoTDBPipeLifeCycleIT.java         |   64 +-
 .../manual/basic/IoTDBPipePermissionIT.java        |  226 +
 .../manual/basic/IoTDBPipeProtocolIT.java          |    4 +
 .../manual/basic/IoTDBPipeSwitchStatusIT.java      |    4 +
 .../tablemodel/manual/basic/IoTDBPipeSyntaxIT.java |    1 +
 .../manual/basic/IoTDBPipeWithLoadIT.java          |    4 +
 .../manual/basic/IoTDBTablePatternFormatIT.java    |    7 +
 .../manual/enhanced/IoTDBPipeAutoConflictIT.java   |    4 +
 .../manual/enhanced/IoTDBPipeAutoDropIT.java       |    2 +
 .../manual/enhanced/IoTDBPipeClusterIT.java        |   13 +
 .../enhanced/IoTDBPipeConnectorCompressionIT.java  |   12 +-
 .../enhanced/IoTDBPipeConnectorParallelIT.java     |    2 +
 .../manual/enhanced/IoTDBPipeIdempotentIT.java     |   13 +
 .../manual/enhanced/IoTDBPipeMetaIT.java           |    4 +
 .../manual/enhanced/IoTDBPipeNullValueIT.java      |    1 +
 .../pipe/it/single/IoTDBPipePermissionIT.java      |  157 +
 .../it/db/it/IoTDBAuthenticationTableIT.java       |  114 +-
 .../it/db/it/IoTDBFlushQueryTableIT.java           |   30 +-
 .../relational/it/db/it/IoTDBInsertTableIT.java    |   40 +-
 .../db/it/IoTDBMultiTAGsWithAttributesTableIT.java |   12 +-
 .../relational/it/db/it/IoTDBRestartTableIT.java   |    3 -
 .../it/db/it/udf/IoTDBSQLFunctionManagementIT.java |   22 +-
 .../db/it/udf/IoTDBUserDefinedTableFunctionIT.java |  272 ++
 .../relational/it/mqtt/IoTDBMQTTServiceIT.java     |  132 +
 .../scalar/IoTDBFormatFunctionTableIT.java         |   18 +-
 .../it/query/old/query/IoTDBArithmeticTableIT.java |   12 +
 .../query/old/query/IoTDBGreatestLeastTableIT.java |    2 +-
 .../it/query/recent/IoTDBColumnsMatchTableIT.java  |  354 ++
 .../it/query/recent/IoTDBMaintainAuthIT.java       |   89 +-
 .../it/query/recent/IoTDBTableAggregationIT.java   |    4 +-
 .../recent/IoTDBTableAggregationNonStreamIT.java   |   56 +
 .../IoTDBCorrelatedExistsSubqueryIT.java           |  428 ++
 .../IoTDBUncorrelatedExistsSubqueryIT.java         |  391 ++
 .../relational/it/schema/IoTDBDatabaseIT.java      |   59 +-
 .../iotdb/relational/it/schema/IoTDBTableIT.java   |   37 +-
 .../it/session/IoTDBSessionRelationalIT.java       |  151 +-
 .../iotdb/session/it/IoTDBSessionSimpleIT.java     |   36 +
 .../it/local/IoTDBSubscriptionBasicIT.java         |   38 +-
 .../IoTDBDefaultPullConsumerDataSetIT.java         |   28 +-
 .../regression/param/IoTDBTestParamTopicIT.java    |    2 +-
 ...TDBConsumer2With1TopicShareProcessTsfileIT.java |   14 +-
 .../apache/iotdb/tools/it/ExportDataTestIT.java    |    4 +-
 .../apache/iotdb/tools/it/ExportSchemaTestIT.java  |    4 +-
 .../apache/iotdb/tools/it/ExportTsFileTestIT.java  |   36 +-
 .../apache/iotdb/tools/it/ImportDataTestIT.java    |    4 +-
 .../apache/iotdb/tools/it/ImportSchemaTestIT.java  |    4 +-
 .../src/test/resources/logback-test.xml            |    2 +-
 ...ensusRetryWithIncreasingIntervalException.java} |    9 +-
 .../iotdb/udf/api/relational/TableFunction.java    |   83 +-
 .../iotdb/udf/api/relational/access/Record.java    |    2 +
 .../relational/table/TableFunctionAnalysis.java    |   89 +
 .../table/TableFunctionProcessorProvider.java      |   43 +
 .../api/relational/table/argument/Argument.java    |   41 +-
 .../relational/table/argument/DescribedSchema.java |   89 +
 .../relational/table/argument/ScalarArgument.java  |  155 +
 .../relational/table/argument/TableArgument.java   |  177 +
 .../processor/TableFunctionDataProcessor.java      |   64 +
 .../processor/TableFunctionLeafProcessor.java      |   26 +-
 .../specification/ParameterSpecification.java      |   77 +
 .../ScalarParameterSpecification.java              |   76 +
 .../specification/TableParameterSpecification.java |   98 +
 .../java/org/apache/iotdb/udf/api/type/Type.java   |   38 +
 iotdb-client/cli/pom.xml                           |    4 +
 .../java/org/apache/iotdb/cli/AbstractCli.java     |   20 +-
 .../org/apache/iotdb/tool/common/Constants.java    |   33 +-
 .../org/apache/iotdb/tool/common/OptionsUtil.java  |  167 +-
 .../org/apache/iotdb/tool/data/ExportData.java     |   15 +-
 .../apache/iotdb/tool/data/ExportDataTable.java    |  192 +-
 .../org/apache/iotdb/tool/data/ExportDataTree.java |  185 +-
 .../org/apache/iotdb/tool/data/ImportData.java     |    2 +-
 .../apache/iotdb/tool/data/ImportDataTable.java    |   16 +-
 .../org/apache/iotdb/tool/tsfile/ExportTsFile.java |  539 +--
 .../subscription/AbstractSubscriptionTsFile.java   |   74 +
 .../tool/tsfile/subscription/CommonParam.java      |  212 +
 .../subscription/SubscriptionTableTsFile.java      |  186 +
 .../subscription/SubscriptionTreeTsFile.java       |  183 +
 iotdb-client/client-py/iotdb/Session.py            |   61 +-
 iotdb-client/client-py/iotdb/SessionPool.py        |    4 +
 iotdb-client/client-py/iotdb/table_session.py      |    3 +
 iotdb-client/client-py/iotdb/table_session_pool.py |    2 +
 iotdb-client/jdbc/pom.xml                          |   55 +-
 .../main/java/org/apache/iotdb/jdbc/Constant.java  |    4 +-
 ...ata.java => IoTDBAbstractDatabaseMetadata.java} | 4332 +++++++++-----------
 .../org/apache/iotdb/jdbc/IoTDBConnection.java     |   33 +-
 .../apache/iotdb/jdbc/IoTDBDatabaseMetadata.java   | 3497 ++--------------
 .../org/apache/iotdb/jdbc/IoTDBJDBCResultSet.java  |   25 +-
 .../apache/iotdb/jdbc/IoTDBPreparedStatement.java  |   31 +-
 .../IoTDBRelationalDatabaseMetadata.java           |  554 +++
 .../java/org/apache/iotdb/session/Session.java     |    2 +
 .../apache/iotdb/session/SessionConnection.java    | 1019 ++---
 .../consumer/ISubscriptionTablePullConsumer.java   |   18 +
 .../consumer/ISubscriptionTablePushConsumer.java   |   18 +
 .../consumer/ISubscriptionTreePullConsumer.java    |   18 +
 .../consumer/ISubscriptionTreePushConsumer.java    |   18 +
 .../base/AbstractSubscriptionConsumer.java         |   29 +-
 .../consumer/table/SubscriptionTableProvider.java  |   18 +-
 .../table/SubscriptionTablePullConsumer.java       |   34 +-
 .../table/SubscriptionTablePushConsumer.java       |   36 +-
 .../SubscriptionTablePushConsumerBuilder.java      |    3 +-
 .../consumer/tree/SubscriptionTreeProvider.java    |   18 +-
 .../tree/SubscriptionTreePullConsumer.java         |   34 +-
 .../tree/SubscriptionTreePushConsumer.java         |   34 +-
 .../apache/iotdb/session/util/CheckedSupplier.java |   32 -
 iotdb-core/ainode/poetry.lock                      |  149 +-
 iotdb-core/confignode/pom.xml                      |    4 +
 .../iotdb/confignode/conf/ConfigNodeConfig.java    |   45 +
 .../confignode/conf/ConfigNodeDescriptor.java      |   30 +
 .../consensus/request/ConfigPhysicalPlan.java      |    8 +
 .../consensus/request/ConfigPhysicalPlanType.java  |    2 +
 .../request/ConfigPhysicalPlanVisitor.java         |   15 +
 .../write/table/SetTableColumnCommentPlan.java     |   62 +
 .../request/write/table/SetTableCommentPlan.java   |   57 +
 .../statemachine/ConfigRegionStateMachine.java     |    6 +-
 .../iotdb/confignode/manager/ConfigManager.java    |   23 +
 .../apache/iotdb/confignode/manager/IManager.java  |    3 +
 .../iotdb/confignode/manager/ModelManager.java     |    5 +
 .../confignode/manager/PermissionManager.java      |    4 +
 .../iotdb/confignode/manager/ProcedureManager.java |    2 +-
 .../manager/load/balancer/PartitionBalancer.java   |    8 +-
 .../manager/load/balancer/RouteBalancer.java       |  154 +-
 .../manager/load/cache/AbstractLoadCache.java      |   26 +-
 .../manager/load/cache/IFailureDetector.java}      |   27 +-
 .../manager/load/cache/detector/FixedDetector.java |   58 +
 .../load/cache/detector/PhiAccrualDetector.java    |  181 +
 .../load/cache/node/AINodeHeartbeatCache.java      |   42 +-
 .../load/cache/node/ConfigNodeHeartbeatCache.java  |   30 +-
 .../load/cache/node/DataNodeHeartbeatCache.java    |   40 +-
 .../manager/load/cache/region/RegionCache.java     |   30 +-
 .../iotdb/confignode/manager/node/NodeManager.java |   53 +-
 .../pipe/agent/task/PipeConfigNodeSubtask.java     |    2 +-
 .../pipe/agent/task/PipeConfigNodeTaskAgent.java   |    4 +-
 .../pipe/event/PipeConfigRegionSnapshotEvent.java  |   17 +-
 .../pipe/event/PipeConfigRegionWritePlanEvent.java |   26 +-
 .../extractor/ConfigRegionListeningFilter.java     |    6 +-
 .../pipe/extractor/IoTDBConfigRegionExtractor.java |  120 +-
 ...ConfigPhysicalPlanTablePatternParseVisitor.java |   22 +
 ...nfigPhysicalPlanTablePrivilegeParseVisitor.java |  364 ++
 ...eConfigPhysicalPlanTreePatternParseVisitor.java |    2 +-
 .../manager/pipe/metric/PipeConfigNodeMetrics.java |    9 +
 .../PipeConfigNodeRemainingTimeMetrics.java        |    2 +-
 .../PipeConfigNodeRemainingTimeOperator.java       |    2 +-
 .../PipeConfigNodeResourceMetrics.java             |    2 +-
 .../{ => overview}/PipeProcedureMetrics.java       |    2 +-
 .../metric/{ => overview}/PipeTaskInfoMetrics.java |    2 +-
 .../PipeTemporaryMetaInCoordinatorMetrics.java     |    2 +-
 .../PipeConfigNodeReceiverMetrics.java             |    2 +-
 .../PipeConfigRegionConnectorMetrics.java          |    2 +-
 .../PipeConfigNodeListenerMetrics.java             |    2 +-
 .../PipeConfigRegionExtractorMetrics.java          |    2 +-
 .../receiver/protocol/IoTDBConfigNodeReceiver.java |  153 +-
 .../PipeConfigPhysicalPlanTSStatusVisitor.java     |   36 +-
 .../resource/PipeConfigNodeResourceManager.java    |    1 +
 .../PipeConfigNodeSnapshotResourceManager.java     |    2 +-
 .../manager/schema/ClusterSchemaManager.java       |   52 +-
 .../iotdb/confignode/persistence/AuthorInfo.java   |    4 +
 .../iotdb/confignode/persistence/ModelInfo.java    |    2 +-
 .../iotdb/confignode/persistence/TTLInfo.java      |    2 +-
 .../persistence/executor/ConfigPlanExecutor.java   |    6 +
 .../partition/DatabasePartitionTable.java          |   14 +-
 .../confignode/persistence/pipe/PipeInfo.java      |    2 +-
 .../schema/CNPhysicalPlanGenerator.java            |   15 +-
 .../persistence/schema/ClusterSchemaInfo.java      |   59 +
 .../confignode/persistence/schema/ConfigMTree.java |   31 +
 ...otParser.java => ConfigNodeSnapshotParser.java} |   24 +-
 .../procedure/PartitionTableAutoCleaner.java       |   17 +-
 .../procedure/impl/StateMachineProcedure.java      |   16 +-
 .../impl/pipe/AbstractOperatePipeProcedureV2.java  |    4 +-
 .../impl/pipe/task/AlterPipeProcedureV2.java       |   67 +-
 .../impl/pipe/task/CreatePipeProcedureV2.java      |   97 +
 .../impl/region/CreateRegionGroupsProcedure.java   |   35 +-
 .../impl/schema/AlterLogicalViewProcedure.java     |    4 +-
 .../impl/schema/UnsetTemplateProcedure.java        |  146 +-
 .../iotdb/confignode/service/ConfigNode.java       |   44 +-
 .../request/ConfigPhysicalPlanSerDeTest.java       |   33 +-
 .../manager/load/cache/detector/DetectorTest.java  |  179 +
 ...igPhysicalPlanTablePatternParseVisitorTest.java |   18 +
 ...figPhysicalPlanTreePatternParseVisitorTest.java |    2 +-
 .../common/request/IConsensusRequest.java          |    5 +
 .../common/request/IndexedConsensusRequest.java    |    8 +-
 .../iotdb/consensus/config/IoTConsensusConfig.java |   30 +-
 .../consensus/config/PipeConsensusConfig.java      |   21 +-
 .../apache/iotdb/consensus/iot/IoTConsensus.java   |    9 +-
 .../consensus/iot/IoTConsensusServerImpl.java      |   20 +-
 .../consensus/iot/client/DispatchLogHandler.java   |   27 +-
 .../logdispatcher/IoTConsensusMemoryManager.java   |   50 +-
 .../consensus/iot/logdispatcher/LogDispatcher.java |   12 +-
 .../apache/iotdb/consensus/pipe/PipeConsensus.java |   80 +-
 .../consensus/pipe/PipeConsensusServerImpl.java    |   25 +-
 .../pipe/consensuspipe/ConsensusPipeManager.java   |    8 +-
 ...xManager.java => ReplicateProgressManager.java} |    8 +-
 .../pipe/metric/PipeConsensusSyncLagManager.java   |   77 +-
 .../apache/iotdb/consensus/iot/StabilityTest.java  |   49 +-
 iotdb-core/datanode/pom.xml                        |    8 +
 .../src/assembly/resources/sbin/start-datanode.bat |    2 +-
 .../ArithmeticBinaryColumnTransformer.ftl          |   11 +
 .../org/apache/iotdb/db/auth/AuthorityChecker.java |   11 +
 .../apache/iotdb/db/conf/DataNodeMemoryConfig.java |  684 ++++
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  388 +-
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |  329 +-
 .../db/consensus/DataRegionConsensusImpl.java      |   15 +-
 .../PipeDataRegionConnectorConstructor.java        |    4 +
 .../runtime/PipeSchemaRegionListenerManager.java   |    2 +-
 .../db/pipe/agent/task/PipeDataNodeTaskAgent.java  |   62 +-
 .../pipe/agent/task/connection/EnrichedDeque.java  |    2 +-
 .../agent/task/connection/PipeEventCollector.java  |   34 +-
 .../agent/task/stage/PipeTaskProcessorStage.java   |    7 +-
 .../subtask/connector/PipeConnectorSubtask.java    |    4 +-
 .../connector/PipeConnectorSubtaskManager.java     |    2 +-
 .../PipeRealtimePriorityBlockingQueue.java         |   53 +-
 .../subtask/processor/PipeProcessorSubtask.java    |    7 +-
 .../client/IoTDBDataNodeAsyncClientManager.java    |    4 +
 .../evolvable/batch/PipeTabletEventBatch.java      |   37 +-
 .../evolvable/batch/PipeTabletEventPlainBatch.java |   41 +-
 .../batch/PipeTabletEventTsFileBatch.java          |   11 +-
 .../connector/protocol/opcda/OpcDaConnector.java   |  138 +
 .../pipe/connector/protocol/opcda/OpcDaHeader.java |  200 +
 .../protocol/opcda/OpcDaServerHandle.java          |  390 ++
 .../connector/protocol/opcua/OpcUaConnector.java   |   50 +-
 .../connector/protocol/opcua/OpcUaNameSpace.java   |    2 +-
 .../pipeconsensus/PipeConsensusAsyncConnector.java |   16 +-
 .../pipeconsensus/PipeConsensusSyncConnector.java  |    9 +-
 .../PipeConsensusTabletInsertionEventHandler.java  |    8 +-
 .../PipeConsensusTsFileInsertionEventHandler.java  |    8 +-
 .../PipeConsensusTransferBatchReqBuilder.java      |    5 +-
 .../async/IoTDBDataRegionAsyncConnector.java       |   21 +-
 .../async/handler/PipeTransferTsFileHandler.java   |   21 +-
 .../protocol/writeback/WriteBackConnector.java     |   83 +-
 ....java => ReplicateProgressDataNodeManager.java} |   36 +-
 .../deletion/DeletionResourceManager.java          |    4 +-
 .../deletion/persist/PageCacheDeletionBuffer.java  |   14 +-
 .../db/pipe/event/UserDefinedEnrichedEvent.java    |   14 +-
 .../db/pipe/event/common/PipeInsertionEvent.java   |   30 +-
 .../common/deletion/PipeDeleteDataNodeEvent.java   |   31 +-
 .../event/common/heartbeat/PipeHeartbeatEvent.java |   19 +-
 .../schema/PipeSchemaRegionSnapshotEvent.java      |   23 +-
 .../schema/PipeSchemaRegionWritePlanEvent.java     |   18 +-
 .../tablet/PipeInsertNodeTabletInsertionEvent.java |  131 +-
 .../common/tablet/PipeRawTabletInsertionEvent.java |   48 +-
 .../event/common/terminate/PipeTerminateEvent.java |   13 +-
 .../common/tsfile/PipeTsFileInsertionEvent.java    |  123 +-
 .../parser/TsFileInsertionEventParserProvider.java |    5 +-
 .../scan/TsFileInsertionEventScanParser.java       |    3 -
 .../table/TsFileInsertionEventTableParser.java     |  111 +-
 ...ileInsertionEventTableParserTabletIterator.java |  421 +-
 .../db/pipe/event/realtime/PipeRealtimeEvent.java  |   28 +-
 .../event/realtime/PipeRealtimeEventFactory.java   |   92 +-
 .../dataregion/IoTDBDataRegionExtractor.java       |    6 +-
 ...oricalDataRegionTsFileAndDeletionExtractor.java |   42 +-
 .../realtime/PipeRealtimeDataRegionExtractor.java  |   22 +-
 .../PipeRealtimeDataRegionHybridExtractor.java     |   16 +-
 .../realtime/assigner/PipeDataRegionAssigner.java  |   14 +-
 .../dataregion/realtime/epoch/TsFileEpoch.java     |    2 +-
 .../realtime/epoch/TsFileEpochManager.java         |    8 +-
 .../listener/PipeInsertionDataNodeListener.java    |   18 +-
 .../matcher/CachedSchemaPatternMatcher.java        |   40 +-
 .../realtime/matcher/PipeDataRegionMatcher.java    |    3 +
 .../schemaregion/IoTDBSchemaRegionExtractor.java   |   82 +-
 .../PipePlanTablePrivilegeParseVisitor.java        |   81 +
 .../schemaregion/PipeStatementToPlanVisitor.java   |   48 +
 .../iotdb/db/pipe/metric/PipeDataNodeMetrics.java  |   12 +
 .../PipeDataNodeRemainingEventAndTimeMetrics.java  |    2 +-
 .../PipeDataNodeRemainingEventAndTimeOperator.java |    2 +-
 .../{ => overview}/PipeHeartbeatEventMetrics.java  |    2 +-
 .../metric/{ => overview}/PipeResourceMetrics.java |   30 +-
 .../PipeWALInsertNodeCacheMetrics.java             |    2 +-
 .../{ => processor}/PipeProcessorMetrics.java      |    2 +-
 .../PipeDataNodeReceiverMetrics.java               |    2 +-
 .../PipeSchemaRegionConnectorMetrics.java          |    2 +-
 .../PipeSchemaRegionExtractorMetrics.java          |    2 +-
 .../PipeSchemaRegionListenerMetrics.java           |    2 +-
 .../{ => sink}/PipeDataRegionConnectorMetrics.java |    2 +-
 .../metric/{ => source}/PipeAssignerMetrics.java   |    2 +-
 .../{ => source}/PipeDataRegionEventCounter.java   |    2 +-
 .../PipeDataRegionExtractorMetrics.java            |    2 +-
 .../pipeconsensus/PipeConsensusProcessor.java      |   43 +-
 .../pipeconsensus/PipeConsensusReceiver.java       |  368 +-
 .../protocol/thrift/IoTDBDataNodeReceiver.java     |   14 +-
 ...leStatementDataTypeConvertExecutionVisitor.java |    1 +
 .../resource/memory/InsertNodeMemoryEstimator.java |    2 +-
 .../db/pipe/resource/memory/PipeMemoryBlock.java   |    2 +-
 .../db/pipe/resource/memory/PipeMemoryManager.java |  221 +-
 .../pipe/resource/memory/PipeMemoryWeightUtil.java |   65 +
 .../pipe/resource/tsfile/PipeTsFileResource.java   |    6 +-
 .../db/protocol/mqtt/JSONPayloadFormatter.java     |    9 +-
 .../db/protocol/mqtt/LinePayloadFormatter.java     |  257 ++
 .../iotdb/db/protocol/mqtt/MPPPublishHandler.java  |  244 +-
 .../org/apache/iotdb/db/protocol/mqtt/Message.java |   58 +-
 .../iotdb/db/protocol/mqtt/PayloadFormatter.java   |    6 +
 .../iotdb/db/protocol/mqtt/TableMessage.java       |  144 +
 .../mqtt/{Message.java => TreeMessage.java}        |   16 +-
 .../db/protocol/rest/impl/PingApiServiceImpl.java  |    4 +-
 .../v1/handler/StatementConstructionHandler.java   |    2 +-
 .../iotdb/db/protocol/session/SessionManager.java  |   12 +
 .../impl/DataNodeInternalRPCServiceImpl.java       |   71 +-
 .../db/queryengine/execution/driver/Driver.java    |   15 +-
 .../execution/exchange/SharedTsBlockQueue.java     |   13 +-
 .../execution/exchange/sink/ISinkChannel.java      |    2 +
 .../execution/exchange/sink/LocalSinkChannel.java  |   21 +-
 .../execution/exchange/sink/ShuffleSinkHandle.java |    5 +-
 .../execution/exchange/sink/SinkChannel.java       |    5 +-
 .../exchange/source/LocalSourceHandle.java         |   12 +-
 .../execution/exchange/source/SourceHandle.java    |    2 +-
 .../execution/executor/RegionWriteExecutor.java    |   18 +-
 .../fragment/FragmentInstanceContext.java          |   70 +-
 .../fragment/FragmentInstanceExecution.java        |   18 +-
 .../fragment/FragmentInstanceManager.java          |   26 +-
 .../execution/fragment/QueryContext.java           |    9 +
 .../execution/fragment/QueryStatistics.java        |   10 +
 .../execution/memory/LocalMemoryManager.java       |    5 +-
 .../queryengine/execution/memory/MemoryPool.java   |   42 +-
 .../execution/operator/AbstractOperator.java       |    5 +-
 ...owOperator.java => AssignUniqueIdOperator.java} |   77 +-
 .../operator/process/CollectOperator.java          |    7 +
 .../operator/process/EnforceSingleRowOperator.java |    2 +-
 .../operator/process/ai/InferenceOperator.java     |   42 +-
 .../process/function/PartitionRecognizer.java      |  179 +
 .../function/TableFunctionLeafOperator.java        |  111 +
 .../process/function/TableFunctionOperator.java    |  269 ++
 .../process/function/partition/PartitionState.java |   62 +
 .../operator/process/function/partition/Slice.java |  183 +
 .../process/function/partition/SliceCache.java     |  106 +
 .../join/SimpleNestedLoopCrossJoinOperator.java    |    2 +-
 .../process/window/TableWindowOperator.java        |    2 +-
 .../operator/schema/SchemaQueryScanOperator.java   |   12 +-
 .../schema/source/DeviceAttributeUpdater.java      |   10 +-
 .../schema/source/DeviceBlackListConstructor.java  |   11 +-
 .../schema/source/DevicePredicateFilter.java       |   13 +-
 .../schema/source/DevicePredicateHandler.java      |   22 +-
 .../operator/schema/source/DeviceUpdater.java      |   13 +-
 .../operator/schema/source/ISchemaSource.java      |    5 +
 .../schema/source/SchemaSourceFactory.java         |    4 +-
 .../schema/source/TableDeviceFetchSource.java      |   21 +
 .../schema/source/TableDeviceQuerySource.java      |   57 +-
 .../operator/sink/ShuffleHelperOperator.java       |    2 +-
 .../relational/AbstractAggTableScanOperator.java   |   17 +-
 .../relational/AbstractMergeSortJoinOperator.java  |    4 +-
 .../relational/AbstractTableScanOperator.java      |    2 +-
 .../InformationSchemaContentSupplierFactory.java   |   15 +-
 .../relational/LastQueryAggTableScanOperator.java  |    6 +-
 .../relational/MergeSortLeftJoinOperator.java      |  163 +
 .../relational/aggregation/TableAggregator.java    |    9 +-
 .../aggregation/grouped/GroupedAggregator.java     |    4 +-
 .../grouped/GroupedFirstAccumulator.java           |   11 +-
 .../grouped/GroupedFirstByAccumulator.java         |    2 +-
 .../grouped/GroupedLastAccumulator.java            |    1 +
 .../grouped/GroupedLastByAccumulator.java          |    2 +-
 .../grouped/GroupedVarianceAccumulator.java        |    2 +-
 .../grouped/StreamingHashAggregationOperator.java  |    3 +-
 .../aggregation/grouped/hash/HashStrategy.java     |    2 +-
 .../execution/schedule/AbstractDriverThread.java   |   27 +-
 .../execution/schedule/DriverScheduler.java        |    8 +-
 .../metric/SeriesScanCostMetricSet.java            |   40 +-
 .../iotdb/db/queryengine/plan/Coordinator.java     |    8 +-
 .../queryengine/plan/analyze/AnalyzeVisitor.java   |   78 +-
 .../analyze/cache/partition/PartitionCache.java    |   16 +-
 .../cache/schema/DataNodeDevicePathCache.java      |   23 +-
 .../schema/dualkeycache/impl/DualKeyCacheImpl.java |    9 +-
 .../plan/analyze/load/LoadTsFileAnalyzer.java      |  562 ++-
 .../analyze/load/LoadTsFileTableSchemaCache.java   |   24 +-
 .../load/LoadTsFileToTableModelAnalyzer.java       |  226 -
 .../load/LoadTsFileToTreeModelAnalyzer.java        |  187 -
 .../load/TreeSchemaAutoCreatorAndVerifier.java     |    4 +-
 .../plan/analyze/lock/SchemaLockType.java          |   13 -
 .../analyze/schema/AutoCreateSchemaExecutor.java   |    6 +-
 .../analyze/schema/ClusterSchemaFetchExecutor.java |   11 +-
 .../plan/analyze/schema/TemplateSchemaFetcher.java |   11 +-
 .../queryengine/plan/execution/QueryExecution.java |    9 +-
 .../execution/config/TableConfigTaskVisitor.java   |  218 +-
 .../config/executor/ClusterConfigTaskExecutor.java |  103 +
 .../config/executor/IConfigTaskExecutor.java       |   16 +
 .../config/metadata/ShowFunctionsTask.java         |    6 +
 .../relational/AlterTableCommentColumnTask.java    |   53 +
 .../relational/AlterTableCommentTableTask.java     |   48 +
 .../relational/DescribeTableDetailsTask.java       |    6 +
 .../metadata/relational/ShowTablesDetailsTask.java |    7 +
 .../execution/config/sys/pipe/ShowPipeTask.java    |    2 +-
 .../db/queryengine/plan/parser/ASTVisitor.java     |    3 +
 .../plan/parser/StatementGenerator.java            |    4 +-
 .../plan/planner/LocalExecutionPlanContext.java    |    3 +-
 .../plan/planner/LocalExecutionPlanner.java        |  124 +-
 .../plan/planner/LogicalPlanBuilder.java           |    1 +
 .../plan/planner/LogicalPlanVisitor.java           |    6 +-
 .../plan/planner/OperatorTreeGenerator.java        |    1 +
 .../plan/planner/TableOperatorGenerator.java       |  166 +-
 .../SimpleFragmentParallelPlanner.java             |   18 +-
 .../distribution/WriteFragmentParallelPlanner.java |    3 +-
 .../plan/planner/plan/PlanFragment.java            |   22 +-
 .../plan/planner/plan/node/PlanGraphPrinter.java   |   64 +
 .../plan/planner/plan/node/PlanNodeType.java       |   13 +-
 .../plan/planner/plan/node/PlanVisitor.java        |   15 +
 .../plan/node/process/AI/InferenceNode.java        |   18 +-
 .../plan/planner/plan/node/write/InsertNode.java   |    4 +-
 .../plan/relational/analyzer/Analysis.java         |   27 +-
 .../relational/analyzer/ExpressionAnalyzer.java    |    6 +
 .../relational/analyzer/StatementAnalyzer.java     | 1419 ++++++-
 .../analyzer/StatementAnalyzerFactory.java         |    4 +
 .../PredicatePushIntoMetadataChecker.java          |    7 +-
 .../analyzer/tablefunction/ArgumentAnalysis.java}  |   39 +-
 .../analyzer/tablefunction/ArgumentsAnalysis.java  |   52 +
 .../tablefunction/TableArgumentAnalysis.java       |  152 +
 .../TableFunctionInvocationAnalysis.java           |   68 +
 .../relational/metadata/AlignedDeviceEntry.java    |   20 +-
 .../plan/relational/metadata/DeviceEntry.java      |   26 +-
 .../plan/relational/metadata/Metadata.java         |    3 +
 .../metadata/NonAlignedAlignedDeviceEntry.java     |   20 +-
 .../relational/metadata/TableMetadataImpl.java     |   15 +-
 .../plan/relational/metadata/TableSchema.java      |    2 +-
 .../fetcher/DeviceInCacheFilterVisitor.java        |    4 +-
 .../metadata/fetcher/SchemaPredicateUtil.java      |   10 +-
 .../metadata/fetcher/TableDeviceSchemaFetcher.java |   27 +-
 .../fetcher/TableDeviceSchemaValidator.java        |    6 +-
 .../fetcher/TableHeaderSchemaValidator.java        |   47 +-
 .../fetcher/cache/TableAttributeSchema.java        |    6 +-
 .../fetcher/cache/TableDeviceLastCache.java        |    5 +-
 .../fetcher/cache/TableDeviceSchemaCache.java      |   36 +-
 .../planner/DataOrganizationSpecification.java     |  106 +
 .../plan/relational/planner/QueryPlanner.java      |   20 +
 .../plan/relational/planner/RelationPlanner.java   |  140 +-
 .../relational/planner/TableLogicalPlanner.java    |   15 +-
 .../planner/distribute/AddExchangeNodes.java       |   36 +-
 .../distribute/TableDistributedPlanGenerator.java  |  234 +-
 .../distribute/TableDistributedPlanner.java        |   12 +-
 .../distribute/TableModelQueryFragmentPlanner.java |   33 +-
 .../plan/relational/planner/ir/IrUtils.java        |   13 +-
 .../iterative/rule/AggregationDecorrelation.java   |   83 +
 .../rule/ImplementTableFunctionSource.java         |  163 +
 .../rule/PruneAssignUniqueIdColumns.java}          |   33 +-
 .../rule/PruneTableFunctionProcessorColumns.java   |   86 +
 .../PruneTableFunctionProcessorSourceColumns.java  |   96 +
 .../iterative/rule/RemoveRedundantExists.java      |  104 +
 ...orrelatedDistinctAggregationWithProjection.java |  186 +
 ...elatedDistinctAggregationWithoutProjection.java |  167 +
 ...mCorrelatedGlobalAggregationWithProjection.java |  318 ++
 ...rrelatedGlobalAggregationWithoutProjection.java |  302 ++
 ...CorrelatedGroupedAggregationWithProjection.java |  252 ++
 ...relatedGroupedAggregationWithoutProjection.java |  233 ++
 .../rule/TransformCorrelatedJoinToJoin.java        |   99 +
 .../rule/TransformExistsApplyToCorrelatedJoin.java |  214 +
 .../relational/planner/node/AssignUniqueId.java    |   97 +
 .../plan/relational/planner/node/ExchangeNode.java |    6 +-
 .../plan/relational/planner/node/OutputNode.java   |    2 +
 .../plan/relational/planner/node/Patterns.java     |   40 +-
 .../relational/planner/node/TableFunctionNode.java |  358 ++
 .../planner/node/TableFunctionProcessorNode.java   |  274 ++
 .../planner/optimizations/JoinUtils.java           |  249 +-
 .../optimizations/LogicalOptimizeFactory.java      |   46 +-
 .../optimizations/PlanNodeDecorrelator.java        |  699 ++++
 .../PushLimitOffsetIntoTableScan.java              |   11 +
 .../optimizations/PushPredicateIntoTableScan.java  |  158 +-
 .../planner/optimizations/SymbolMapper.java        |    7 +
 .../optimizations/UnaliasSymbolReferences.java     |  120 +
 .../relational/planner/optimizations/Util.java     |   19 +
 .../plan/relational/security/AccessControl.java    |   18 +-
 .../relational/security/AccessControlImpl.java     |   29 +-
 .../relational/security/AllowAllAccessControl.java |   11 +-
 .../relational/security/ITableAuthChecker.java     |    3 +
 .../relational/security/ITableAuthCheckerImpl.java |   18 +
 .../relational/security/TableModelPrivilege.java   |    5 -
 .../sql/ast/AbstractQueryDeviceWithCache.java      |   33 +-
 .../relational/sql/ast/AbstractTraverseDevice.java |   11 +-
 .../plan/relational/sql/ast/AstVisitor.java        |   29 +
 .../plan/relational/sql/ast/ColumnDefinition.java  |   27 +-
 .../plan/relational/sql/ast/Columns.java           |   96 +
 .../plan/relational/sql/ast/CreateTable.java       |    8 +
 .../plan/relational/sql/ast/DeleteDevice.java      |   19 +-
 .../plan/relational/sql/ast/LoadTsFile.java        |   14 +-
 .../plan/relational/sql/ast/SetColumnComment.java  |  116 +
 .../plan/relational/sql/ast/SetProperties.java     |   12 -
 .../plan/relational/sql/ast/SetTableComment.java   |   98 +
 .../plan/relational/sql/ast/ShowDevice.java        |   10 +-
 .../sql/ast/ShowQueriesStatement.java}             |   24 +-
 .../plan/relational/sql/ast/SingleColumn.java      |   21 +
 .../relational/sql/ast/TableFunctionArgument.java  |   92 +
 .../sql/ast/TableFunctionInvocation.java           |   92 +
 .../sql/ast/TableFunctionTableArgument.java        |  119 +
 .../queryengine/plan/relational/sql/ast/Trim.java  |    2 +-
 .../plan/relational/sql/parser/AstBuilder.java     |  197 +-
 .../plan/relational/sql/rewrite/ShowRewrite.java   |   26 +-
 .../sql/rewrite/StatementRewriteFactory.java       |    6 +-
 .../relational/sql/util/ExpressionFormatter.java   |    6 +
 .../plan/relational/sql/util/SqlFormatter.java     |  117 +-
 .../scheduler/FragmentInstanceDispatcherImpl.java  |   63 +-
 .../scheduler/load/LoadTsFileDispatcherImpl.java   |   11 +-
 .../plan/scheduler/load/LoadTsFileScheduler.java   |   96 +-
 .../plan/statement/crud/LoadTsFileStatement.java   |   18 +-
 .../plan/statement/crud/QueryStatement.java        |    9 +
 .../metadata/CountTimeSlotListStatement.java       |    7 +
 .../statement/metadata/GetRegionIdStatement.java   |    7 +
 .../metadata/GetSeriesSlotListStatement.java       |    7 +
 .../metadata/GetTimeSlotListStatement.java         |    7 +
 .../metadata/RemoveConfigNodeStatement.java        |    9 +-
 .../metadata/RemoveDataNodeStatement.java          |    9 +-
 .../statement/metadata/ShowClusterIdStatement.java |    7 +
 .../statement/metadata/ShowClusterStatement.java   |    9 +-
 .../metadata/ShowConfigNodesStatement.java         |    4 +-
 .../statement/metadata/ShowDataNodesStatement.java |    4 +-
 .../statement/metadata/ShowRegionStatement.java    |    4 +-
 .../metadata/model/ShowAINodesStatement.java       |    7 +
 .../metadata/region/ExtendRegionStatement.java     |    9 +-
 .../metadata/region/MigrateRegionStatement.java    |    9 +-
 .../region/ReconstructRegionStatement.java         |    9 +-
 .../metadata/region/RemoveRegionStatement.java     |    9 +-
 .../plan/statement/sys/KillQueryStatement.java     |    9 +-
 .../plan/statement/sys/ShowQueriesStatement.java   |    9 +-
 .../statement/sys/TestConnectionStatement.java     |    3 +-
 .../unary/scalar/FormatColumnTransformer.java      |    4 +-
 .../metric/SchemaEngineCachedMetric.java           |    5 +-
 .../rescon/ISchemaRegionStatistics.java            |    2 +
 .../rescon/MemSchemaEngineStatistics.java          |   41 +-
 .../rescon/MemSchemaRegionStatistics.java          |   16 +
 .../attribute/DeviceAttributeStore.java            |   48 +-
 .../attribute/IDeviceAttributeStore.java           |   16 +-
 .../schemaregion/impl/SchemaRegionMemoryImpl.java  |   65 +-
 .../ReleaseFlushStrategySizeBasedImpl.java         |    6 +-
 .../read/resp/info/impl/ShowDevicesResult.java     |    2 +-
 .../schemaregion/utils/ResourceByPathUtils.java    |  146 +-
 .../db/schemaengine/table/DataNodeTableCache.java  |   28 +-
 .../template/TemplateInternalRPCUpdateType.java    |    5 +-
 .../java/org/apache/iotdb/db/service/DataNode.java |   66 +-
 .../iotdb/db/service/DataNodeShutdownHook.java     |   22 +-
 .../{RPCService.java => ExternalRPCService.java}   |    6 +-
 ...viceMBean.java => ExternalRPCServiceMBean.java} |    2 +-
 .../org/apache/iotdb/db/service/MQTTService.java   |    2 +
 .../db/service/metrics/CompactionMetrics.java      |    2 +-
 .../iotdb/db/service/metrics/WritingMetrics.java   |   31 +-
 .../metrics/memory/ConsensusMemoryMetrics.java     |   50 +-
 .../metrics/memory/GlobalMemoryMetrics.java        |   82 +-
 .../metrics/memory/OffHeapMemoryMetrics.java       |  102 +
 .../metrics/memory/QueryEngineMemoryMetrics.java   |  281 +-
 .../metrics/memory/SchemaEngineMemoryMetrics.java  |  159 +-
 .../metrics/memory/StorageEngineMemoryMetrics.java |  361 +-
 .../metrics/memory/StreamEngineMemoryMetrics.java  |   50 +-
 .../iotdb/db/storageengine/StorageEngine.java      |   23 +-
 .../db/storageengine/buffer/BloomFilterCache.java  |   27 +-
 .../iotdb/db/storageengine/buffer/ChunkCache.java  |   27 +-
 .../buffer/TimeSeriesMetadataCache.java            |   47 +-
 .../db/storageengine/dataregion/DataRegion.java    |   21 +-
 .../storageengine/dataregion/DataRegionInfo.java   |    6 +-
 .../execute/task/CrossSpaceCompactionTask.java     |    2 +-
 .../execute/task/InnerSpaceCompactionTask.java     |    2 +-
 .../task/InsertionCrossSpaceCompactionTask.java    |   10 +-
 .../task/RepairUnsortedFileCompactionTask.java     |    2 +-
 .../compaction/execute/utils/CompactionUtils.java  |   12 +-
 .../execute/utils/MultiTsFileDeviceIterator.java   |    5 +-
 .../dataregion/flush/MemTableFlushTask.java        |   16 +-
 .../dataregion/memtable/AbstractMemTable.java      |  192 +-
 .../memtable/AlignedReadOnlyMemChunk.java          |  474 ++-
 .../memtable/AlignedWritableMemChunk.java          |  701 +++-
 .../memtable/AlignedWritableMemChunkGroup.java     |   31 +-
 .../dataregion/memtable/IMemTable.java             |    8 +-
 .../dataregion/memtable/IWritableMemChunk.java     |   56 +-
 .../memtable/IWritableMemChunkGroup.java           |    9 +-
 .../dataregion/memtable/ReadOnlyMemChunk.java      |  274 +-
 .../dataregion/memtable/TsFileProcessor.java       |  102 +-
 .../dataregion/memtable/WritableMemChunk.java      |  535 ++-
 .../dataregion/memtable/WritableMemChunkGroup.java |   44 +-
 .../filescan/impl/MemAlignedChunkHandleImpl.java   |   21 +-
 .../read/reader/chunk/MemAlignedChunkReader.java   |  187 +-
 .../read/reader/chunk/MemAlignedPageReader.java    |  137 +-
 .../read/reader/chunk/MemChunkReader.java          |  139 +-
 .../read/reader/chunk/MemPageReader.java           |  129 +-
 .../reader/chunk/metadata/AlignedPageMetadata.java |   74 +
 .../read/reader/chunk/metadata/PageMetadata.java   |   90 +
 .../dataregion/tsfile/TsFileResource.java          |   74 +-
 .../dataregion/tsfile/TsFileResourceBlockType.java |    3 +
 .../tsfile/timeindex/ArrayDeviceTimeIndex.java     |    3 +-
 .../dataregion/tsfile/timeindex/FileTimeIndex.java |    2 +-
 .../dataregion/wal/buffer/IWALBuffer.java          |   10 +
 .../dataregion/wal/buffer/WALBuffer.java           |   13 +
 .../storageengine/dataregion/wal/node/WALNode.java |    8 +-
 .../wal/utils/MemoryControlledWALEntryQueue.java   |    9 +-
 .../dataregion/wal/utils/WALEntryHandler.java      |    4 +-
 .../dataregion/wal/utils/WALInsertNodeCache.java   |   16 +-
 .../load/config/LoadTsFileConfigurator.java        |   24 -
 ...leStatementDataTypeConvertExecutionVisitor.java |    1 +
 .../memory/LoadTsFileAnalyzeSchemaMemoryBlock.java |    2 +-
 .../memory/LoadTsFileDataCacheMemoryBlock.java     |    4 +-
 .../load/memory/LoadTsFileMemoryManager.java       |   29 +-
 .../rescon/memory/PrimitiveArrayManager.java       |   16 +-
 .../db/storageengine/rescon/memory/SystemInfo.java |  187 +-
 .../rescon/memory/TimePartitionManager.java        |   31 +-
 .../rescon/memory/TsFileResourceManager.java       |   40 +-
 .../broker/SubscriptionPrefetchingQueue.java       |   10 +-
 .../broker/SubscriptionPrefetchingTabletQueue.java |   12 +-
 .../broker/SubscriptionPrefetchingTsFileQueue.java |   12 +-
 .../db/subscription/event/SubscriptionEvent.java   |    4 +-
 .../event/batch/SubscriptionPipeEventBatch.java    |    2 +-
 .../event/batch/SubscriptionPipeEventBatches.java  |    2 +-
 .../batch/SubscriptionPipeTabletEventBatch.java    |   54 +-
 .../SubscriptionPipeTabletIterationSnapshot.java   |   44 +-
 .../batch/SubscriptionPipeTsFileEventBatch.java    |    2 +-
 .../event/cache/SubscriptionPollResponseCache.java |   11 +
 .../event/pipe/SubscriptionPipeEmptyEvent.java     |    2 +-
 .../event/pipe/SubscriptionPipeEvents.java         |    2 +-
 .../pipe/SubscriptionPipeTabletBatchEvents.java    |   11 +-
 .../pipe/SubscriptionPipeTsFileBatchEvents.java    |    4 +-
 .../pipe/SubscriptionPipeTsFilePlainEvent.java     |    2 +-
 .../response/SubscriptionEventTsFileResponse.java  |    7 +-
 .../SubscriptionConnectorSubtaskManager.java       |    2 +-
 .../db/tools/schema/SRStatementGenerator.java      |   25 +-
 .../org/apache/iotdb/db/utils/DateTimeUtils.java   |    4 +-
 .../apache/iotdb/db/utils/ErrorHandlingUtils.java  |    3 +-
 .../java/org/apache/iotdb/db/utils/MathUtils.java  |   24 +-
 .../db/utils/datastructure/AlignedTVList.java      |  458 ++-
 .../db/utils/datastructure/BackAlignedTVList.java  |   66 +-
 .../db/utils/datastructure/BackBinaryTVList.java   |   72 +-
 .../db/utils/datastructure/BackBooleanTVList.java  |   71 +-
 .../db/utils/datastructure/BackDoubleTVList.java   |   71 +-
 .../db/utils/datastructure/BackFloatTVList.java    |   71 +-
 .../db/utils/datastructure/BackIntTVList.java      |   72 +-
 .../db/utils/datastructure/BackLongTVList.java     |   71 +-
 .../iotdb/db/utils/datastructure/BackwardSort.java |   66 +-
 .../iotdb/db/utils/datastructure/BinaryTVList.java |  152 +-
 .../db/utils/datastructure/BooleanTVList.java      |   99 +-
 .../iotdb/db/utils/datastructure/DoubleTVList.java |  100 +-
 .../datastructure/FixedPriorityBlockingQueue.java  |    2 +-
 .../iotdb/db/utils/datastructure/FloatTVList.java  |  100 +-
 .../iotdb/db/utils/datastructure/IntTVList.java    |   99 +-
 .../iotdb/db/utils/datastructure/LongTVList.java   |   99 +-
 .../MergeSortAlignedTVListIterator.java            |  194 +
 .../datastructure/MergeSortTVListIterator.java     |  180 +
 .../db/utils/datastructure/QuickAlignedTVList.java |   34 +-
 .../db/utils/datastructure/QuickBinaryTVList.java  |   34 +-
 .../db/utils/datastructure/QuickBooleanTVList.java |   31 +-
 .../db/utils/datastructure/QuickDoubleTVList.java  |   31 +-
 .../db/utils/datastructure/QuickFloatTVList.java   |   31 +-
 .../db/utils/datastructure/QuickIntTVList.java     |   37 +-
 .../db/utils/datastructure/QuickLongTVList.java    |   31 +-
 .../iotdb/db/utils/datastructure/QuickSort.java    |   28 +-
 .../iotdb/db/utils/datastructure/TVList.java       |  419 +-
 .../db/utils/datastructure/TimAlignedTVList.java   |  109 +-
 .../db/utils/datastructure/TimBinaryTVList.java    |  113 +-
 .../db/utils/datastructure/TimBooleanTVList.java   |  111 +-
 .../db/utils/datastructure/TimDoubleTVList.java    |  111 +-
 .../db/utils/datastructure/TimFloatTVList.java     |  112 +-
 .../iotdb/db/utils/datastructure/TimIntTVList.java |  112 +-
 .../db/utils/datastructure/TimLongTVList.java      |  111 +-
 .../iotdb/db/utils/datastructure/TimSort.java      |  105 +-
 ....apache.iotdb.db.protocol.mqtt.PayloadFormatter |    1 +
 .../db/pipe/consensus/DeletionResourceTest.java    |    7 +-
 .../pipe/event/TsFileInsertionEventParserTest.java |    5 +-
 .../db/pipe/extractor/PipeRealtimeExtractTest.java |    5 +
 .../pattern/CachedSchemaPatternMatcherTest.java    |   53 +-
 .../db/protocol/mqtt/JSONPayloadFormatterTest.java |    8 +-
 .../db/protocol/mqtt/LinePayloadFormatterTest.java |   91 +
 .../db/protocol/rest/IoTDBRestServiceTest.java     |    6 +-
 .../execution/exchange/LocalSinkChannelTest.java   |    7 +-
 .../exchange/MPPDataExchangeManagerTest.java       |    7 +-
 .../execution/exchange/SharedTsBlockQueueTest.java |    4 +-
 .../execution/exchange/ShuffleSinkHandleTest.java  |    4 +-
 .../execution/exchange/SinkChannelTest.java        |    7 +-
 .../execution/exchange/SourceHandleTest.java       |   15 +-
 .../execution/memory/MemoryPoolTest.java           |    6 +-
 .../execution/operator/OperatorMemoryTest.java     |    2 -
 .../process/tvf/TableFunctionOperatorTest.java     |  302 ++
 .../db/queryengine/plan/function/Exclude.java      |   89 +
 .../iotdb/db/queryengine/plan/function/Repeat.java |  106 +
 .../iotdb/db/queryengine/plan/function/Split.java  |   98 +
 .../plan/parser/StatementGeneratorTest.java        |    2 +-
 .../analyzer/AggregationCornerCaseTest.java        |  323 ++
 .../plan/relational/analyzer/AggregationTest.java  |  305 +-
 .../plan/relational/analyzer/AnalyzerTest.java     |  156 +-
 .../plan/relational/analyzer/DistinctTest.java     |   48 +-
 .../plan/relational/analyzer/JoinTest.java         |   94 +-
 .../analyzer/LimitOffsetPushDownTest.java          |  183 +-
 .../analyzer/MockTableModelDataPartition.java      |   63 +-
 .../plan/relational/analyzer/SortTest.java         |  288 +-
 .../plan/relational/analyzer/SubQueryTest.java     |   44 +-
 .../plan/relational/analyzer/TSBSMetadata.java     |   28 +-
 .../relational/analyzer/TableFunctionTest.java     |  311 ++
 .../plan/relational/analyzer/TestMatadata.java     |   32 +-
 .../plan/relational/analyzer/TestUtils.java        |   26 +
 .../plan/relational/analyzer/TreeViewTest.java     |   72 +-
 .../fetcher/cache/TableDeviceSchemaCacheTest.java  |   23 +-
 .../relational/planner/CorrelatedSubqueryTest.java |  153 +
 .../plan/relational/planner/ExampleTest.java       |   34 +-
 .../plan/relational/planner/PlanTester.java        |    9 +-
 ...ueryTest.java => UncorrelatedSubqueryTest.java} |  268 +-
 ...NodeMatcher.java => AssignUniqueIdMatcher.java} |   27 +-
 .../planner/assertions/ExchangeNodeMatcher.java    |    8 +-
 .../planner/assertions/PlanMatchPattern.java       |   30 +-
 .../planner/assertions/PlanMatchingVisitor.java    |   12 +-
 .../planner/assertions/SpecificationProvider.java  |   79 +
 .../assertions/TableFunctionProcessorMatcher.java  |  303 ++
 .../relational/sql/parser/AuthorStatementTest.java |    5 -
 .../storageengine/dataregion/DataRegionTest.java   |    6 +-
 .../compaction/CompactionWithMinTimestampTest.java |  136 +
 .../compaction/CompactionWorkerTest.java           |   16 +-
 .../FastCrossCompactionPerformerTest.java          |    5 +-
 .../cross/CrossSpaceCompactionSelectorTest.java    |    5 +-
 .../CompactionTableModelTestFileWriter.java        |   14 +
 .../compaction/utils/CompactionClearUtils.java     |    2 +-
 .../compaction/utils/CompactionTaskQueueTest.java  |   13 +-
 .../memtable/MemChunkDeserializeTest.java          |  332 ++
 .../dataregion/memtable/PrimitiveMemTableTest.java |   41 +-
 .../dataregion/memtable/TsFileProcessorTest.java   |  440 +-
 .../read/control/FileReaderManagerTest.java        |    5 +-
 .../reader/chunk/AlignedMemPageReaderTest.java     |   32 +-
 .../reader/chunk/MemAlignedChunkLoaderTest.java    |  138 +-
 .../read/reader/chunk/MemChunkLoaderTest.java      |  260 +-
 .../read/reader/chunk/MemPageReaderTest.java       |   12 +-
 .../wal/recover/file/TsFilePlanRedoerTest.java     |   18 +-
 .../rescon/memory/ResourceManagerTest.java         |    6 +-
 .../rescon/memory/TimePartitionManagerTest.java    |    8 +-
 .../apache/iotdb/db/utils/DateTimeUtilsTest.java   |   14 +
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |    9 +-
 .../db/utils/datastructure/AlignedTVListTest.java  |   20 +-
 .../db/utils/datastructure/BinaryTVListTest.java   |   30 -
 .../datastructure/PrimitiveArrayManagerTest.java   |    8 +-
 .../datanode/src/test/resources/logback-test.xml   |    2 +-
 .../conf/iotdb-system.properties.template          |   59 +-
 .../src/assembly/resources/sbin/health_check.bat   |    2 +-
 .../commons/auth/authorizer/BasicAuthorizer.java   |   35 +-
 .../iotdb/commons/auth/authorizer/IAuthorizer.java |   10 +-
 .../iotdb/commons/auth/entity/PrivilegeType.java   |    2 +-
 .../org/apache/iotdb/commons/auth/entity/Role.java |    4 +
 .../iotdb/commons/auth/user/BasicUserManager.java  |   12 +-
 .../async/AsyncPipeDataTransferServiceClient.java  |   14 +
 .../iotdb/commons/concurrent/ThreadName.java       |    1 +
 .../apache/iotdb/commons/conf/CommonConfig.java    |   99 +-
 .../iotdb/commons/conf/CommonDescriptor.java       |   56 +-
 .../apache/iotdb/commons/conf/IoTDBConstant.java   |    1 +
 .../commons/memory/AtomicLongMemoryBlock.java      |  152 +
 .../apache/iotdb/commons/memory/IMemoryBlock.java  |  135 +
 .../iotdb/commons/memory/MemoryBlockType.java      |   10 +-
 .../RetryUtils.java => memory/MemoryConfig.java}   |   35 +-
 .../iotdb/commons/memory/MemoryException.java      |   64 +
 .../apache/iotdb/commons/memory/MemoryManager.java |  523 +++
 .../commons/partition/DataPartitionTable.java      |   10 +-
 .../commons/partition/SeriesPartitionTable.java    |   20 +-
 .../iotdb/commons/path/ExtendedPartialPath.java    |    4 +
 .../agent/plugin/builtin/BuiltinPipePlugin.java    |    5 +
 .../builtin/connector/opcda/OpcDaConnector.java}   |   23 +-
 .../commons/pipe/agent/task/PipeTaskAgent.java     |    2 +-
 .../task/subtask/PipeAbstractConnectorSubtask.java |    4 +-
 .../agent/task/subtask/PipeReportableSubtask.java  |   13 +-
 .../iotdb/commons/pipe/config/PipeConfig.java      |   34 +-
 .../config/constant/PipeConnectorConstant.java     |   12 +-
 .../config/constant/PipeExtractorConstant.java     |   12 +
 .../connector/protocol/IoTDBAirGapConnector.java   |   21 +-
 .../queue/ConcurrentIterableLinkedQueue.java       |   30 +
 .../iotdb/commons/pipe/event/EnrichedEvent.java    |   45 +-
 .../commons/pipe/event/PipeSnapshotEvent.java      |    4 +
 .../commons/pipe/event/PipeWritePlanEvent.java     |    4 +
 .../commons/pipe/event/ProgressReportEvent.java    |   25 +-
 .../commons/pipe/extractor/IoTDBExtractor.java     |   48 +-
 .../extractor/IoTDBNonDataRegionExtractor.java     |   74 +-
 .../pipe/receiver/PipeReceiverStatusHandler.java   |    8 +
 .../schema/column/ColumnHeaderConstant.java        |    7 +-
 .../table/AlterOrDropTableOperationType.java       |    8 +-
 .../commons/schema/table/InformationSchema.java    |    6 +
 .../apache/iotdb/commons/schema/table/TsTable.java |    3 +-
 .../schema/table/column/TsTableColumnCategory.java |    2 +-
 .../viewExpression/unary/LikeViewExpression.java   |   53 +-
 .../apache/iotdb/commons/service/ServiceType.java  |    1 +
 .../iotdb/commons/service/metric/enums/Metric.java |    1 +
 .../subscription/config/SubscriptionConfig.java    |   21 +
 .../commons/subscription/meta/topic/TopicMeta.java |    3 +
 .../iotdb/commons/udf/access/RecordIterator.java   |  141 +-
 .../relational/TableBuiltinTableFunction.java      |   62 +
 .../builtin/relational/tvf/HOPTableFunction.java   |  153 +
 .../org/apache/iotdb/commons/utils/RetryUtils.java |    8 +
 .../iotdb/commons/utils/TimePartitionUtils.java    |    7 +-
 .../iotdb/commons/memory/MemoryBlockTest.java      |   67 +
 .../iotdb/commons/memory/MemoryManagerTest.java    |  171 +
 .../ConcurrentIterableLinkedQueueTest.java         |    1 +
 .../db/relational/grammar/sql/RelationalSql.g4     |   54 +-
 .../thrift-commons/src/main/thrift/common.thrift   |    1 +
 .../src/main/thrift/confignode.thrift              |    1 +
 .../src/main/thrift/pipeconsensus.thrift           |    5 +-
 pom.xml                                            |   12 +-
 838 files changed, 39565 insertions(+), 16287 deletions(-)
 create mode 100644 
example/udf/src/main/java/org/apache/iotdb/udf/table/ExcludeColumnExample.java
 create mode 100644 
example/udf/src/main/java/org/apache/iotdb/udf/table/RepeatExample.java
 create mode 100644 
example/udf/src/main/java/org/apache/iotdb/udf/table/SplitExample.java
 create mode 100644 
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/MyErrorTableFunction.java
 create mode 100644 
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/MyExcludeColumn.java
 create mode 100644 
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/MyRepeatWithIndex.java
 create mode 100644 
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/MyRepeatWithoutIndex.java
 create mode 100644 
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/MySplit.java
 rename 
integration-test/src/test/java/org/apache/iotdb/cli/it/{AbstractScript.java => 
AbstractScriptIT.java} (98%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/partition/{IoTDBAutoRegionGroupExtensionIT2.java
 => IoTDBAutoRegionGroupExtension2IT.java} (98%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/partition/{IoTDBPartitionTableAutoCleanTest.java
 => IoTDBPartitionTableAutoCleanIT.java} (99%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/commit/batch/{IoTDBRegionMigrateNormalITForIoTV2Batch.java
 => IoTDBRegionMigrateNormalITForIoTV2BatchIT.java} (96%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/commit/batch/{IoTDBRegionMigrateOtherITForIoTV2Batch.java
 => IoTDBRegionMigrateOtherForIoTV2BatchIT.java} (97%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/commit/stream/{IoTDBRegionMigrateNormalITForIoTV2Stream.java
 => IoTDBRegionMigrateNormalForIoTV2StreamIT.java} (97%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/commit/stream/{IoTDBRegionMigrateOtherITForIoTV2Stream.java
 => IoTDBRegionMigrateOtherITForIoTV2StreamIT.java} (97%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/batch/{IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV2Batch.java
 => IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV2BatchIT.java} 
(99%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/batch/{IoTDBRegionMigrateDataNodeCrashForIoTV2Batch.java
 => IoTDBRegionMigrateDataNodeCrashForIoTV2BatchIT.java} (98%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/batch/{IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV2Batch.java
 => IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV2BatchIT.java} 
(99%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/batch/{IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV2Batch.java
 => IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV2BatchIT.java} 
(99%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/stream/{IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV2Stream.java
 => 
IoTDBRegionMigrateCoordinatorCrashWhenRemoveRemotePeerForIoTV2StreamIT.java} 
(99%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/stream/{IoTDBRegionMigrateDataNodeCrashForIoTV2Stream.java
 => IoTDBRegionMigrateDataNodeCrashForIoTV2StreamIT.java} (98%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/stream/{IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV2Stream.java
 => IoTDBRegionMigrateOriginalCrashWhenDeleteLocalPeerForIoTV2StreamIT.java} 
(99%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/datanodecrash/iotv2/stream/{IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV2Stream.java
 => IoTDBRegionMigrateOriginalCrashWhenRemoveRemotePeerForIoTV2StreamIT.java} 
(99%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/iotv2/batch/{IoTDBRegionMigrateClusterCrashIoTV2Batch.java
 => IoTDBRegionMigrateClusterCrashIoTV2BatchIT.java} (97%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/iotv2/batch/{IoTDBRegionMigrateConfigNodeCrashIoTV2Batch.java
 => IoTDBRegionMigrateConfigNodeCrashIoTV2BatchIT.java} (98%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/iotv2/stream/{IoTDBRegionMigrateClusterCrashIoTV2Stream.java
 => IoTDBRegionMigrateClusterCrashIoTV2StreamIT.java} (98%)
 rename 
integration-test/src/test/java/org/apache/iotdb/confignode/it/regionmigration/pass/daily/iotv2/stream/{IoTDBRegionMigrateConfigNodeCrashIoTV2Stream.java
 => IoTDBRegionMigrateConfigNodeCrashIoTV2StreamIT.java} (98%)
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/pipe/it/dual/tablemodel/manual/basic/IoTDBPipePermissionIT.java
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/pipe/it/single/IoTDBPipePermissionIT.java
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/udf/IoTDBUserDefinedTableFunctionIT.java
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/relational/it/mqtt/IoTDBMQTTServiceIT.java
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBColumnsMatchTableIT.java
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBTableAggregationNonStreamIT.java
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/subquery/correlated/IoTDBCorrelatedExistsSubqueryIT.java
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/subquery/uncorrelated/IoTDBUncorrelatedExistsSubqueryIT.java
 copy 
iotdb-api/{udf-api/src/main/java/org/apache/iotdb/udf/api/relational/TableFunction.java
 => 
pipe-api/src/main/java/org/apache/iotdb/pipe/api/exception/PipeConsensusRetryWithIncreasingIntervalException.java}
 (77%)
 create mode 100644 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/TableFunctionAnalysis.java
 create mode 100644 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/TableFunctionProcessorProvider.java
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/TsFileResourceBlockType.java
 => 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/argument/Argument.java
 (56%)
 create mode 100644 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/argument/DescribedSchema.java
 create mode 100644 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/argument/ScalarArgument.java
 create mode 100644 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/argument/TableArgument.java
 create mode 100644 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/processor/TableFunctionDataProcessor.java
 copy 
integration-test/src/main/java/org/apache/iotdb/itbase/env/DataNodeConfig.java 
=> 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/processor/TableFunctionLeafProcessor.java
 (57%)
 create mode 100644 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/specification/ParameterSpecification.java
 create mode 100644 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/specification/ScalarParameterSpecification.java
 create mode 100644 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/specification/TableParameterSpecification.java
 create mode 100644 
iotdb-client/cli/src/main/java/org/apache/iotdb/tool/tsfile/subscription/AbstractSubscriptionTsFile.java
 create mode 100644 
iotdb-client/cli/src/main/java/org/apache/iotdb/tool/tsfile/subscription/CommonParam.java
 create mode 100644 
iotdb-client/cli/src/main/java/org/apache/iotdb/tool/tsfile/subscription/SubscriptionTableTsFile.java
 create mode 100644 
iotdb-client/cli/src/main/java/org/apache/iotdb/tool/tsfile/subscription/SubscriptionTreeTsFile.java
 copy 
iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/{IoTDBDatabaseMetadata.java
 => IoTDBAbstractDatabaseMetadata.java} (59%)
 create mode 100644 
iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/relational/IoTDBRelationalDatabaseMetadata.java
 delete mode 100644 
iotdb-client/session/src/main/java/org/apache/iotdb/session/util/CheckedSupplier.java
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/write/table/SetTableColumnCommentPlan.java
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/write/table/SetTableCommentPlan.java
 rename 
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/exception/metadata/template/NoTemplateOnMNodeException.java
 => 
confignode/src/main/java/org/apache/iotdb/confignode/manager/load/cache/IFailureDetector.java}
 (57%)
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/cache/detector/FixedDetector.java
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/load/cache/detector/PhiAccrualDetector.java
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/extractor/PipeConfigPhysicalPlanTablePrivilegeParseVisitor.java
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/metric/{
 => overview}/PipeConfigNodeRemainingTimeMetrics.java (99%)
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/metric/{
 => overview}/PipeConfigNodeRemainingTimeOperator.java (98%)
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/metric/{
 => overview}/PipeConfigNodeResourceMetrics.java (97%)
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/metric/{
 => overview}/PipeProcedureMetrics.java (98%)
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/metric/{
 => overview}/PipeTaskInfoMetrics.java (98%)
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/metric/{
 => overview}/PipeTemporaryMetaInCoordinatorMetrics.java (99%)
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/metric/{
 => receiver}/PipeConfigNodeReceiverMetrics.java (98%)
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/metric/{
 => sink}/PipeConfigRegionConnectorMetrics.java (98%)
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/metric/{
 => source}/PipeConfigNodeListenerMetrics.java (97%)
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/metric/{
 => source}/PipeConfigRegionExtractorMetrics.java (98%)
 copy 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/resource/{
 => snapshot}/PipeConfigNodeSnapshotResourceManager.java (94%)
 rename 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/schema/{ConfignodeSnapshotParser.java
 => ConfigNodeSnapshotParser.java} (91%)
 create mode 100644 
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/manager/load/cache/detector/DetectorTest.java
 rename 
iotdb-core/consensus/src/main/java/org/apache/iotdb/consensus/pipe/consensuspipe/{ProgressIndexManager.java
 => ReplicateProgressManager.java} (81%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/DataNodeMemoryConfig.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/opcda/OpcDaConnector.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/opcda/OpcDaHeader.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/protocol/opcda/OpcDaServerHandle.java
 rename 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/consensus/{ProgressIndexDataNodeManager.java
 => ReplicateProgressDataNodeManager.java} (78%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/extractor/schemaregion/PipePlanTablePrivilegeParseVisitor.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/extractor/schemaregion/PipeStatementToPlanVisitor.java
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
overview}/PipeDataNodeRemainingEventAndTimeMetrics.java (99%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
overview}/PipeDataNodeRemainingEventAndTimeOperator.java (99%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
overview}/PipeHeartbeatEventMetrics.java (98%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
overview}/PipeResourceMetrics.java (81%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
overview}/PipeWALInsertNodeCacheMetrics.java (99%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
processor}/PipeProcessorMetrics.java (99%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
receiver}/PipeDataNodeReceiverMetrics.java (99%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
schema}/PipeSchemaRegionConnectorMetrics.java (99%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
schema}/PipeSchemaRegionExtractorMetrics.java (99%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
schema}/PipeSchemaRegionListenerMetrics.java (98%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
sink}/PipeDataRegionConnectorMetrics.java (99%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
source}/PipeAssignerMetrics.java (99%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
source}/PipeDataRegionEventCounter.java (98%)
 rename iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/metric/{ => 
source}/PipeDataRegionExtractorMetrics.java (99%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/mqtt/LinePayloadFormatter.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/mqtt/TableMessage.java
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/mqtt/{Message.java
 => TreeMessage.java} (87%)
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/{EnforceSingleRowOperator.java
 => AssignUniqueIdOperator.java} (54%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/PartitionRecognizer.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/TableFunctionLeafOperator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/TableFunctionOperator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/partition/PartitionState.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/partition/Slice.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/partition/SliceCache.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/MergeSortLeftJoinOperator.java
 delete mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/load/LoadTsFileToTableModelAnalyzer.java
 delete mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/load/LoadTsFileToTreeModelAnalyzer.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/AlterTableCommentColumnTask.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/AlterTableCommentTableTask.java
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{storageengine/dataregion/tsfile/TsFileResourceBlockType.java
 => queryengine/plan/relational/analyzer/tablefunction/ArgumentAnalysis.java} 
(50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/tablefunction/ArgumentsAnalysis.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/tablefunction/TableArgumentAnalysis.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/tablefunction/TableFunctionInvocationAnalysis.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/DataOrganizationSpecification.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/AggregationDecorrelation.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/ImplementTableFunctionSource.java
 copy 
iotdb-core/datanode/src/{test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/ExchangeNodeMatcher.java
 => 
main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneAssignUniqueIdColumns.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneTableFunctionProcessorColumns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneTableFunctionProcessorSourceColumns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/RemoveRedundantExists.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/TransformCorrelatedDistinctAggregationWithProjection.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/TransformCorrelatedDistinctAggregationWithoutProjection.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/TransformCorrelatedGlobalAggregationWithProjection.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/TransformCorrelatedGlobalAggregationWithoutProjection.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/TransformCorrelatedGroupedAggregationWithProjection.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/TransformCorrelatedGroupedAggregationWithoutProjection.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/TransformCorrelatedJoinToJoin.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/TransformExistsApplyToCorrelatedJoin.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/AssignUniqueId.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TableFunctionNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TableFunctionProcessorNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/PlanNodeDecorrelator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/Columns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/SetColumnComment.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/SetTableComment.java
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/{statement/metadata/ShowClusterIdStatement.java
 => relational/sql/ast/ShowQueriesStatement.java} (60%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/TableFunctionArgument.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/TableFunctionInvocation.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/TableFunctionTableArgument.java
 rename 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/{RPCService.java 
=> ExternalRPCService.java} (95%)
 rename 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/{RPCServiceMBean.java
 => ExternalRPCServiceMBean.java} (96%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/metrics/memory/OffHeapMemoryMetrics.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/metadata/AlignedPageMetadata.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/metadata/PageMetadata.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/MergeSortAlignedTVListIterator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/MergeSortTVListIterator.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/protocol/mqtt/LinePayloadFormatterTest.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/process/tvf/TableFunctionOperatorTest.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/function/Exclude.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/function/Repeat.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/function/Split.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AggregationCornerCaseTest.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TableFunctionTest.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/CorrelatedSubqueryTest.java
 rename 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/{SubqueryTest.java
 => UncorrelatedSubqueryTest.java} (73%)
 copy 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/{ExchangeNodeMatcher.java
 => AssignUniqueIdMatcher.java} (66%)
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/SpecificationProvider.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/TableFunctionProcessorMatcher.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/CompactionWithMinTimestampTest.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/memtable/MemChunkDeserializeTest.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/memory/AtomicLongMemoryBlock.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/memory/IMemoryBlock.java
 copy 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/TableFunction.java
 => 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/memory/MemoryBlockType.java
 (85%)
 copy 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/{utils/RetryUtils.java
 => memory/MemoryConfig.java} (58%)
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/memory/MemoryException.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/memory/MemoryManager.java
 rename 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/resource/PipeConfigNodeSnapshotResourceManager.java
 => 
node-commons/src/main/java/org/apache/iotdb/commons/pipe/agent/plugin/builtin/connector/opcda/OpcDaConnector.java}
 (56%)
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/TableBuiltinTableFunction.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/HOPTableFunction.java
 create mode 100644 
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/memory/MemoryBlockTest.java
 create mode 100644 
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/memory/MemoryManagerTest.java


Reply via email to