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

jackietien pushed a change to branch feat/cep
in repository https://gitbox.apache.org/repos/asf/iotdb.git


    from 5ec193bf2f1 Throw exception when wal entry is too large
     add 81d12e47353 Separate fully dirty files by partially dirty files task 
(#15341)
     add 88095bc2e52 [RTO/RPO] Fix: NullPointer in ClusterTopology #15347
     add 371bf5c4662 reopen discussion in .asf.yml config (#15335)
     add e545bf0cc50 Pipe: aggregate tablets with different measurements under 
the same device before write into tsfile (#15193)
     add 95ed457dc08 Subscription: detect outdated subscription event for 
better consumer exception control (#15326)
     add 077c3bcae1a Bump netty version to 4.1.119.Final
     add 21b0fb7cea3 Load: check if the DataRegion is Deleted before loading 
the new tsfile (#15346)
     add 3c2b0670e53 Pipe: Fixed the validation logic of OpcDaConnector & 
Optimized the error message when the system is not Windows (#15339)
     add a84bee756a5 Pipe: use mem table to batch write tree data into tsfile 
(#15276)
     add a0497b80cbd Pipe: Fix NPE caused by InsertNodeMemoryEstimator 
estimating Binary array length (#15321)
     add 9e31c84ff99 Pipe: Fixed the IndexOutOfBound exception & Trimmed the 
un-transferred schema region & Refactor for meta transfer (#15337)
     add f5124525914 Load: Supports metrics in the Async Analyzer stage (#15312)
     add b553a6f3670 Pipe/Load: Remove MD5 check for identically named TSFile 
to speed up Active Load (#15311)
     add 858c8b8538b [Bug] When using SubscriptionPullConsumer to consume data, 
an error is reported when configuring ConsumerConstant.NODE_URLS_KEY as the 
cluster address. (#15322)
     add 323b21e3674 Make deserialize of AggregationDescriptor AttributesMap 
use LinkedHashMap
     add 040f3af358c refactor: load max page&chunk configuration in 
ReadOnlyMemchunk and M… (#15309)
     add edbf08ebccd perf: Adapt to Win11(wmic to powershell and compatibility 
adjustment) (#15350)
     add efdbb6d0946 Update release info after 2.0.2 and 1.3.4 released
     add 1a64ec2a225 Impl visitTreeNonAlignedDeviceViewScan
     add e6e37ccf365 update session source when have no permission in 
ExportSchemaTable (#15355)
     add d16ec65b70a Fix process of last query if intermediate state of last 
cache is read when query concurrently
     add be92fcd7a60 Fix sort properties process of AggregationNode when 
generate distribution plan
     add f9195c1e06e Add getBlob and getDate for SessionDataSet.DataIterator
     add 427970f46fc fix an encrypt_key_import bug #15365
     add 63517523561 Include thrift genarated python code in python client to 
support AINode (#15348)
     add 66b1997b172 Feature/node supplier (#15230)
     add 3f96ada4c8d Tumble & Cumulate Windows TVFs (#15354)
     add fcb2ab352fe Pipe: switch to IdentityHashMap backed set to avoid 
infinite loop in table tsfile builder (#15371)
     add 8fff9f22677 Pipe: fix potential ClassCastException when casting 
LocalDate[] in PipeTreeModelTsFileBuilderV2 (#15375)
     add 41c55ad7599 Fix python client pom error (#15381)
     add 8f29bcd8578 Load: Do not clear schema cache when last cache is 
disabled (#15380)
     add aaff44910bd Pipe: aggregate tablets with different measurements under 
the same table before write into tsfile (#15372)
     add 74827521421 Subscription: obtain database name for message payload 
subscribed by table model consumer (#15374)
     add 2cfd029f214 Pipe: use mem table to batch write table data into tsfile 
(#15373)
     add 3215a4f4782 Fix error code when Row appears in query
     add 571dcbe19c9 [RTO/RPO] Coordinator/Session Failover Retry (#15269)
     add b20ab8accf2 Subscription: implemented runtime permission check (#15376)
     add 5fae88dd6a6 feat: disabled history for -e sql (#15389)
     add ede9b7430b6 Fixed the issue where the code returned when executing 
drop user root SQL is different from the CLI (#15387)
     add 699487f7f12 Adapt TIMESTAMP type when import data (#15378)
     add 285ee5b5b6b Load: Fixed the bug that an empty table database may not 
check privilege for auto-creation (#15366)
     add 9e02cbdd371   [RTO/RPO] Add requestor retry for network partition 
error #15393
     add bac9f664f5f Subscription: unify table and tree consumer builder 
interface (#15392)
     add b0cfead5f3b Pipe: Fixed the deadlock cause by terminate event 
reporting & Added sink.batch.max-delay-ms to enable delicate control over batch 
delay & Fixed the bug of premature halt in extractor snapshot mode cause by 
real-time-first transfer & Stabilized the trigger of default batch sending & 
Added "isNeedToReport" getter in PipeRawTabletInsertionEvent for user-defined 
plugins & Reduce logs from PipeEventCommitter (#15377)
     add 34795100682 Add ScalarArgumentChecker and auto-built pass through 
index for TVF
     add 8eb73e0cf1f Load: Enhanced the table auto-creation logic (#15265)
     add b1344eefefc Subscription: add more methods for table session dataset 
(#15398)
     add eb15d9a8367 Subscription: simplify table and tree consumer builder 
interface (#15399)
     add db62fba21ba Subscription: implemented strict runtime permission check 
for consumer group (#15400)
     add dd429d9539f Pipe: Fix batch type can not be changed (Introduced in 
#15377) & Enhance close() in PipeTsFileResource (#15401)
     add a25ce1922fc Load IT: Ignore unstable 
testLoadAutoCreateWithoutInsertPermission (#15405)
     add aa1bd05234a Fix cpp client compilation (#15403)
     add 1f67cf6e7cc update params in ImportSchemaTestIT (#15406)
     add edf87ff4fc2 Load IT: Stabilized the 
testLoadAutoCreateWithoutInsertPermission test (#15408)
     add 923bb2c347c Add APPROX_COUNT_DISTINCT Function
     add a17ec6771be Add authorization for metric prometheus report (#15363)
     add bb087e7bc64 [Py-client] Query Timestamp type of values return readable 
format
     add db3a3845475 Add TableFunctionHandle for TVF
     add 665e18f6f63 docker: support configuring JVM memory environment 
variables in docker-compose file:IOTDB_JMX_OPTS for 
datanode,CONFIGNODE_JMX_OPTS for confignode (#15413)
     add c9453ab08c6 pref: Adjustments to sbin and tools Scripts (#15402)
     add 3b7494e7ce0 IoTV2: Fix global client manager close by mistake when 
running #15415
     add a2f02048ec2 DAL: Fix thread leak when DN exit. #15395
     add 7650b479347 [remove datanode] GCR load balancing implement for 
removing datanode (#15282)
     add 17da13e45d7 Procedure: Fix the concurrency error during 
StateMachineProcedure snapshot (#15417)
     add 15ad13c9207 Pipe: Implement hot loading of Pipe configuration 
parameters (#15292)
     add 12ddd33db6b recover the place of setting ON_HEAP_MEMORY and 
OFF_HEAP_MEMORY to fix atmos (#15421)
     add de1d224f4bd estimating inner compaction task memory during selection 
(#15257)
     add e27245e129e Fix memory leak in wal compressed buffer (#15418)
     add 512188b689b Fixed the NPE caused by concurrent template unset / 
activation #15420
     add b4852c91c52 IoTV2: Try to fix tsfile corruption & receiver dir clean 
(#15410)
     add acdf8cc0f9a ShutdownNow all pipe connector subTask works to interrupt 
all threads blocking in lock. (#15411)
     add ed1f1b8cb37 fix: dockerfile adapter script (#15428)
     add 86178d730c1 Throw 701 while show time partition in table mode
     add 4af9c59aadb fix: export-tsfile change pull mode (#15306)
     add 953780620df [remove datanode] Fix IoTDBRemoveDataNodeNormalIT #15429
     add 398d01a520c bump ratis to 3.2.0-3247c7f-SNAPSHOT (#15427)
     add a0152af2b1d Enhanced JDBC: allow tree model data view in DBeaver 
(#15431)
     add 7ba97174859 Optimize partition cache getRegionReplicaSet interface 
performance by batching (#15396)
     add edda98e37a0 Append TTL logs for PartitionTableAutoCleaner #15437
     add d960f9eed93 Invalidating partition cache for all datanodes except the 
unknown ones when deleting database #15436
     add 007504ab168 Preallocate array list & update TsFile version (#15434)
     add 578bc6606c0 Jdbc adapted datagrip (#15432)
     add 21dfc0023c4 Fix predicate push down when first child is Constant in 
Comparison Expression
     add aa167134dae Implement ASOF INNER JOIN
     add 61fb62cd42e Check TVF parameter case-intensively during invocation and 
declaration.
     add 95c1b928f98 Refactor ResourceManagerTest to make it insensitive to the 
change of TsFileResourceSize
     add 3288914e326 Fixed the cached TTL & time precision problem of 
PartitionTableAutoCleaner (#15455)
     add 941d2d142fd Move built-in TVF from common sub-module into datanode 
sub-module

No new revisions were added by this update.

Summary of changes:
 .asf.yaml                                          |   3 +
 .github/workflows/multi-language-client.yml        |   6 +-
 RELEASE_NOTES.md                                   | 100 +++
 distribution/src/assembly/ainode.xml               |   6 +
 distribution/src/assembly/all.xml                  |  50 +-
 distribution/src/assembly/cli.xml                  |  17 +-
 distribution/src/assembly/confignode.xml           |  41 +-
 distribution/src/assembly/datanode.xml             |  45 +-
 .../DockerCompose/docker-compose-host-3c3d.yml     |   2 +
 .../DockerCompose/docker-compose-standalone.yml    |   4 +-
 .../main/DockerCompose/replace-conf-from-env.sh    |  11 +-
 docker/src/main/Dockerfile-1c1d                    |   2 +-
 .../org/apache/iotdb/TableModelSessionExample.java |  15 +-
 .../apache/iotdb/TableModelSessionPoolExample.java |   2 +-
 .../TableModelSubscriptionSessionExample.java      |  19 +-
 .../iotdb/udf/table/ExcludeColumnExample.java      |  11 +-
 .../org/apache/iotdb/udf/table/RepeatExample.java  |  21 +-
 .../org/apache/iotdb/udf/table/SplitExample.java   |  27 +-
 integration-test/src/assembly/mpp-test.xml         |  32 +-
 .../example/relational/MyErrorTableFunction.java   |  15 +-
 .../udf/example/relational/MyExcludeColumn.java    |  11 +-
 .../udf/example/relational/MyRepeatWithIndex.java  |  17 +-
 .../example/relational/MyRepeatWithoutIndex.java   |  17 +-
 .../{MyExcludeColumn.java => MySelectColumn.java}  |  21 +-
 .../db/query/udf/example/relational/MySplit.java   |  31 +-
 .../it/env/cluster/config/MppConfigNodeConfig.java |  12 +
 .../it/env/cluster/config/MppDataNodeConfig.java   |  12 +
 .../iotdb/it/env/cluster/env/AbstractEnv.java      |  13 +-
 .../env/remote/config/RemoteConfigNodeConfig.java  |  10 +
 .../it/env/remote/config/RemoteDataNodeConfig.java |  10 +
 .../iotdb/it/env/remote/env/RemoteServerEnv.java   |  13 +-
 .../iotdb/it/utils/TsFileTableGenerator.java       |   7 +-
 .../java/org/apache/iotdb/itbase/env/BaseEnv.java  |  11 +-
 .../apache/iotdb/itbase/env/ConfigNodeConfig.java  |   5 +
 .../apache/iotdb/itbase/env/DataNodeConfig.java    |   4 +
 .../apache/iotdb/cli/it/StartClientScriptIT.java   |   4 +-
 .../org/apache/iotdb/db/it/IoTDBLoadTsFileIT.java  |  68 +-
 .../org/apache/iotdb/db/it/IoTDBRestartIT.java     |   2 -
 .../iotdb/db/it/aggregation/IoTDBCountIfIT.java    |  13 +
 .../db/it/aligned/IoTDBPredicatePushDownIT.java    |   9 +
 .../apache/iotdb/db/it/metric/IoTDBMetricIT.java   |  92 ++-
 .../org/apache/iotdb/db/it/utils/TestUtils.java    |  29 +-
 .../pipe/it/dual/tablemodel/TableModelUtils.java   | 105 +--
 .../manual/basic/IoTDBPipeWithLoadIT.java          | 107 +++
 .../IoTDBPipeTypeConversionISessionIT.java         |  18 +-
 .../manual/IoTDBPipeTypeConversionISessionIT.java  |   5 +-
 .../relational/it/db/it/IoTDBAsofJoinTableIT.java  | 146 +++++
 .../it/db/it/IoTDBAuthenticationTableIT.java       |   2 +-
 .../relational/it/db/it/IoTDBInsertTableIT.java    |   2 +-
 .../db/it/IoTDBMultiTAGsWithAttributesTableIT.java | 115 ++++
 .../relational/it/db/it/IoTDBWindowTVFIT.java      | 124 ++++
 .../it/db/it/udf/IoTDBSQLFunctionManagementIT.java |   2 +-
 .../db/it/udf/IoTDBUserDefinedTableFunctionIT.java |  16 +
 .../old/aligned/IoTDBPredicatePushDownTableIT.java |  13 +
 .../it/query/old/orderBy/IoTDBOrderByTableIT.java  |  33 +-
 .../it/query/recent/IoTDBComplexQueryIT.java       |  84 +++
 .../it/query/recent/IoTDBTableAggregationIT.java   |  77 +++
 .../iotdb/relational/it/schema/IoTDBTableIT.java   |   8 +-
 .../it/session/IoTDBSessionRelationalIT.java       |   2 +-
 .../pool/IoTDBInsertTableSessionPoolIT.java        |   2 +-
 .../iotdb/session/it/IoTDBSessionSimpleIT.java     |  73 +++
 .../it/local/IoTDBSubscriptionPermissionIT.java    | 339 ++++++++++
 ...TDBConsumer2With1TopicShareProcessTsfileIT.java |  23 +-
 .../pattern/IoTDBTSPatternPullConsumeTsfileIT.java |   2 -
 ...TDBConsumer2With1TopicShareProcessTsfileIT.java |   8 +-
 .../IoTDBTSPatternTsfilePushConsumerIT.java        |   2 +-
 .../apache/iotdb/tools/it/ExportDataTestIT.java    |   6 +-
 .../apache/iotdb/tools/it/ExportSchemaTestIT.java  |  10 +-
 .../apache/iotdb/tools/it/ExportTsFileTestIT.java  |  87 +--
 .../apache/iotdb/tools/it/ImportDataTestIT.java    |   2 +-
 .../apache/iotdb/tools/it/ImportSchemaTestIT.java  |  22 +-
 .../api/relational/EmptyTableFunctionHandle.java   |  22 +-
 .../iotdb/udf/api/relational/TableFunction.java    |  10 +-
 .../relational/table/MapTableFunctionHandle.java   | 186 ++++++
 .../relational/table/TableFunctionAnalysis.java    |  21 +-
 .../table/TableFunctionHandle.java}                |  15 +-
 .../table/argument/ScalarArgumentChecker.java      |  16 +-
 .../processor/TableFunctionDataProcessor.java      |  12 +-
 .../ScalarParameterSpecification.java              |  23 +-
 iotdb-client/cli/src/assembly/cli.xml              |  10 +
 .../src/assembly/resources/tools/load-tsfile.bat   |  50 --
 .../src/assembly/resources/tools/load-tsfile.sh    |  60 --
 .../src/main/java/org/apache/iotdb/cli/Cli.java    |   1 +
 .../org/apache/iotdb/tool/common/Constants.java    |   2 +-
 .../org/apache/iotdb/tool/common/OptionsUtil.java  |   5 +-
 .../apache/iotdb/tool/data/AbstractDataTool.java   |  18 +-
 .../apache/iotdb/tool/data/ImportDataTable.java    |   9 +-
 .../org/apache/iotdb/tool/data/ImportDataTree.java |  57 +-
 .../iotdb/tool/schema/ExportSchemaTable.java       |  19 +-
 .../org/apache/iotdb/tool/tsfile/ExportTsFile.java |   5 +
 .../iotdb/tool/tsfile/ImportTsFileRemotely.java    |   6 +-
 .../subscription/AbstractSubscriptionTsFile.java   |   1 +
 .../subscription/SubscriptionTableTsFile.java      |  28 +-
 .../subscription/SubscriptionTreeTsFile.java       |  29 +-
 iotdb-client/client-cpp/pom.xml                    |  24 +
 .../client-cpp/src/main/AbstractSessionBuilder.h   |   3 +
 iotdb-client/client-cpp/src/main/NodesSupplier.cpp | 221 +++++++
 iotdb-client/client-cpp/src/main/NodesSupplier.h   | 137 ++++
 iotdb-client/client-cpp/src/main/Session.cpp       | 169 ++++-
 iotdb-client/client-cpp/src/main/Session.h         |  71 +-
 .../client-cpp/src/main/SessionConnection.cpp      | 256 ++++++++
 .../client-cpp/src/main/SessionConnection.h        |  81 +++
 .../client-cpp/src/main/ThriftConnection.cpp       | 158 +++++
 .../client-cpp/src/main/ThriftConnection.h         |  68 ++
 iotdb-client/client-py/README.md                   |   4 +-
 iotdb-client/client-py/iotdb/Session.py            |  18 +-
 iotdb-client/client-py/iotdb/SessionPool.py        |   4 +-
 iotdb-client/client-py/iotdb/utils/Field.py        |  29 +-
 .../client-py/iotdb/utils/SessionDataSet.py        |  19 +-
 .../client-py/iotdb/utils/iotdb_rpc_dataset.py     |  38 +-
 iotdb-client/client-py/iotdb/utils/rpc_utils.py    |  41 ++
 iotdb-client/client-py/pom.xml                     |  13 +-
 iotdb-client/client-py/requirements.txt            |   1 +
 iotdb-client/client-py/resources/pyproject.toml    |   3 +-
 .../session_aligned_timeseries_example.py          |   4 +-
 iotdb-client/client-py/session_example.py          |   4 +-
 iotdb-client/client-py/session_pool_example.py     |   2 +-
 iotdb-client/client-py/session_ssl_example.py      |   4 +-
 .../client-py/table_model_session_example.py       |   4 +-
 .../integration/tablet_performance_comparison.py   |   4 +-
 .../tests/integration/test_new_data_types.py       |  12 +-
 .../tests/integration/test_tablemodel_query.py     |  22 +-
 .../org/apache/iotdb/isession/SessionDataSet.java  |  18 +
 .../iotdb/jdbc/IoTDBAbstractDatabaseMetadata.java  |  17 +-
 .../org/apache/iotdb/jdbc/IoTDBConnection.java     |  27 +-
 .../apache/iotdb/jdbc/IoTDBDatabaseMetadata.java   |  16 +-
 .../java/org/apache/iotdb/jdbc/IoTDBStatement.java | 134 ++--
 .../IoTDBRelationalDatabaseMetadata.java           | 146 +++--
 .../java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java |  17 +-
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |   1 +
 .../rpc/subscription/annotation/TableModel.java    |  12 +-
 .../rpc/subscription/config/ConsumerConfig.java    |   8 +
 .../subscription/payload/poll/ErrorPayload.java    |   4 +
 .../subscription/payload/poll/FileSealPayload.java |  27 +-
 .../subscription/payload/poll/TabletsPayload.java  |  41 +-
 .../response/PipeSubscribeHeartbeatResp.java       |  48 +-
 .../apache/iotdb/session/SessionConnection.java    | 148 ++++-
 .../SubscriptionSessionConnection.java             |  32 -
 .../base/AbstractSubscriptionConsumer.java         |  47 +-
 .../base/AbstractSubscriptionConsumerBuilder.java  |  20 -
 .../base/AbstractSubscriptionProvider.java         |  13 +-
 .../base/AbstractSubscriptionProviders.java        |   6 +-
 .../SubscriptionTablePullConsumerBuilder.java      |   3 +-
 .../SubscriptionTablePushConsumerBuilder.java      |   3 +-
 .../tree/SubscriptionTreePullConsumerBuilder.java  |   3 +-
 .../tree/SubscriptionTreePushConsumerBuilder.java  |   3 +-
 .../payload/SubscriptionFileHandler.java           |   7 -
 .../subscription/payload/SubscriptionMessage.java  |  29 +-
 .../payload/SubscriptionMessageHandler.java        |   7 +-
 .../payload/SubscriptionSessionDataSet.java        |  96 ++-
 .../SubscriptionSessionDataSetsHandler.java        |  56 +-
 .../payload/SubscriptionTsFileHandler.java         |  14 +-
 .../iotdb/session/SessionCacheLeaderTest.java      |   2 +-
 iotdb-core/ainode/ainode.xml                       |  27 +
 iotdb-core/ainode/ainode/core/handler.py           |   5 +-
 .../ainode/core/manager/inference_manager.py       | 106 +--
 iotdb-core/ainode/pyproject.toml                   |   2 +-
 iotdb-core/confignode/src/assembly/confignode.xml  |  28 +-
 .../iotdb/confignode/manager/ConfigManager.java    |   2 +-
 .../iotdb/confignode/manager/ProcedureManager.java |   6 +-
 .../iotdb/confignode/manager/TTLManager.java       |   9 +-
 .../region/GreedyCopySetRegionGroupAllocator.java  | 356 +++++++++-
 .../region/GreedyRegionGroupAllocator.java         |  13 +
 .../balancer/region/IRegionGroupAllocator.java     |  21 +
 .../PartiteGraphPlacementRegionGroupAllocator.java |  13 +
 .../persistence/schema/ClusterSchemaInfo.java      |  15 +-
 .../procedure/PartitionTableAutoCleaner.java       |   6 +
 .../procedure/env/ConfigNodeProcedureEnv.java      |  52 +-
 .../procedure/env/RemoveDataNodeHandler.java       | 186 ++++++
 .../procedure/impl/StateMachineProcedure.java      |  11 +-
 .../impl/node/RemoveDataNodesProcedure.java        |   6 +-
 .../consumer/CreateConsumerProcedure.java          |   4 +-
 .../subscription/CreateSubscriptionProcedure.java  |  21 +-
 .../GreedyCopySetRemoveNodeReplicaSelectTest.java  | 342 ++++++++++
 .../pipe/consensuspipe/ConsensusPipeReceiver.java  |   3 +-
 iotdb-core/datanode/src/assembly/server.xml        |  44 +-
 .../apache/iotdb/db/conf/DataNodeMemoryConfig.java |  12 +-
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |  11 -
 .../org/apache/iotdb/db/conf/IoTDBDescriptor.java  |  32 +-
 .../schemaregion/SchemaExecutionVisitor.java       |  15 +
 .../iotdb/db/exception/ainode/ModelException.java  |  11 +-
 .../db/pipe/agent/task/PipeDataNodeTaskAgent.java  |  30 +-
 .../agent/task/builder/PipeDataNodeBuilder.java    |   4 +-
 .../task/builder/PipeDataNodeTaskBuilder.java      |  51 +-
 .../task/execution/PipeSubtaskExecutorManager.java |   7 +
 .../subtask/connector/PipeConnectorSubtask.java    |  13 +-
 .../PipeRealtimePriorityBlockingQueue.java         |  26 +-
 .../IoTDBDataNodeCacheLeaderClientManager.java     |  12 +-
 .../batch/PipeTabletEventTsFileBatch.java          |  18 +-
 .../batch/PipeTransferBatchReqBuilder.java         |  41 +-
 .../request/PipeTransferSchemaSnapshotSealReq.java |   5 +-
 .../connector/protocol/opcda/OpcDaConnector.java   |   8 +-
 .../connector/protocol/opcua/OpcUaNameSpace.java   |   6 +-
 .../pipeconsensus/PipeConsensusAsyncConnector.java | 157 +++--
 .../pipeconsensus/PipeConsensusSyncConnector.java  |   3 -
 .../PipeConsensusTransferBatchReqBuilder.java      |  19 +-
 .../async/IoTDBDataRegionAsyncConnector.java       |  31 +-
 .../thrift/sync/IoTDBSchemaRegionConnector.java    |   8 +-
 ...ilder.java => PipeTableModelTsFileBuilder.java} | 121 +++-
 .../builder/PipeTableModelTsFileBuilderV2.java     | 259 ++++++++
 .../util/builder/PipeTreeModelTsFileBuilder.java   |  68 +-
 .../util/builder/PipeTreeModelTsFileBuilderV2.java | 198 ++++++
 .../connector/util/builder/PipeTsFileBuilder.java  |  24 +-
 .../deletion/persist/PageCacheDeletionBuffer.java  |  12 +-
 .../schema/PipeSchemaRegionSnapshotEvent.java      |   4 +-
 .../common/tablet/PipeRawTabletInsertionEvent.java |   5 +
 .../tablet/parser/TabletInsertionEventParser.java  |  19 +-
 .../event/common/terminate/PipeTerminateEvent.java |   6 +-
 .../scan/TsFileInsertionEventScanParser.java       |   5 +-
 ...ileInsertionEventTableParserTabletIterator.java |  31 +-
 ...oricalDataRegionTsFileAndDeletionExtractor.java |  30 +-
 .../PipeRealtimeDataRegionHybridExtractor.java     |   5 +-
 .../realtime/assigner/PipeDataRegionAssigner.java  |   5 +-
 .../schemaregion/SchemaRegionListeningFilter.java  |  15 +
 .../pipe/processor/twostage/combiner/Combiner.java |   5 +-
 .../pipeconsensus/PipeConsensusReceiver.java       | 327 +++++-----
 .../pipeconsensus/PipeConsensusReceiverAgent.java  |  61 +-
 .../protocol/thrift/IoTDBDataNodeReceiver.java     |  10 +-
 .../resource/memory/InsertNodeMemoryEstimator.java |   4 +
 .../db/pipe/resource/memory/PipeMemoryManager.java |  54 +-
 .../pipe/resource/memory/PipeMemoryWeightUtil.java |   3 +-
 .../pipe/resource/tsfile/PipeTsFileResource.java   |  14 +-
 .../resource/tsfile/PipeTsFileResourceManager.java |   2 +-
 .../rest/table/v1/handler/ExceptionHandler.java    |   4 +
 .../v1/handler/StatementConstructionHandler.java   |   4 +-
 .../protocol/rest/v1/handler/ExceptionHandler.java |   4 +
 .../protocol/rest/v2/handler/ExceptionHandler.java |   4 +
 .../impl/DataNodeInternalRPCServiceImpl.java       |   2 +-
 .../execution/aggregation/UDAFAccumulator.java     |   2 +-
 .../execution/executor/RegionReadExecutor.java     |  17 +-
 .../operator/process/FilterAndProjectOperator.java |  15 +
 .../execution/operator/process/LimitOperator.java  |   6 +
 .../execution/operator/process/OffsetOperator.java |   6 +
 .../operator/process/TransformOperator.java        |   2 +-
 .../process/function/TableFunctionOperator.java    |  18 +-
 .../process/join/LeftOuterTimeJoinOperator.java    |  15 +-
 .../TableLeftOuterTimeJoinOperator.java}           |  38 +-
 ...> AscLongTypeIgnoreEqualJoinKeyComparator.java} |  16 +-
 ... DescLongTypeIgnoreEqualJoinKeyComparator.java} |  16 +-
 .../merge/comparator/JoinKeyComparatorFactory.java |  20 +
 .../relational/AbstractTableScanOperator.java      |  56 +-
 .../relational/AsofMergeSortInnerJoinOperator.java | 237 +++++++
 .../relational/DeviceIteratorScanOperator.java     | 233 +++++++
 .../relational/LastQueryAggTableScanOperator.java  |  10 +-
 .../MeasurementToTableViewAdaptorUtils.java        | 103 +++
 .../TreeToTableViewAdaptorOperator.java}           | 112 ++--
 .../relational/aggregation/AccumulatorFactory.java |   7 +-
 .../ApproxCountDistinctAccumulator.java            | 265 ++++++++
 .../source/relational/aggregation/HyperLogLog.java | 246 +++++++
 .../aggregation/HyperLogLogStateFactory.java       |  88 +++
 .../GroupedApproxCountDistinctAccumulator.java     | 314 +++++++++
 .../aggregation/grouped/array/BinaryBigArray.java  |   4 -
 .../grouped/array/HyperLogLogBigArray.java         |  84 +++
 .../aggregation/grouped/array/MapBigArray.java     |   4 -
 .../aggregation/grouped/array/ObjectBigArray.java  |  12 +-
 .../relational/ColumnTransformerBuilder.java       |   4 +-
 .../iotdb/db/queryengine/plan/ClusterTopology.java |   4 +
 .../iotdb/db/queryengine/plan/Coordinator.java     |   4 -
 .../plan/analyze/ClusterPartitionFetcher.java      |  50 +-
 .../db/queryengine/plan/analyze/IModelFetcher.java |   4 +
 .../db/queryengine/plan/analyze/ModelFetcher.java  |  26 +
 .../analyze/cache/partition/PartitionCache.java    | 301 +++++----
 .../analyze/cache/schema/DataNodeTTLCache.java     |   2 +-
 .../plan/analyze/load/LoadTsFileAnalyzer.java      | 133 ++--
 .../analyze/load/LoadTsFileTableSchemaCache.java   |  78 ++-
 .../analyze/schema/AutoCreateSchemaExecutor.java   |  14 +-
 .../analyze/schema/ClusterSchemaFetchExecutor.java |   9 +-
 .../plan/analyze/schema/ClusterSchemaFetcher.java  |   1 -
 .../config/executor/ClusterConfigTaskExecutor.java |   8 +-
 .../config/metadata/ShowFunctionsTask.java         |   6 +-
 .../expression/binary/CompareBinaryExpression.java |  24 +
 .../plan/expression/multi/FunctionExpression.java  |   2 +-
 .../predicate/ConvertPredicateToFilterVisitor.java |   4 +-
 .../ConvertPredicateToTimeFilterVisitor.java       |   3 +-
 .../plan/parser/StatementGenerator.java            |   2 +-
 .../plan/planner/TableOperatorGenerator.java       | 644 +++++++++++++++---
 .../queryengine/plan/planner/TreeModelPlanner.java |   2 -
 .../plan/planner/plan/node/PlanGraphPrinter.java   |  37 +-
 .../plan/node/metadata/write/MeasurementGroup.java |  25 +-
 .../plan/parameter/AggregationDescriptor.java      |   2 +-
 .../relational/analyzer/ExpressionTreeUtils.java   |   2 +-
 .../relational/analyzer/StatementAnalyzer.java     | 130 +++-
 .../predicate/ConvertPredicateToFilterVisitor.java |   2 +-
 .../TableFunctionInvocationAnalysis.java           |   8 +
 .../function}/TableBuiltinTableFunction.java       |  13 +-
 .../function/tvf/ForecastTableFunction.java        | 642 ++++++++++++++++++
 .../relational/metadata/TableMetadataImpl.java     |  19 +-
 .../plan/relational/metadata/TableSchema.java      |   2 +-
 .../plan/relational/planner/RelationPlanner.java   | 139 ++--
 .../plan/relational/planner/TableModelPlanner.java |   9 -
 .../distribute/TableDistributedPlanGenerator.java  |  42 +-
 .../rule/ImplementTableFunctionSource.java         |   4 +-
 .../iterative/rule/PruneJoinChildrenColumns.java   |  10 +
 .../planner/iterative/rule/PruneJoinColumns.java   |   1 +
 .../rule/PruneTableFunctionProcessorColumns.java   |   2 +-
 .../PruneTableFunctionProcessorSourceColumns.java  |   2 +-
 ...orrelatedDistinctAggregationWithProjection.java |   1 +
 ...elatedDistinctAggregationWithoutProjection.java |   1 +
 ...mCorrelatedGlobalAggregationWithProjection.java |   1 +
 ...rrelatedGlobalAggregationWithoutProjection.java |   1 +
 ...CorrelatedGroupedAggregationWithProjection.java |   1 +
 ...relatedGroupedAggregationWithoutProjection.java |   1 +
 .../rule/TransformCorrelatedJoinToJoin.java        |   1 +
 .../TransformFilteringSemiJoinToInnerJoin.java     |   1 +
 .../rule/TransformUncorrelatedSubqueryToJoin.java  |   1 +
 .../plan/relational/planner/node/JoinNode.java     | 122 +++-
 .../relational/planner/node/TableFunctionNode.java |  57 +-
 .../planner/node/TableFunctionProcessorNode.java   |  51 +-
 .../optimizations/PushPredicateIntoTableScan.java  |  18 +
 .../TransformAggregationToStreamable.java          |  33 +-
 .../optimizations/UnaliasSymbolReferences.java     |   7 +-
 .../plan/relational/sql/ast/AsofJoinOn.java        | 163 +++++
 .../sql/ast/DefaultTraversalVisitor.java           |   8 +-
 .../plan/relational/sql/ast/Expression.java        |   3 +
 .../plan/relational/sql/ast/JoinOn.java            |  11 +-
 .../plan/relational/sql/ast/LoadTsFile.java        |  10 +-
 .../queryengine/plan/relational/sql/ast/Row.java   |  33 +
 .../relational/sql/ast/TableExpressionType.java    |   3 +-
 .../plan/relational/sql/parser/AstBuilder.java     |  46 +-
 .../plan/scheduler/AsyncPlanNodeSender.java        |  21 +-
 .../plan/scheduler/ClusterScheduler.java           |   5 -
 ....java => FailedFragmentInstanceWithStatus.java} |  22 +-
 .../scheduler/FragmentInstanceDispatcherImpl.java  | 248 ++++---
 .../db/queryengine/plan/udf}/TableUDFUtils.java    |   3 +-
 .../db/queryengine/plan/udf}/TreeUDFUtils.java     |   3 +-
 .../plan/udf}/UDFManagementService.java            |   7 +-
 .../dag/column/leaf/ConstantColumnTransformer.java |   2 +-
 .../dag/udf/UDAFInformationInferrer.java           |   2 +-
 .../transformation/dag/udf/UDTFExecutor.java       |   2 +-
 .../dag/udf/UDTFInformationInferrer.java           |   2 +-
 .../db/schemaengine/table/DataNodeTableCache.java  |  18 +-
 .../java/org/apache/iotdb/db/service/DataNode.java |   2 +-
 .../iotdb/db/service/DataNodeShutdownHook.java     |   4 +
 .../iotdb/db/service/metrics/WritingMetrics.java   |  38 +-
 .../metrics/memory/StorageEngineMemoryMetrics.java | 126 ++++
 .../iotdb/db/storageengine/StorageEngine.java      |   1 +
 .../db/storageengine/dataregion/DataRegion.java    |  15 +-
 .../performer/ICrossCompactionPerformer.java       |   6 +
 ...rformer.java => IInnerCompactionPerformer.java} |  11 +-
 .../execute/performer/ISeqCompactionPerformer.java |   2 +-
 .../performer/IUnseqCompactionPerformer.java       |   2 +-
 .../performer/impl/FastCompactionPerformer.java    |  15 +
 .../impl/ReadChunkCompactionPerformer.java         |   8 +
 .../impl/ReadPointCompactionPerformer.java         |   8 +
 .../execute/task/AbstractCompactionTask.java       |  10 +
 .../execute/task/InnerSpaceCompactionTask.java     |  18 +-
 .../execute/utils/CompactionTableSchema.java       |   2 +-
 .../compaction/io/CompactionTsFileWriter.java      |   2 +-
 .../compaction/schedule/CompactionScheduler.java   |  16 +-
 .../estimator/AbstractCompactionEstimator.java     | 124 +++-
 .../estimator/AbstractCrossSpaceEstimator.java     |   6 +-
 .../estimator/AbstractInnerSpaceEstimator.java     |   5 +-
 .../estimator/CompactionEstimateUtils.java         |  91 ++-
 .../selector/estimator/CompactionTaskInfo.java     |   6 -
 ...taInfo.java => CompactionTaskMetadataInfo.java} |  12 +-
 .../FastCompactionInnerCompactionEstimator.java    |  44 +-
 .../FastCrossSpaceCompactionEstimator.java         |  29 +-
 .../compaction/selector/estimator/FileInfo.java    |  39 +-
 .../ReadChunkInnerCompactionEstimator.java         |  25 +-
 .../RepairUnsortedFileCompactionEstimator.java     |  21 +-
 .../impl/NewSizeTieredCompactionSelector.java      |  76 ++-
 .../impl/RewriteCrossSpaceCompactionSelector.java  |   2 +-
 .../selector/impl/SettleSelectorImpl.java          | 103 ++-
 .../dataregion/flush/MemTableFlushTask.java        |  12 +-
 .../memtable/AlignedReadOnlyMemChunk.java          |   6 +-
 .../memtable/AlignedWritableMemChunk.java          |  52 +-
 .../dataregion/memtable/ReadOnlyMemChunk.java      |  19 +-
 .../dataregion/memtable/WritableMemChunk.java      |  19 +-
 .../dataregion/wal/buffer/WALBuffer.java           |   9 +-
 .../dataregion/wal/io/WALInputStream.java          |   2 +
 .../load/metrics/LoadTsFileCostMetricsSet.java     |  14 +-
 .../rescon/memory/PrimitiveArrayManager.java       |   7 +
 .../agent/SubscriptionBrokerAgent.java             |   9 +
 .../db/subscription/broker/SubscriptionBroker.java |  10 +
 .../broker/SubscriptionPrefetchingQueue.java       |  21 +
 .../broker/SubscriptionPrefetchingTabletQueue.java |  10 +
 .../broker/SubscriptionPrefetchingTsFileQueue.java |  13 +
 .../db/subscription/event/SubscriptionEvent.java   |   4 +-
 .../batch/SubscriptionPipeTabletEventBatch.java    |  27 +-
 .../batch/SubscriptionPipeTsFileEventBatch.java    |   5 +-
 .../response/SubscriptionEventTabletResponse.java  |  20 +-
 .../response/SubscriptionEventTsFileResponse.java  |   9 +-
 .../receiver/SubscriptionReceiverV1.java           |  76 ++-
 .../apache/iotdb/db/utils/ErrorHandlingUtils.java  |   4 +-
 .../apache/iotdb/db/utils/ModificationUtils.java   |  23 +-
 .../iotdb/db/utils/constant/SqlConstant.java       |   2 +
 .../db/utils/datastructure/AlignedTVList.java      |  40 +-
 .../db/utils/datastructure/BatchEncodeInfo.java    |  16 +-
 .../datastructure/MemPointIteratorFactory.java     | 194 ++++--
 .../MergeSortMultiAlignedTVListIterator.java       |  27 +-
 .../MergeSortMultiTVListIterator.java              |  15 +-
 .../datastructure/MultiAlignedTVListIterator.java  |  14 +-
 .../utils/datastructure/MultiTVListIterator.java   |  13 +-
 .../OrderedMultiAlignedTVListIterator.java         |   6 +-
 .../datastructure/OrderedMultiTVListIterator.java  |   5 +-
 .../iotdb/db/utils/datastructure/TVList.java       |  63 +-
 .../pipe/connector/PipeTabletEventSorterTest.java  |  21 +-
 .../operator/DeviceIteratorScanOperatorTest.java   | 228 +++++++
 ...nAlignedTreeDeviceViewScanOperatorTreeTest.java | 650 ++++++++++++++++++
 .../TreeToTableViewAdaptorOperatorTest.java        | 237 +++++++
 .../plan/analyze/cache/PartitionCacheTest.java     |   5 +-
 .../db/queryengine/plan/function/Exclude.java      |  11 +-
 .../iotdb/db/queryengine/plan/function/Repeat.java |  22 +-
 .../iotdb/db/queryengine/plan/function/Split.java  |  27 +-
 .../plan/parser/StatementGeneratorTest.java        |   9 +-
 .../analyzer/AsofInnerJoinOperatorTest.java        | 665 +++++++++++++++++++
 .../plan/relational/analyzer/AsofJoinTest.java     | 282 ++++++++
 .../relational/analyzer/TableFunctionTest.java     |  92 +--
 .../plan/relational/analyzer/TestMatadata.java     |   9 +
 ...seProvider.java => AsofJoinClauseProvider.java} |  21 +-
 .../relational/planner/assertions/JoinMatcher.java |  32 +-
 .../planner/assertions/PlanMatchPattern.java       |   6 +
 .../assertions/TableFunctionProcessorMatcher.java  | 178 +----
 .../org/apache/iotdb/db/script/EnvScriptIT.java    |  12 +-
 .../compaction/AbstractCompactionTest.java         |   4 +-
 .../settle/SettleCompactionSelectorTest.java       |  20 +-
 .../CompactionTableModelTestFileWriter.java        |   2 +-
 .../CompactionTableSchemaCollectorTest.java        |   2 +-
 .../utils/CompactionTaskMemCostEstimatorTest.java  |  87 ++-
 .../reader/chunk/MemAlignedChunkLoaderTest.java    |   5 +-
 .../read/reader/chunk/MemChunkLoaderTest.java      |  19 +-
 .../wal/compression/WALCompressionTest.java        |  45 +-
 .../rescon/memory/ResourceManagerTest.java         |  79 ++-
 .../apache/iotdb/db/utils/EnvironmentUtils.java    |   2 +-
 iotdb-core/metrics/interface/pom.xml               |   5 +
 .../apache/iotdb/metrics/config/MetricConfig.java  |  38 ++
 .../metrics/config/MetricConfigDescriptor.java     |  19 +
 .../reporter/prometheus/PrometheusReporter.java    |  62 +-
 .../conf/iotdb-system.properties.template          |  11 +
 .../iotdb/commons/client/ainode/AINodeClient.java  |  27 +
 .../apache/iotdb/commons/conf/CommonConfig.java    | 445 +++++++++++++
 .../iotdb/commons/conf/CommonDescriptor.java       | 486 +-------------
 ...n.java => QuerySchemaFetchFailedException.java} |  10 +-
 .../task/connection/BlockingPendingQueue.java      |  13 +-
 .../agent/task/execution/PipeSubtaskExecutor.java  |   2 +-
 .../agent/task/execution/PipeSubtaskScheduler.java |  15 +-
 .../agent/task/progress/PipeEventCommitter.java    |  28 +-
 .../iotdb/commons/pipe/config/PipeConfig.java      |   5 +-
 .../config/PipeDescriptor.java}                    | 726 +++++----------------
 .../config/constant/PipeConnectorConstant.java     |   3 +
 .../pipe/connector/protocol/IoTDBConnector.java    |  10 +
 .../pipe/datastructure/pattern/TablePattern.java   |   2 +
 .../commons/pipe/receiver/IoTDBFileReceiver.java   |  18 +-
 .../apache/iotdb/commons/schema/table/TsTable.java |  15 +-
 .../schema/table/column/TsTableColumnCategory.java |   2 +-
 .../iotdb/commons/service/metric/enums/Metric.java |   4 +
 .../meta/consumer/ConsumerGroupMeta.java           |  49 ++
 .../subscription/meta/consumer/ConsumerMeta.java   |  12 +
 .../commons/subscription/meta/topic/TopicMeta.java |   9 +-
 .../TableBuiltinAggregationFunction.java           |   2 +
 .../relational/tvf/CapacityTableFunction.java      |  27 +-
 ...bleFunction.java => CumulateTableFunction.java} |  78 ++-
 .../builtin/relational/tvf/HOPTableFunction.java   |  44 +-
 .../relational/tvf/SessionTableFunction.java       |  24 +-
 ...TableFunction.java => TumbleTableFunction.java} |  64 +-
 .../relational/tvf/VariationTableFunction.java     |  25 +-
 .../org/apache/iotdb/commons/utils/FileUtils.java  | 114 +++-
 .../apache/iotdb/commons/utils/StatusUtils.java    |   2 +-
 .../db/relational/grammar/sql/RelationalSql.g4     |   3 +
 iotdb-doap.rdf                                     |  16 +
 .../thrift-ainode/src/main/thrift/ainode.thrift    |  14 +
 .../thrift-commons/src/main/thrift/common.thrift   |   3 +-
 library-udf/src/assembly/tools/register-UDF.bat    | 110 ++--
 pom.xml                                            |   6 +-
 .../resources => scripts}/conf/ainode-env.sh       |   0
 .../resources => scripts}/conf/confignode-env.sh   |  21 +-
 .../resources => scripts}/conf/datanode-env.sh     |  24 +-
 .../sbin => scripts/conf}/iotdb-common.sh          |   0
 .../conf => scripts/conf/windows}/ainode-env.bat   |  11 +-
 .../conf/windows}/confignode-env.bat               |  16 +-
 .../conf => scripts/conf/windows}/datanode-env.bat |  16 +-
 .../sbin => scripts/sbin/cluster}/start-all.sh     |   2 +-
 .../sbin => scripts/sbin/cluster}/stop-all.sh      |   2 +-
 .../resources => scripts}/sbin/start-ainode.sh     |  17 +-
 .../resources => scripts}/sbin/start-cli.sh        |   0
 .../resources => scripts}/sbin/start-confignode.sh |   2 +-
 .../resources => scripts}/sbin/start-datanode.sh   |   2 +-
 .../resources => scripts}/sbin/start-standalone.sh |   0
 .../resources => scripts}/sbin/stop-ainode.sh      |   0
 .../resources => scripts}/sbin/stop-confignode.sh  |   2 +-
 .../resources => scripts}/sbin/stop-datanode.sh    |   2 +-
 .../resources => scripts}/sbin/stop-standalone.sh  |   0
 .../sbin => scripts/sbin/windows}/start-ainode.bat |  12 +-
 .../sbin/windows/start-cli-table.bat               |   7 +-
 .../sbin => scripts/sbin/windows}/start-cli.bat    |   5 +-
 .../sbin/windows}/start-confignode.bat             |  10 +-
 .../sbin/windows}/start-datanode.bat               |  16 +-
 .../sbin/windows}/start-standalone.bat             |  12 +-
 .../sbin => scripts/sbin/windows}/stop-ainode.bat  |   8 +-
 .../sbin/windows}/stop-confignode.bat              |  13 +-
 .../sbin/windows}/stop-datanode.bat                |  13 +-
 .../sbin/windows}/stop-standalone.bat              |  10 +-
 .../resources => scripts}/tools/export-data.sh     |   0
 .../tools/export-tsfile.sh                         |   8 +-
 .../resources => scripts}/tools/import-data.sh     |   0
 .../tools => scripts/tools/ops}/backup.sh          |   2 +-
 .../tools => scripts/tools/ops}/collect-info.sh    |   2 +-
 .../tools/ops}/daemon-confignode.sh                |   2 +-
 .../sbin => scripts/tools/ops}/daemon-datanode.sh  |   2 +-
 .../sbin => scripts/tools/ops}/destroy-all.sh      |  18 +-
 .../tools/ops}/destroy-confignode.sh               |   2 +-
 .../sbin => scripts/tools/ops}/destroy-datanode.sh |   2 +-
 .../sbin => scripts/tools/ops}/health_check.sh     |   4 +-
 .../sbin => scripts/tools/ops}/remove-ainode.sh    |  23 +-
 .../tools/schema}/export-schema.sh                 |   2 +-
 .../tools/schema}/import-schema.sh                 |   2 +-
 .../tools/schema/print-pb-tree-file.sh             |   2 +-
 .../tools/schema/print-schema-log.sh               |   2 +-
 .../check-overlap-sequence-files-and-repair.sh     |   2 +-
 .../tools/tsfile/overlap-statistic-tool.sh         |   2 +-
 .../tools/tsfile/print-iotdb-data-dir.sh           |   2 +-
 .../tools/tsfile/print-tsfile-resource-files.sh    |   2 +-
 .../tools/tsfile/print-tsfile.sh                   |   2 +-
 .../tools/tsfile/settle-tsfile.sh                  |   0
 .../tools/tsfile/split-tsfile-tool.sh              |   2 +-
 .../tools/tsfile/validate-tsfile.sh                |   2 +-
 .../tools/windows}/export-data.bat                 |   2 +-
 .../tools/windows/export-tsfile.bat                |  10 +-
 .../tools/windows}/import-data.bat                 |   2 +-
 .../tools => scripts/tools/windows/ops}/backup.bat |  13 +-
 .../tools/windows/ops}/collect-info.bat            |   8 +-
 .../tools/windows/ops}/destroy-all.bat             |   8 +-
 .../tools/windows/ops}/destroy-confignode.bat      |   4 +-
 .../tools/windows/ops}/destroy-datanode.bat        |   4 +-
 .../tools/windows/ops}/health_check.bat            |  47 +-
 .../tools/windows/ops}/remove-ainode.bat           |  20 +-
 .../tools/windows/schema}/export-schema.bat        |   2 +-
 .../tools/windows/schema}/import-schema.bat        |   2 +-
 .../tools/windows}/schema/print-pb-tree-file.bat   |   2 +-
 .../tools/windows}/schema/print-schema-log.bat     |   2 +-
 .../check-overlap-sequence-files-and-repair.bat    |   2 +-
 .../windows}/tsfile/overlap-statistic-tool.bat     |   2 +-
 .../tools/windows}/tsfile/print-iotdb-data-dir.bat |   2 +-
 .../tsfile/print-tsfile-resource-files.bat         |   2 +-
 .../tools/windows}/tsfile/print-tsfile.bat         |   2 +-
 .../tools/windows}/tsfile/settle-tsfile.bat        |   2 +-
 .../tools/windows}/tsfile/split-tsfile-tool.bat    |   2 +-
 .../tools/windows}/tsfile/validate-tsfile.bat      |   2 +-
 538 files changed, 16387 insertions(+), 4693 deletions(-)
 copy 
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/{MyExcludeColumn.java
 => MySelectColumn.java} (81%)
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/IoTDBAsofJoinTableIT.java
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBComplexQueryIT.java
 create mode 100644 
integration-test/src/test/java/org/apache/iotdb/subscription/it/local/IoTDBSubscriptionPermissionIT.java
 copy 
iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/NonOpenTransport.java
 => 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/EmptyTableFunctionHandle.java
 (69%)
 create mode 100644 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/MapTableFunctionHandle.java
 copy iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/{State.java => 
relational/table/TableFunctionHandle.java} (81%)
 copy 
integration-test/src/test/java/org/apache/iotdb/confignode/it/removedatanode/SQLModel.java
 => 
iotdb-api/udf-api/src/main/java/org/apache/iotdb/udf/api/relational/table/argument/ScalarArgumentChecker.java
 (69%)
 delete mode 100755 
iotdb-client/cli/src/assembly/resources/tools/load-tsfile.bat
 delete mode 100755 iotdb-client/cli/src/assembly/resources/tools/load-tsfile.sh
 create mode 100644 iotdb-client/client-cpp/src/main/NodesSupplier.cpp
 create mode 100644 iotdb-client/client-cpp/src/main/NodesSupplier.h
 create mode 100644 iotdb-client/client-cpp/src/main/SessionConnection.cpp
 create mode 100644 iotdb-client/client-cpp/src/main/SessionConnection.h
 create mode 100644 iotdb-client/client-cpp/src/main/ThriftConnection.cpp
 create mode 100644 iotdb-client/client-cpp/src/main/ThriftConnection.h
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/schemaregion/SchemaRegion.java
 => 
iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/subscription/annotation/TableModel.java
 (76%)
 create mode 100644 
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/manager/load/balancer/region/GreedyCopySetRemoveNodeReplicaSelectTest.java
 rename 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/util/builder/{PipeTableModeTsFileBuilder.java
 => PipeTableModelTsFileBuilder.java} (64%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/util/builder/PipeTableModelTsFileBuilderV2.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/connector/util/builder/PipeTreeModelTsFileBuilderV2.java
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/{TreeMergeSortOperator.java
 => join/TableLeftOuterTimeJoinOperator.java} (55%)
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/{AscLongTypeJoinKeyComparator.java
 => AscLongTypeIgnoreEqualJoinKeyComparator.java} (82%)
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/merge/comparator/{DescLongTypeJoinKeyComparator.java
 => DescLongTypeIgnoreEqualJoinKeyComparator.java} (82%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/AsofMergeSortInnerJoinOperator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/DeviceIteratorScanOperator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/MeasurementToTableViewAdaptorUtils.java
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/{process/last/LastQueryTransformOperator.java
 => source/relational/TreeToTableViewAdaptorOperator.java} (56%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/ApproxCountDistinctAccumulator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/HyperLogLog.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/HyperLogLogStateFactory.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/grouped/GroupedApproxCountDistinctAccumulator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/grouped/array/HyperLogLogBigArray.java
 rename 
iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function}/TableBuiltinTableFunction.java
 (83%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/tvf/ForecastTableFunction.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/sql/ast/AsofJoinOn.java
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/scheduler/{FragInstanceDispatchResult.java
 => FailedFragmentInstanceWithStatus.java} (69%)
 rename 
iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/udf/utils => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf}/TableUDFUtils.java
 (96%)
 rename 
iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/udf/utils => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf}/TreeUDFUtils.java
 (92%)
 rename 
iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/udf/service => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/udf}/UDFManagementService.java
 (97%)
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/performer/{ICrossCompactionPerformer.java
 => IInnerCompactionPerformer.java} (74%)
 rename 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/compaction/selector/estimator/{MetadataInfo.java
 => CompactionTaskMetadataInfo.java} (81%)
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/DeviceIteratorScanOperatorTest.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/NonAlignedTreeDeviceViewScanOperatorTreeTest.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/TreeToTableViewAdaptorOperatorTest.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AsofInnerJoinOperatorTest.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AsofJoinTest.java
 copy 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/assertions/{EquiJoinClauseProvider.java
 => AsofJoinClauseProvider.java} (57%)
 copy 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/exception/{RpcThrottlingException.java
 => QuerySchemaFetchFailedException.java} (72%)
 copy 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/{conf/CommonDescriptor.java
 => pipe/config/PipeDescriptor.java} (55%)
 copy 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/{HOPTableFunction.java
 => CumulateTableFunction.java} (62%)
 copy 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/{HOPTableFunction.java
 => TumbleTableFunction.java} (69%)
 rename {iotdb-core/ainode/resources => scripts}/conf/ainode-env.sh (100%)
 rename {iotdb-core/confignode/src/assembly/resources => 
scripts}/conf/confignode-env.sh (93%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/conf/datanode-env.sh (95%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/conf}/iotdb-common.sh (100%)
 rename {iotdb-core/ainode/resources/conf => 
scripts/conf/windows}/ainode-env.bat (92%)
 rename {iotdb-core/confignode/src/assembly/resources/conf => 
scripts/conf/windows}/confignode-env.bat (90%)
 rename {iotdb-core/datanode/src/assembly/resources/conf => 
scripts/conf/windows}/datanode-env.bat (92%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/sbin/cluster}/start-all.sh (98%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/sbin/cluster}/stop-all.sh (97%)
 rename {iotdb-core/ainode/resources => scripts}/sbin/start-ainode.sh (84%)
 rename {iotdb-client/cli/src/assembly/resources => scripts}/sbin/start-cli.sh 
(100%)
 rename {iotdb-core/confignode/src/assembly/resources => 
scripts}/sbin/start-confignode.sh (99%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/sbin/start-datanode.sh (99%)
 rename {iotdb-core/node-commons/src/assembly/resources => 
scripts}/sbin/start-standalone.sh (100%)
 rename {iotdb-core/ainode/resources => scripts}/sbin/stop-ainode.sh (100%)
 rename {iotdb-core/confignode/src/assembly/resources => 
scripts}/sbin/stop-confignode.sh (98%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/sbin/stop-datanode.sh (98%)
 rename {iotdb-core/node-commons/src/assembly/resources => 
scripts}/sbin/stop-standalone.sh (100%)
 rename {iotdb-core/ainode/resources/sbin => 
scripts/sbin/windows}/start-ainode.bat (85%)
 copy iotdb-client/cli/src/assembly/resources/sbin/start-cli.bat => 
scripts/sbin/windows/start-cli-table.bat (94%)
 rename {iotdb-client/cli/src/assembly/resources/sbin => 
scripts/sbin/windows}/start-cli.bat (95%)
 rename {iotdb-core/confignode/src/assembly/resources/sbin => 
scripts/sbin/windows}/start-confignode.bat (94%)
 rename {iotdb-core/datanode/src/assembly/resources/sbin => 
scripts/sbin/windows}/start-datanode.bat (94%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/sbin/windows}/start-standalone.bat (78%)
 rename {iotdb-core/ainode/resources/sbin => 
scripts/sbin/windows}/stop-ainode.bat (90%)
 rename {iotdb-core/confignode/src/assembly/resources/sbin => 
scripts/sbin/windows}/stop-confignode.bat (84%)
 rename {iotdb-core/datanode/src/assembly/resources/sbin => 
scripts/sbin/windows}/stop-datanode.bat (85%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/sbin/windows}/stop-standalone.bat (80%)
 rename {iotdb-client/cli/src/assembly/resources => 
scripts}/tools/export-data.sh (100%)
 copy iotdb-client/cli/src/assembly/resources/tools/import-schema.sh => 
scripts/tools/export-tsfile.sh (89%)
 rename {iotdb-client/cli/src/assembly/resources => 
scripts}/tools/import-data.sh (100%)
 rename {iotdb-client/cli/src/assembly/resources/tools => 
scripts/tools/ops}/backup.sh (98%)
 rename {iotdb-client/cli/src/assembly/resources/tools => 
scripts/tools/ops}/collect-info.sh (98%)
 rename {iotdb-core/confignode/src/assembly/resources/sbin => 
scripts/tools/ops}/daemon-confignode.sh (97%)
 rename {iotdb-core/datanode/src/assembly/resources/sbin => 
scripts/tools/ops}/daemon-datanode.sh (97%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/tools/ops}/destroy-all.sh (82%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/tools/ops}/destroy-confignode.sh (95%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/tools/ops}/destroy-datanode.sh (97%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/tools/ops}/health_check.sh (99%)
 rename {iotdb-core/ainode/resources/sbin => 
scripts/tools/ops}/remove-ainode.sh (84%)
 rename {iotdb-client/cli/src/assembly/resources/tools => 
scripts/tools/schema}/export-schema.sh (96%)
 rename {iotdb-client/cli/src/assembly/resources/tools => 
scripts/tools/schema}/import-schema.sh (96%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/tools/schema/print-pb-tree-file.sh (96%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/tools/schema/print-schema-log.sh (96%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/tools/tsfile/check-overlap-sequence-files-and-repair.sh (96%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/tools/tsfile/overlap-statistic-tool.sh (96%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/tools/tsfile/print-iotdb-data-dir.sh (96%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/tools/tsfile/print-tsfile-resource-files.sh (96%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/tools/tsfile/print-tsfile.sh (96%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/tools/tsfile/settle-tsfile.sh (100%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/tools/tsfile/split-tsfile-tool.sh (96%)
 rename {iotdb-core/datanode/src/assembly/resources => 
scripts}/tools/tsfile/validate-tsfile.sh (96%)
 rename {iotdb-client/cli/src/assembly/resources/tools => 
scripts/tools/windows}/export-data.bat (99%)
 copy iotdb-client/cli/src/assembly/resources/tools/export-schema.bat => 
scripts/tools/windows/export-tsfile.bat (86%)
 rename {iotdb-client/cli/src/assembly/resources/tools => 
scripts/tools/windows}/import-data.bat (99%)
 rename {iotdb-client/cli/src/assembly/resources/tools => 
scripts/tools/windows/ops}/backup.bat (87%)
 rename {iotdb-client/cli/src/assembly/resources/tools => 
scripts/tools/windows/ops}/collect-info.bat (97%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/tools/windows/ops}/destroy-all.bat (83%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/tools/windows/ops}/destroy-confignode.bat (96%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/tools/windows/ops}/destroy-datanode.bat (98%)
 rename {iotdb-core/node-commons/src/assembly/resources/sbin => 
scripts/tools/windows/ops}/health_check.bat (91%)
 rename {iotdb-core/ainode/resources/sbin => 
scripts/tools/windows/ops}/remove-ainode.bat (82%)
 rename {iotdb-client/cli/src/assembly/resources/tools => 
scripts/tools/windows/schema}/export-schema.bat (99%)
 rename {iotdb-client/cli/src/assembly/resources/tools => 
scripts/tools/windows/schema}/import-schema.bat (99%)
 rename {iotdb-core/datanode/src/assembly/resources/tools => 
scripts/tools/windows}/schema/print-pb-tree-file.bat (98%)
 rename {iotdb-core/datanode/src/assembly/resources/tools => 
scripts/tools/windows}/schema/print-schema-log.bat (98%)
 rename {iotdb-core/datanode/src/assembly/resources/tools => 
scripts/tools/windows}/tsfile/check-overlap-sequence-files-and-repair.bat (98%)
 rename {iotdb-core/datanode/src/assembly/resources/tools => 
scripts/tools/windows}/tsfile/overlap-statistic-tool.bat (98%)
 rename {iotdb-core/datanode/src/assembly/resources/tools => 
scripts/tools/windows}/tsfile/print-iotdb-data-dir.bat (98%)
 rename {iotdb-core/datanode/src/assembly/resources/tools => 
scripts/tools/windows}/tsfile/print-tsfile-resource-files.bat (98%)
 rename {iotdb-core/datanode/src/assembly/resources/tools => 
scripts/tools/windows}/tsfile/print-tsfile.bat (98%)
 rename {iotdb-core/datanode/src/assembly/resources/tools => 
scripts/tools/windows}/tsfile/settle-tsfile.bat (98%)
 rename {iotdb-core/datanode/src/assembly/resources/tools => 
scripts/tools/windows}/tsfile/split-tsfile-tool.bat (98%)
 rename {iotdb-core/datanode/src/assembly/resources/tools => 
scripts/tools/windows}/tsfile/validate-tsfile.bat (98%)

Reply via email to