This is an automated email from the ASF dual-hosted git repository.
Caideyipi pushed a change to branch air-gap-udp-transport
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from 0edcf5ff005 Merge branch 'master' of https://github.com/apache/iotdb
into air-gap-udp-transport
add ce3ef055652 Fix schema recovery for single device attribute match
(#18490)
add 0280aa7b51a Implement FFT table function for table model
add 7c656815b46 fix: fix `RPCTransportFactory` setting bug (#18497)
add a8950536244 [Subscription] Disable subscription by default (#18457)
add a10bc6ba7e7 Revert "Fix IoTConsensus batch accumulation and config
reload (#18501)" (#18535)
add 6aec4b872a1 Fix IoTConsensus reconstruction IT follower
synchronization (#18536)
add 621f9868a62 [DOC] Point the contributing documents section to
apache/iotdb-docs (#18542)
add c30554f743c Fix fragment failure propagation race (#18543)
add 011616824b9 Pipe: Fix TsFile reference races and improve result set
diffs (#18376)
add 5ce27404e87 Filter all-null FIELD columns before tablet insert in
Java/C++/Python… (#18533)
add b9683c0c106 fix(load): validate TsFile before async move (#18531)
add 76ee6f08165 Fix finite pipe auto-drop without DataRegions (#18540)
add 1106d858f10 Add IoTDB Edge distribution: ConfigNode + DataNode merged
in one JVM (#18538)
add ebd9c2072e3 Fix IoTConsensus batch accumulation latency (#18522)
add 60833764d31 Fix pipe historical extraction when device metadata is
unavailable (#18541)
add a9f1d5258e1 Fix pipe sink isolation between pipes (#18549)
add b3b2e95f52e Fix LOAD replica set order comparison (#18551)
add 8c50293d308 Add daemon and cleanup tools for IoTDB Edge (#18552)
add 7a38e7e225f Add DataNodeExceptionMetrics with suspected disk exception
counter (#18554)
add e096f6316e6 Fix flaky PARTIAL/FINAL plan assertion in
rateFunctionsNormalTest (#18556)
add a185d9c7e94 Extend the monitoring framework to support multiple node
types (#18470)
add 8df29019a69 Bump Netty to 4.1.137.Final, Reactor Netty to 1.2.18, and
Thrift to 0.24.0 (#18559)
add 05a97b91102 Tune Edge compaction and TsFile defaults (#18566)
add 6b0354f4f15 Suppress pull commit progress log when subscription is
disabled (#18564)
add 18ec5f0a393 [Pipe] Preserve downstream sink error messages (#18553)
add d21169f10fb Update pipe config for edge version (#18568)
add 829837237aa Bump C++ client bundled Thrift from 0.23.0 to 0.24.0
(#18567)
add 6a236ff51d6 Implementation of LowPass, HighPass, and XCorr Table
Functions (#18539)
add d1302398148 Extend suspicious disk exception recording to
SyncFailedException and disk-error IOExceptions (#18572)
add d6b3afbb2b6 Add audit hooks for inter-node user data transfers (#18569)
add e816bc1a2b8 Refactor ConfigNode client/info and DirectoryChecker into
node-common… (#18561)
add 4697c42183c Change default edge ratis configuration (#18576)
add fd398988672 Bound PartitionInfo snapshot buffers via
config_node_snapshot_buffer_size_max (#18580)
add 2c0c307c3d6 Harden timestamp arithmetic and boundary handling across
IoTDB (#17893)
add dc7346933be Support spill of devce entry in query process (#18493)
add 219332dacb8 add dailyIT for device entry spilling to disk (#18583)
add 57ce0d0e8fe remove some stack print (#18585)
add 9d912452c5a Make Edge query and load-event thread pools configurable
(#18584)
add e9dd92d13b6 Optimize Prometheus reporter snapshot updates (#18562)
add ce9b3df5b39 Stabilize pipe TsFile decomposition mods IT (#18571)
add c41838e1386 Fix IoTConsensus batch accumulation by byte size (#18560)
add e9bbc8e7944 Fix table-model Pipe batch isolation (#18577)
add 8a789d09a60 [Pipe] Allow startup when a plugin JAR is unavailable
(#18496)
add d61ef998215 Add several verifications for filtering out databases of
the table model (#18592)
add 31e75348112 [Pipe] Fix tablet type conversion for failed columns
(#18595)
add f763ad427cf Pipe: Load TsFile classes from parent class loader (#18578)
add 448a805c7b6 Revert IoTConsensus batch accumulation changes (#18598)
add 25ab7941ceb Limit Edge query threads and remove unused binary
allocator (#18587)
add 2a654e66745 Fix deleteDirectoryIfExists when root Path is not exist
(#18593)
add 6343e1fe7a0 Restrict COPY TO export paths (#18573)
add 47844ddc737 Optimize aligned memtable encoding for null values (#18610)
add 6c2b747ede6 [Pipe] Fix batch and async resource lifecycle leaks
(#18582)
add c2ead3be72f Fix Java client time column access throwing
ArrayIndexOutOfBoundsException (#17407) (#17408)
add 6a3c8d667f0 [Load] Preserve invalid device path failures during tablet
conversion (#18614)
add b1a046211b1 [AINode] Replace DiT-derived Sundial conditioning head
(#18616)
add 55736e2ee28 Add MOMENT license and copyright notice (#18611)
add ab6f8a214e1 [AINode] Add third-party attributions to binary package
(#18620)
add 320f0d5a839 [Subscription] Suppress expected commit progress warnings
(#18615)
add 510c8cddd2b Fix pipe visibility and mask credentials in show create
(#18617)
add 3ea1fc666ac Delete empty TsFile sidecars after LOAD (#18599)
add 31621ef2602 Fix metric about device entry disk io- #18609
add c05881ba28c bump tsfile version (#18629)
add 0f9f1ebb300 Change schema region sync logs to debug (#18632)
add a467cf3d430 [Pipe] Honor SECURITY privilege for relational auth
synchronization (#18624)
add 63ae0f35e0e Add SHOW RECEIVERS support (#17869)
add 280c0189aa5 Support standard TLS and mTLS in the C++ client (#18601)
add 37e3e6630e2 [Pipe] Stabilize IoTDBPipeAutoSplitIT for auto-dropped
history pipe (#18621)
add a05c63e0abb Fix aligned flush values after time deletion (#18634)
add 7c8e4cbc27d Fix flaky IoTDBAutoRegionGroupExtension2IT during DataNode
shutdown (#18642)
add 0f64600571b Optimize Python session result decoding (#18638)
add e2ac222343b [Pipe] Restore sink progress under memory pressure (#18640)
add 2838c35317f [Pipe] Stabilize receiver and compression integration
tests (#18644)
add 34528ad93d3 Stop publishing standalone CLI and node distributions
(#18622)
add 1151ba762ff Fix TVList iterator state across memtable page switches
(#18647)
add 11470dafb6f Fix WAL roll recovery after closed channel (#18653)
add fefbbbcf0fa [Subscription] Balance consensus ownership and report WAL
backlog (#18641)
add e967831ca2a [Pipe] Drop builtin sinks synchronously (#18646)
add 016d58b47fb [Subscription] Relax group credentials and report
connection failures (#18658)
add 76796db4782 [Subscription] Bound consumer close when server is
unresponsive (#18659)
add 25bf38eba0c [Query] Fix result-column OOM diagnostics (#18661)
add 2b6d628e022 [Pipe] Fix deletion buffer close flush race (#18662)
add 5b9e8868c47 [ConfigNode] Skip non-existent and duplicate region IDs
during reconstruction (#18664)
add 5d67dae28c8 Fix init of DeviceEntryBatchSizeInBytes config when there
is no properties file (#18660)
add c611a389e7d Fix table model JDBC example TTL retrieval (#18669)
add d9aa261f72a Merge origin/master into air-gap-udp-transport
No new revisions were added by this update.
Summary of changes:
.github/scripts/test-edge-ops.py | 464 ++++++++++
.github/scripts/test-edge-windows.ps1 | 222 +++++
.github/workflows/client-cpp-package.yml | 38 +-
.github/workflows/daily-it.yml | 391 +-------
.github/workflows/edge-it.yml | 98 ++
.github/workflows/multi-language-client.yml | 7 +-
.github/workflows/pipe-it.yml | 350 --------
CLAUDE.md | 13 +
CONTRIBUTING.md | 22 +-
LICENSE | 56 ++
LICENSE-binary | 24 +-
NOTICE | 10 +-
README.md | 12 +
README_ZH.md | 13 +
distribution/pom.xml | 8 +-
distribution/src/assembly/ainode-common-files.xml | 52 ++
distribution/src/assembly/ainode.xml | 2 +-
distribution/src/assembly/all.xml | 8 +
distribution/src/assembly/cli.xml | 74 --
distribution/src/assembly/confignode.xml | 89 --
distribution/src/assembly/datanode.xml | 90 --
distribution/src/assembly/{all.xml => edge.xml} | 67 +-
.../assembly/resources/conf-edge/logback-edge.xml | 244 +++++
docker/ReadMe.md | 17 +-
docker/src/main/DockerCompose/do-docker-build.sh | 6 +-
docker/src/main/Dockerfile-1.0.0-confignode | 2 +-
docker/src/main/Dockerfile-1.0.0-datanode | 5 +-
.../org/apache/iotdb/TableModelJDBCExample.java | 8 +-
integration-test/pom.xml | 20 +
integration-test/src/assembly/mpp-test.xml | 3 +
.../it/env/cluster/config/MppCommonConfig.java | 6 -
.../it/env/cluster/config/MppDataNodeConfig.java | 6 +
.../env/cluster/config/MppSharedCommonConfig.java | 7 -
.../iotdb/it/env/cluster/env/AbstractEnv.java | 6 +-
.../it/env/remote/config/RemoteCommonConfig.java | 5 -
.../it/env/remote/config/RemoteDataNodeConfig.java | 5 +
.../org/apache/iotdb/itbase/category/EdgeIT.java | 14 +-
.../org/apache/iotdb/itbase/env/CommonConfig.java | 2 -
.../apache/iotdb/itbase/env/DataNodeConfig.java | 2 +
...ataPartitionTableIntegrityCheckProcedureIT.java | 127 ++-
.../IoTDBAutoRegionGroupExtension2IT.java | 4 +-
.../commit/IoTDBRegionReconstructForIoTV1IT.java | 108 ++-
.../apache/iotdb/db/it/IoTDBLoadTsFileAuthIT.java | 29 +
.../org/apache/iotdb/db/it/IoTDBLoadTsFileIT.java | 27 +
.../org/apache/iotdb/db/it/utils/TestUtils.java | 54 +-
.../org/apache/iotdb/edge/it/IoTDBEdgeBasicIT.java | 625 +++++++++++++
.../basic/IoTDBPipeRelationalSecurityIT.java | 162 ++++
.../IoTDBPipeTsFileDecompositionWithModsIT.java | 45 +
.../treemodel/auto/basic/IoTDBPipeAutoSplitIT.java | 19 +-
.../auto/basic/IoTDBShowReceiversLifecycleIT.java | 364 ++++++++
.../auto/enhanced/IoTDBPipeAutoDropIT.java | 87 ++
.../auto/enhanced/IoTDBPipeSinkCompressionIT.java | 12 +-
.../single/IoTDBLegacyPipeReceiverSecurityIT.java | 219 +++++
.../pipe/it/single/IoTDBPipePermissionIT.java | 75 +-
.../iotdb/pipe/it/single/IoTDBPipeReceiverIT.java | 631 -------------
.../iotdb/pipe/it/single/IoTDBShowReceiversIT.java | 717 +++++++++++++++
.../pipe/it/triple/IoTDBShowReceiversTripleIT.java | 287 ++++++
.../relational/it/db/it/IoTDBDeletionTableIT.java | 57 ++
.../it/db/it/IoTDBFFTTableFunctionIT.java | 293 ++++++
.../relational/it/db/it/IoTDBWindowTVFIT.java | 273 ++++++
.../it/query/recent/IoTDBDeviceEntrySpillIT.java | 146 +++
.../it/query/recent/IoTDBTableAggregationIT.java | 20 +
.../query/recent/copyto/IoTDBCopyToTsFileIT.java | 86 ++
.../relational/it/schema/IoTDBDatabaseIT.java | 21 +-
.../iotdb/session/it/IoTDBSessionSimpleIT.java | 5 +-
.../IoTDBSubscriptionTopicOwnerPartitionIT.java | 1 -
...ConsensusSubscriptionColumnFilterClusterIT.java | 1 -
.../it/local/AbstractSubscriptionLocalIT.java | 2 -
.../it/local/IoTDBSubscriptionTopicOwnerIT.java | 1 -
iotdb-client/client-cpp/CMakeLists.txt | 18 +-
iotdb-client/client-cpp/README.md | 63 +-
iotdb-client/client-cpp/README_zh.md | 14 +-
.../client-cpp/cmake/FetchBuildTools.cmake | 2 +-
iotdb-client/client-cpp/cmake/FetchOpenSSL.cmake | 201 +++--
.../client-cpp/cmake/InstallOpenSSLRuntime.cmake | 4 +-
iotdb-client/client-cpp/examples/CMakeLists.txt | 2 +-
iotdb-client/client-cpp/examples/README.md | 2 +-
iotdb-client/client-cpp/examples/README_zh.md | 2 +-
iotdb-client/client-cpp/pom.xml | 62 +-
.../package-metadata/third_party/DEPENDENCIES.md | 4 +-
.../src/include/AbstractSessionBuilder.h | 15 +-
iotdb-client/client-cpp/src/include/Common.h | 1 +
iotdb-client/client-cpp/src/include/Session.h | 53 +-
.../client-cpp/src/include/SessionBuilder.h | 14 +-
iotdb-client/client-cpp/src/include/SessionC.h | 15 +
iotdb-client/client-cpp/src/include/SessionPool.h | 21 +-
.../client-cpp/src/include/SslConfig.h | 19 +-
iotdb-client/client-cpp/src/include/TableSession.h | 3 +-
.../client-cpp/src/include/TableSessionBuilder.h | 14 +-
iotdb-client/client-cpp/src/rpc/NodesSupplier.cpp | 33 +-
iotdb-client/client-cpp/src/rpc/NodesSupplier.h | 13 +-
.../client-cpp/src/rpc/RpcSslUtils.cpp | 37 +-
.../client-cpp/src/rpc/RpcSslUtils.h | 20 +-
.../client-cpp/src/rpc/SessionConnection.cpp | 13 +-
.../client-cpp/src/rpc/SessionConnection.h | 3 +-
iotdb-client/client-cpp/src/rpc/SessionImpl.h | 7 +-
.../client-cpp/src/rpc/ThriftConnection.cpp | 11 +-
iotdb-client/client-cpp/src/rpc/ThriftConnection.h | 6 +-
iotdb-client/client-cpp/src/session/Common.cpp | 38 +-
iotdb-client/client-cpp/src/session/Session.cpp | 208 ++++-
iotdb-client/client-cpp/src/session/SessionC.cpp | 69 ++
.../client-cpp/src/session/SessionPool.cpp | 17 +-
.../client-cpp/src/session/SslConfig.cpp | 19 +-
.../client-cpp/src/session/TableSession.cpp | 5 +-
iotdb-client/client-cpp/test/CMakeLists.txt | 43 +-
.../client-cpp/test/cpp/RpcSslIotdbE2eTest.cpp | 194 ++++
iotdb-client/client-cpp/test/cpp/sessionIT.cpp | 3 +-
.../client-cpp/test/cpp/sessionUtilsTest.cpp | 159 ++++
iotdb-client/client-cpp/test/fixtures/tls/ca.crt | 19 +
.../client-cpp/test/fixtures/tls/client.crt | 17 +
.../client-cpp/test/fixtures/tls/client.key | 28 +
.../client-cpp/test/fixtures/tls/tls-server.p12 | Bin 0 -> 2608 bytes
.../client-cpp/test/main_rpc_ssl.cpp | 14 +-
.../client-cpp/test/main_utils.cpp | 17 +-
.../test/scripts/configure_iotdb_ssl_it.py | 117 +++
.../client-cpp/test/scripts/run_cpp_it_phases.py | 130 +++
iotdb-client/client-cpp/third-party/README.md | 6 +-
iotdb-client/client-py/iotdb/Session.py | 102 ++-
iotdb-client/client-py/iotdb/utils/BitMap.py | 39 +
.../client-py/iotdb/utils/SessionDataSet.py | 30 +-
iotdb-client/client-py/iotdb/utils/SessionUtils.py | 128 +++
iotdb-client/client-py/iotdb/utils/Tablet.py | 6 +
.../client-py/iotdb/utils/iotdb_rpc_dataset.py | 90 +-
.../client-py/tests/unit/test_session_utils.py | 160 ++++
iotdb-client/jdbc/src/main/feature/feature.xml | 2 +-
.../org/apache/iotdb/jdbc/IoTDBConnection.java | 10 +-
.../apache/iotdb/jdbc/IoTDBJDBCResultSetTest.java | 90 ++
.../en/org/apache/iotdb/rpc/i18n/RpcMessages.java | 10 +
.../zh/org/apache/iotdb/rpc/i18n/RpcMessages.java | 5 +
.../iotdb/rpc/DeepCopyRpcTransportFactory.java | 25 +-
.../java/org/apache/iotdb/rpc/IoTDBRpcDataSet.java | 19 +
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 1 +
.../iotdb/rpc/DeepCopyRpcTransportFactoryTest.java | 62 ++
.../java/org/apache/iotdb/session/Session.java | 114 ++-
.../apache/iotdb/session/SessionConnection.java | 35 +-
.../org/apache/iotdb/session/ThriftConnection.java | 8 +-
.../apache/iotdb/session/util/SessionUtils.java | 86 ++
.../iotdb/session/SessionConnectionTest.java | 19 +
.../iotdb/session/util/SessionUtilsTest.java | 83 ++
.../subscription/i18n/SubscriptionMessages.java | 2 +
.../subscription/i18n/SubscriptionMessages.java | 2 +
.../SubscriptionSessionConnection.java | 8 +
.../base/AbstractSubscriptionConsumer.java | 37 +-
.../base/AbstractSubscriptionProvider.java | 96 +-
.../base/AbstractSubscriptionProviders.java | 62 +-
.../base/AbstractSubscriptionPullConsumer.java | 86 +-
.../base/AbstractSubscriptionPushConsumer.java | 20 +-
.../SubscriptionSessionConnectionTimeoutTest.java | 148 +++
.../SubscriptionConsumerConnectionFailureTest.java | 167 ++++
.../base/SubscriptionConsumerLifecycleTest.java | 96 +-
iotdb-core/ainode/ainode.xml | 6 +-
.../iotdb/ainode/core/model/chronos2/__init__.py | 2 +
.../iotdb/ainode/core/model/chronos2/base.py | 3 +
.../ainode/core/model/chronos2/chronos_bolt.py | 3 +
.../iotdb/ainode/core/model/chronos2/config.py | 3 +
.../iotdb/ainode/core/model/chronos2/dataset.py | 3 +
.../iotdb/ainode/core/model/chronos2/layers.py | 3 +
.../iotdb/ainode/core/model/chronos2/model.py | 3 +
.../core/model/chronos2/pipeline_chronos2.py | 3 +
.../iotdb/ainode/core/model/chronos2/utils.py | 3 +
.../iotdb/ainode/core/model/moirai2/__init__.py | 6 +-
.../ainode/core/model/moirai2/common/torch_util.py | 5 +
.../ainode/core/model/moirai2/modeling_moirai2.py | 5 +
.../ainode/core/model/moirai2/module/attention.py | 5 +
.../iotdb/ainode/core/model/moirai2/module/ffn.py | 5 +
.../iotdb/ainode/core/model/moirai2/module/norm.py | 5 +
.../core/model/moirai2/module/packed_scaler.py | 5 +
.../core/model/moirai2/module/position/__init__.py | 5 +
.../core/model/moirai2/module/position/additive.py | 5 +
.../model/moirai2/module/position/attn_bias.py | 5 +
.../moirai2/module/position/attn_projection.py | 5 +
.../core/model/moirai2/module/transformer.py | 5 +
.../ainode/core/model/moirai2/module/ts_embed.py | 5 +
.../ainode/core/model/moirai2/transform/_base.py | 5 +
.../ainode/core/model/moirai2/transform/_mixin.py | 5 +
.../core/model/moirai2/transform/imputation.py | 5 +
.../core/model/moment/configuration_moment.py | 1 +
.../ainode/core/model/moment/modeling_moment.py | 1 +
.../ainode/core/model/moment/pipeline_moment.py | 1 +
.../iotdb/ainode/core/model/sundial/flow_loss.py | 80 +-
.../ainode/src/assembly/resources/NOTICE-binary | 65 ++
.../src/assembly/resources/licenses/LICENSE-GLIDE | 21 +
.../src/assembly/resources/licenses/LICENSE-MOMENT | 21 +
iotdb-core/ainode/tests/test_sundial_flow_loss.py | 123 +++
.../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 | 1 +
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 6 +-
.../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4 | 4 +
.../fill/filter/FixedIntervalFillFilter.java | 4 +-
.../operator/process/fill/linear/LinearFill.java | 6 +-
.../process/gapfill/AbstractGapFillOperator.java | 22 +-
.../scalar/DateBinFunctionColumnTransformer.java | 66 +-
.../iotdb/confignode/i18n/ConfigNodeMessages.java | 9 +
.../iotdb/confignode/i18n/ManagerMessages.java | 8 +
.../iotdb/confignode/i18n/ConfigNodeMessages.java | 9 +
.../iotdb/confignode/i18n/ManagerMessages.java | 8 +
.../subscription/PullCommitProgressRPCHandler.java | 3 +-
.../iotdb/confignode/conf/ConfigNodeConfig.java | 34 +
.../confignode/conf/ConfigNodeDescriptor.java | 14 +
.../response/pipe/task/PipeTableResp.java | 8 +-
.../iotdb/confignode/manager/ProcedureManager.java | 31 +-
.../manager/load/service/EventService.java | 5 +-
.../manager/partition/PartitionManager.java | 21 +-
.../pipe/agent/task/PipeConfigNodeSubtask.java | 13 +
.../pipe/agent/task/PipeConfigNodeTask.java | 10 +
.../pipe/agent/task/PipeConfigNodeTaskStage.java | 10 +
.../runtime/heartbeat/PipeHeartbeatParser.java | 62 +-
.../receiver/protocol/IoTDBConfigNodeReceiver.java | 76 +-
.../sink/protocol/IoTDBConfigRegionAirGapSink.java | 1 +
.../persistence/partition/PartitionInfo.java | 23 +-
.../persistence/subscription/SubscriptionInfo.java | 8 +-
.../DataPartitionTableIntegrityCheckProcedure.java | 16 +-
.../runtime/CommitProgressSyncProcedure.java | 17 +-
.../iotdb/confignode/service/ConfigNode.java | 2 +-
.../main/java/org/apache/iotdb/edge/EdgeNode.java | 122 +++
.../confignode/conf/ConfigNodeConfigTest.java} | 29 +-
.../conf/LoadStatisticsPublisherConfigTest.java | 85 ++
.../ProcedureManagerReconstructRegionTest.java | 169 ++++
.../runtime/heartbeat/PipeHeartbeatParserTest.java | 118 ++-
.../pipe/sink/PipeConfigNodeThriftRequestTest.java | 8 +-
.../confignode/persistence/PartitionInfoTest.java | 65 ++
.../runtime/CommitProgressSyncProcedureTest.java | 60 +-
.../iotdb/consensus/i18n/IoTConsensusMessages.java | 3 +
.../iotdb/consensus/i18n/IoTConsensusMessages.java | 3 +
.../common/request/IndexedConsensusRequest.java | 10 +
.../iotdb/consensus/config/ConsensusConfig.java | 41 +-
.../config/UserDataTransferAuditClassifier.java | 47 +
.../apache/iotdb/consensus/iot/IoTConsensus.java | 19 +-
.../consensus/iot/IoTConsensusServerImpl.java | 127 ++-
.../consensus/iot/client/DispatchLogHandler.java | 131 ++-
.../iotdb/consensus/iot/logdispatcher/Batch.java | 10 +
.../logdispatcher/IoTConsensusMemoryManager.java | 6 +-
.../consensus/iot/logdispatcher/LogDispatcher.java | 39 +-
.../consensus/iot/logdispatcher/SyncStatus.java | 7 +-
.../SubscriptionWalRetentionCalculator.java | 8 +-
.../consensus/iot/IoTConsensusServerImplTest.java | 36 +
.../iot/client/DispatchLogHandlerTest.java | 173 ++++
.../IoTConsensusMemoryManagerTest.java | 22 -
.../iot/logdispatcher/LogDispatcherTest.java | 224 -----
.../SubscriptionWalRetentionCalculatorTest.java | 13 +
iotdb-core/datanode/src/assembly/server.xml | 1 +
.../apache/iotdb/db/i18n/DataNodeMiscMessages.java | 48 +-
.../apache/iotdb/db/i18n/DataNodePipeMessages.java | 39 +
.../iotdb/db/i18n/DataNodeQueryMessages.java | 64 ++
.../iotdb/db/i18n/StorageEngineMessages.java | 11 +-
.../apache/iotdb/db/i18n/DataNodeMiscMessages.java | 45 +-
.../apache/iotdb/db/i18n/DataNodePipeMessages.java | 36 +
.../iotdb/db/i18n/DataNodeQueryMessages.java | 63 ++
.../iotdb/db/i18n/StorageEngineMessages.java | 9 +-
.../db/audit/DataNodeUserDataTransferAuditor.java | 135 +++
.../org/apache/iotdb/db/auth/LoginLockManager.java | 20 +-
.../apache/iotdb/db/conf/DataNodeMemoryConfig.java | 47 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 91 ++
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 92 +-
.../org/apache/iotdb/db/conf/IoTDBStartCheck.java | 283 ++----
.../db/consensus/DataRegionConsensusImpl.java | 24 +
.../load/LoadAnalyzeInvalidPathException.java} | 12 +-
...java => DeviceEntrySpillNotFoundException.java} | 22 +-
.../query/QueryTimeoutRuntimeException.java | 7 +-
.../db/pipe/agent/runtime/PipeAgentLauncher.java | 167 +++-
.../agent/runtime/PipeDataNodeRuntimeAgent.java | 17 +-
.../iotdb/db/pipe/agent/task/PipeDataNodeTask.java | 10 +
.../db/pipe/agent/task/PipeDataNodeTaskAgent.java | 9 +
.../pipe/agent/task/stage/PipeTaskSinkStage.java | 19 +-
.../agent/task/subtask/sink/PipeSinkSubtask.java | 126 ++-
.../subtask/sink/PipeSinkSubtaskLifeCycle.java | 10 +
.../task/subtask/sink/PipeSinkSubtaskManager.java | 251 +++++-
.../deletion/persist/PageCacheDeletionBuffer.java | 67 +-
.../common/tsfile/PipeTsFileInsertionEvent.java | 513 ++++++++---
.../TsFileInsertionEventParserMemoryManager.java | 14 +-
.../metric/schema/PipeSchemaRegionSinkMetrics.java | 69 +-
.../metric/sink/PipeDataRegionSinkMetrics.java | 271 ++----
.../processor/TumblingWindowingProcessor.java | 31 +-
.../downsampling/DownSamplingTimeUtils.java} | 35 +-
.../downsampling/changing/ChangingValueFilter.java | 19 +-
.../sdt/SwingingDoorTrendingFilter.java | 23 +-
.../tumbling/TumblingTimeSamplingProcessor.java | 9 +-
.../protocol/thrift/IoTDBDataNodeReceiver.java | 232 ++++-
.../PipeConvertedInsertTabletStatement.java | 25 +
.../db/pipe/resource/memory/PipeMemoryManager.java | 123 ++-
.../resource/tsfile/PipeTsFilePublicResource.java | 125 +--
.../resource/tsfile/PipeTsFileResourceManager.java | 125 ++-
.../client/IoTDBDataNodeAsyncClientManager.java | 7 +
.../evolvable/batch/PipeTabletEventBatch.java | 98 +-
.../evolvable/batch/PipeTabletEventPlainBatch.java | 86 +-
.../batch/PipeTabletEventTsFileBatch.java | 110 ++-
.../batch/PipeTransferBatchReqBuilder.java | 95 +-
.../request/PipeTransferTabletBatchReqV2.java | 39 +-
.../protocol/airgap/IoTDBDataNodeAirGapSink.java | 1 +
.../protocol/airgap/IoTDBDataRegionAirGapSink.java | 13 +-
.../airgap/IoTDBSchemaRegionAirGapSink.java | 2 +-
.../iotconsensusv2/IoTConsensusV2AsyncSink.java | 46 +-
.../iotconsensusv2/IoTConsensusV2SyncSink.java | 66 ++
.../IoTConsensusV2TabletBatchEventHandler.java | 8 +
.../IoTConsensusV2TabletInsertionEventHandler.java | 11 +
.../IoTConsensusV2TsFileInsertionEventHandler.java | 16 +
.../IoTConsensusV2TransferBatchReqBuilder.java | 12 +-
.../thrift/async/IoTDBDataRegionAsyncSink.java | 632 +++++++++----
.../PipeTransferTabletBatchEventHandler.java | 2 +-
.../PipeTransferTabletInsertionEventHandler.java | 2 +-
.../handler/PipeTransferTrackableHandler.java | 94 +-
.../async/handler/PipeTransferTsFileHandler.java | 161 ++--
.../thrift/sync/IoTDBDataRegionSyncSink.java | 13 +-
.../thrift/sync/IoTDBSchemaRegionSink.java | 6 +-
.../sink/protocol/writeback/WriteBackSink.java | 101 ++-
.../util/builder/PipeTableModelTsFileBuilder.java | 41 +
.../builder/PipeTableModelTsFileBuilderV2.java | 45 +
.../util/builder/PipeTreeModelTsFileBuilder.java | 31 +
.../util/builder/PipeTreeModelTsFileBuilderV2.java | 38 +
.../pipe/sink/util/builder/PipeTsFileBuilder.java | 10 +
.../db/pipe/sink/util/cacher/LeaderCacheUtils.java | 6 +-
.../dataregion/DataRegionWatermarkInjector.java | 10 +-
...istoricalDataRegionTsFileAndDeletionSource.java | 2 +-
.../realtime/PipeRealtimeDataRegionSource.java | 4 +-
.../iotdb/db/protocol/client/ConfigNodeClient.java | 290 +-----
.../iotdb/db/protocol/client/ConfigNodeInfo.java | 148 +--
.../db/queryengine/common/MPPQueryContext.java | 130 ++-
.../common/header/DatasetHeaderFactory.java | 4 +
.../aggregation/TimeDurationAccumulator.java | 7 +-
.../timerangeiterator/AggrWindowIterator.java | 44 +-
.../timerangeiterator/ITimeRangeIterator.java | 43 +-
.../timerangeiterator/PreAggrWindowIterator.java | 48 +-
.../PreAggrWindowWithNaturalMonthIterator.java | 14 +-
.../TableDateBinTimeRangeIterator.java | 6 +-
.../queryengine/execution/driver/DataDriver.java | 45 +-
.../execution/driver/DataDriverContext.java | 2 +
.../execution/exchange/MPPDataExchangeManager.java | 63 ++
.../execution/exchange/sink/ShuffleSinkHandle.java | 63 +-
.../execution/exchange/source/SourceHandle.java | 63 +-
.../fragment/FragmentInstanceContext.java | 260 ++++--
.../fragment/FragmentInstanceManager.java | 3 +-
.../execution/fragment/QueryDataSourceLease.java | 58 ++
.../operator/process/ai/InferenceOperator.java | 30 +-
.../process/copyto/TableCopyToOperator.java | 2 +
.../operator/source/DataSourceOperator.java | 10 +
.../execution/operator/source/FileLoaderUtils.java | 4 +
.../source/PipeReceiverRuntimeSnapshotFilter.java | 63 ++
.../operator/source/ShowReceiversOperator.java | 177 ++++
.../relational/AbstractAggTableScanOperator.java | 152 +++-
.../AbstractDefaultAggTableScanOperator.java | 14 +
.../relational/AbstractTableScanOperator.java | 174 +++-
.../relational/DeviceIteratorScanOperator.java | 195 +++-
.../InformationSchemaContentSupplierFactory.java | 54 ++
...onAlignedDeviceViewAggregationScanOperator.java | 102 ++-
.../execution/schedule/DriverTaskThread.java | 35 +-
.../metric/SeriesScanCostMetricSet.java | 86 ++
.../iotdb/db/queryengine/plan/Coordinator.java | 8 +-
.../db/queryengine/plan/analyze/Analysis.java | 2 +
.../db/queryengine/plan/analyze/AnalyzeUtils.java | 14 +
.../queryengine/plan/analyze/AnalyzeVisitor.java | 92 +-
.../plan/analyze/ClusterPartitionFetcher.java | 115 ++-
.../plan/analyze/IPartitionFetcher.java | 12 +
.../analyze/cache/partition/PartitionCache.java | 146 ++-
.../plan/analyze/load/LoadTsFileAnalyzer.java | 24 +-
.../load/TreeSchemaAutoCreatorAndVerifier.java | 20 +-
.../plan/analyze/schema/SchemaValidator.java | 37 +-
.../queryengine/plan/execution/QueryExecution.java | 13 +
.../config/executor/ClusterConfigTaskExecutor.java | 21 +-
.../metadata/relational/ShowCreatePipeTask.java | 7 +-
.../plan/expression/ExpressionFactory.java | 19 +-
.../ConcatDeviceAndBindSchemaForHavingVisitor.java | 14 +-
.../plan/optimization/LimitOffsetPushDown.java | 103 ++-
.../db/queryengine/plan/parser/ASTVisitor.java | 82 +-
.../planner/DataNodeTableOperatorGenerator.java | 403 +++++----
.../plan/planner/LocalExecutionPlanner.java | 15 +-
.../plan/planner/LogicalPlanBuilder.java | 39 +
.../plan/planner/LogicalPlanVisitor.java | 7 +
.../plan/planner/OperatorTreeGenerator.java | 26 +
.../SimpleFragmentParallelPlanner.java | 2 +
.../memory/OperatorMemoryNotEnoughException.java} | 38 +-
.../plan/node/DataNodePlanNodeDeserializer.java | 3 +
.../planner/plan/node/PlanGraphJsonPrinter.java | 2 +-
.../plan/planner/plan/node/PlanGraphPrinter.java | 5 +-
.../plan/planner/plan/node/PlanVisitor.java | 5 +
.../plan/node/source/ShowReceiversNode.java | 115 +++
.../planner/plan/node/write/InsertTabletNode.java | 14 +-
.../planner/plan/parameter/SeriesScanOptions.java | 9 +-
.../relational/analyzer/StatementAnalyzer.java | 84 +-
.../read_tsfile/ExternalTsFileQueryResource.java | 3 +
.../plan/relational/metadata/DeviceEntry.java | 19 +-
.../plan/relational/metadata/Metadata.java | 22 +-
.../relational/metadata/TableMetadataImpl.java | 34 +-
.../metadata/fetcher/DeviceEntryFetchContext.java | 71 ++
.../metadata/fetcher/TableDeviceSchemaFetcher.java | 226 ++++-
.../spill/AbstractDeviceEntryMaterializer.java | 254 ++++++
.../metadata/spill/BatchDeviceEntrySource.java} | 19 +-
.../metadata/spill/DeviceEntryDataSet.java | 55 ++
.../metadata/spill/DeviceEntryDataSetHandle.java | 113 +++
.../metadata/spill/DeviceEntryDataSetResult.java} | 37 +-
.../metadata/spill/DeviceEntryDiskSpiller.java | 149 +++
.../spill/DeviceEntryFileSpillerReader.java | 162 ++++
.../metadata/spill/DeviceEntryIOContext.java | 60 ++
...DeviceEntryMaterializationMemoryController.java | 78 ++
.../metadata/spill/DeviceEntryMaterializer.java | 132 +++
.../metadata/spill/DeviceEntryReader.java} | 18 +-
.../spill/DeviceEntryRpcSegmentFetcher.java | 126 +++
.../metadata/spill/DeviceEntrySegmentFetcher.java} | 12 +-
.../spill/DeviceEntrySortedMaterializer.java | 373 ++++++++
.../metadata/spill/DeviceEntrySpillManager.java | 256 ++++++
.../metadata/spill/InMemoryDeviceEntryDataSet.java | 90 ++
.../metadata/spill/InMemoryDeviceEntrySource.java} | 35 +-
.../spill/LocalSegmentDeviceEntrySource.java | 92 ++
.../spill/RemoteSegmentDeviceEntrySource.java | 65 ++
.../metadata/spill/SegmentDeviceEntrySource.java | 88 ++
.../metadata/spill/SpilledDeviceEntryDataSet.java | 95 ++
.../plan/relational/planner/RelationPlanner.java | 12 +-
.../plan/relational/planner/TableModelPlanner.java | 6 +-
.../distribute/TableDistributedPlanGenerator.java | 996 ++++++++++++++++++++-
.../distribute/TableModelQueryFragmentPlanner.java | 18 +-
.../ir/GapFillStartAndEndTimeExtractVisitor.java | 6 +
.../iterative/rule/PruneTableScanColumns.java | 14 +-
.../planner/node/AggregationTableScanNode.java | 213 ++---
.../node/AggregationTreeDeviceViewScanNode.java | 45 +-
.../AlignedAggregationTreeDeviceViewScanNode.java | 45 +-
.../planner/node/DeviceTableScanNode.java | 94 +-
...onAlignedAggregationTreeDeviceViewScanNode.java | 45 +-
.../node/TreeAlignedDeviceViewScanNode.java | 33 +-
.../planner/node/TreeDeviceViewScanNode.java | 33 +-
.../node/TreeNonAlignedDeviceViewScanNode.java | 33 +-
.../DataNodeLocationSupplierFactory.java | 1 +
.../PushAggregationIntoTableScan.java | 2 +-
.../optimizations/PushPredicateIntoTableScan.java | 171 ++--
.../optimizations/QueryCardinalityUtil.java | 4 +-
.../planner/optimizations/SortElimination.java | 2 +-
.../optimizations/UnaliasSymbolReferences.java | 12 +-
.../relational/planner/optimizations/Util.java | 1 +
.../security/TreeAccessCheckVisitor.java | 13 +-
.../relational/sql/ast/AbstractTraverseDevice.java | 5 +-
.../plan/relational/sql/parser/AstBuilder.java | 28 +-
.../plan/scheduler/AsyncPlanNodeSender.java | 46 +-
.../plan/scheduler/AsyncSendPlanNodeHandler.java | 53 +-
.../scheduler/FragmentInstanceDispatcherImpl.java | 45 +
.../scheduler/load/LoadTsFileDispatcherImpl.java | 23 +
.../plan/scheduler/load/LoadTsFileScheduler.java | 27 +-
.../queryengine/plan/statement/StatementType.java | 1 +
.../plan/statement/StatementVisitor.java | 5 +
.../plan/statement/crud/InsertTabletStatement.java | 3 +-
.../plan/statement/crud/LoadTsFileStatement.java | 2 +-
.../plan/statement/sys/ShowReceiversStatement.java | 61 ++
.../FragmentInstanceStatisticsDrawer.java | 23 +
.../FragmentInstanceStatisticsJsonDrawer.java | 14 +
.../statistics/QueryPlanStatistics.java | 39 +
.../dag/intermediate/MultiInputLayer.java | 9 +-
.../SingleInputMultiReferenceLayer.java | 9 +-
.../SingleInputSingleReferenceLayer.java | 9 +-
.../schemaregion/impl/SchemaRegionMemoryImpl.java | 2 +
.../schemaregion/impl/SchemaRegionPBTreeImpl.java | 17 +-
.../impl/mem/snapshot/MemMTreeSnapshotUtil.java | 2 +
.../impl/pbtree/flush/PBTreeFlushExecutor.java | 2 +
.../mtree/impl/pbtree/schemafile/SchemaFile.java | 2 +
.../java/org/apache/iotdb/db/service/DataNode.java | 8 +-
.../iotdb/db/service/DataNodeShutdownHook.java | 2 +-
.../service/metrics/DataNodeExceptionMetrics.java | 104 +++
.../db/service/metrics/DataNodeMetricsHelper.java | 2 +
.../iotdb/db/storageengine/StorageEngine.java | 2 +
.../db/storageengine/dataregion/DataRegion.java | 12 +-
.../execute/task/AbstractCompactionTask.java | 2 +
.../execute/utils/MultiTsFileDeviceIterator.java | 4 +-
.../compaction/schedule/CompactionScheduler.java | 2 +
.../impl/RewriteCrossSpaceCompactionSelector.java | 3 +-
.../dataregion/flush/MemTableFlushTask.java | 3 +
.../memtable/AlignedReadOnlyMemChunk.java | 8 +-
.../memtable/AlignedWritableMemChunk.java | 253 ++++++
.../memtable/MemChunkTimeRangeUtils.java | 56 ++
.../dataregion/memtable/ReadOnlyMemChunk.java | 8 +-
.../dataregion/memtable/TsFileProcessor.java | 14 +-
.../dataregion/tsfile/TsFileResource.java | 26 +-
.../tsfile/generator/TsFileNameGenerator.java | 3 +-
.../tsfile/timeindex/ArrayDeviceTimeIndex.java | 4 +-
.../dataregion/tsfile/timeindex/FileTimeIndex.java | 4 +-
.../utils/TableDiskUsageStatisticUtil.java | 2 +
.../tableDiskUsageIndex/TableDiskUsageIndex.java | 2 +
.../tsfile/TsFileTableDiskUsageIndexWriter.java | 4 +
.../tsfile/TsFileTableSizeIndexFileWriter.java | 4 +-
.../tsfile/TsFileTableSizeIndexReader.java | 2 +
.../dataregion/wal/buffer/AbstractWALBuffer.java | 39 +-
.../dataregion/wal/buffer/WALBuffer.java | 86 +-
.../wal/checkpoint/CheckpointManager.java | 6 +
.../storageengine/dataregion/wal/io/LogWriter.java | 39 +-
.../storageengine/dataregion/wal/io/WALWriter.java | 5 +-
.../storageengine/dataregion/wal/node/WALNode.java | 16 +-
.../dataregion/wal/recover/WALNodeRecoverTask.java | 2 +
.../recover/file/SealedTsFileRecoverPerformer.java | 2 +
.../file/UnsealedTsFileRecoverPerformer.java | 3 +
.../db/storageengine/load/LoadTsFileManager.java | 4 +
.../db/storageengine/load/LoadTsFilePathUtils.java | 47 +
.../LoadConvertedInsertTabletStatement.java | 4 +
.../converter/LoadTreeTsFileTabletIterator.java | 26 +-
.../load/splitter/AlignedChunkData.java | 12 +-
.../splitter/BatchedAlignedValueChunkData.java | 6 +-
.../load/splitter/NonAlignedChunkData.java | 6 +-
.../load/splitter/TsFileSplitter.java | 23 +-
.../iotdb/db/storageengine/load/util/LoadUtil.java | 38 +
.../db/storageengine/rescon/disk/TierManager.java | 4 +
.../agent/SubscriptionReceiverAgent.java | 16 +-
.../broker/ConsensusSubscriptionBroker.java | 171 +++-
.../consensus/ConsensusPrefetchingQueue.java | 18 +-
.../task/stage/SubscriptionTaskSinkStage.java | 10 +
.../task/subtask/SubscriptionSinkSubtask.java | 5 +-
.../TsFileOverlapValidationAndRepairTool.java | 13 +-
.../org/apache/iotdb/db/utils/CommonUtils.java | 17 +-
.../iotdb/db/utils/DataNodeDateTimeUtils.java | 158 ++--
.../iotdb/db/utils/TimeFilterForDeviceTTL.java | 5 +-
.../db/utils/datastructure/AlignedTVList.java | 49 +
.../db/utils/datastructure/BackAlignedTVList.java | 1 +
.../db/utils/datastructure/QuickAlignedTVList.java | 1 +
.../iotdb/db/utils/datastructure/TVList.java | 6 +-
.../db/utils/datastructure/TimAlignedTVList.java | 3 +-
.../SlidingTimeWindowEvaluationHandler.java | 22 +-
.../audit/DataNodeUserDataTransferAuditorTest.java | 136 +++
.../apache/iotdb/db/auth/LoginLockManagerTest.java | 25 +-
.../iotdb/db/conf/DataNodeMemoryConfigTest.java | 57 +-
.../org/apache/iotdb/db/conf/PropertiesTest.java | 83 ++
.../iotdb/db/conf/QueryThreadPoolConfigTest.java | 110 +++
.../agent/plugin/PipeDataNodePluginAgentTest.java | 24 +
.../pipe/agent/runtime/PipeAgentLauncherTest.java | 186 ++++
.../pipe/agent/task/PipeDataNodeTaskAgentTest.java | 207 +++++
.../subtask/sink/PipeSinkSubtaskLifeCycleTest.java | 58 ++
.../subtask/sink/PipeSinkSubtaskManagerTest.java | 89 ++
.../task/subtask/sink/PipeSinkSubtaskTest.java | 123 ++-
.../persist/PageCacheDeletionBufferTest.java | 88 ++
.../pipe/event/TsFileInsertionEventParserTest.java | 62 ++
.../schema/PipeSchemaRegionSinkMetricsTest.java | 77 ++
.../processor/TumblingWindowingProcessorTest.java | 100 +++
.../receiver/PipeStatementTsStatusVisitorTest.java | 18 +
.../protocol/airgap/IoTDBAirGapReceiverTest.java | 138 +++
.../protocol/thrift/IoTDBDataNodeReceiverTest.java | 155 ++++
.../PipeConvertedInsertTabletStatementTest.java | 133 +++
.../resource/PipeTsFileResourceManagerTest.java | 87 ++
.../memory/PipeMemoryManagerResizeTest.java | 54 ++
.../pipe/sink/PipeDataNodeThriftRequestTest.java | 141 ++-
.../iotdb/db/pipe/sink/PipeReceiverTest.java | 12 +-
.../apache/iotdb/db/pipe/sink/PipeSinkTest.java | 60 ++
.../batch/PipeTabletEventTsFileBatchTest.java | 1 +
.../batch/PipeTransferBatchReqBuilderTest.java | 135 +++
.../thrift/async/IoTDBDataRegionAsyncSinkTest.java | 66 ++
.../handler/PipeTransferTrackableHandlerTest.java | 140 +++
.../PipeTransferTsFileHandlerCleanupTest.java | 77 ++
.../sink/util/cacher/LeaderCacheUtilsTest.java | 62 ++
.../DataRegionWatermarkInjectorTest.java} | 28 +-
...ricalDataRegionTsFileAndDeletionSourceTest.java | 26 +
.../db/protocol/client/ConfigNodeInfoTest.java | 75 ++
...rnalRPCServiceImplSubscriptionDisabledTest.java | 34 +-
.../db/queryengine/common/MPPQueryContextTest.java | 58 ++
.../db/queryengine/execution/DataDriverTest.java | 46 +
.../execution/aggregation/AccumulatorTest.java | 19 +
.../aggregation/TimeRangeIteratorTest.java | 127 +++
.../execution/exchange/ShuffleSinkHandleTest.java | 134 ++-
.../execution/exchange/SourceHandleTest.java | 74 ++
.../fragment/FragmentInstanceContextTest.java | 41 +
.../fragment/QueryDataSourceLeaseTest.java | 49 +
.../process/ai/InferenceOperatorTest.java} | 32 +-
.../operator/source/ShowReceiversOperatorTest.java | 571 ++++++++++++
.../relational/DeviceIteratorScanOperatorTest.java | 50 ++
...alTsFileTableScanOperatorRuntimeFilterTest.java | 9 +
.../InformationSchemaReceiversSupplierTest.java | 406 +++++++++
.../operator/window/SessionWindowTest.java | 8 +
.../execution/schedule/DriverTaskThreadTest.java | 120 +++
.../ConvertPredicateToTimeFilterTest.java | 5 +
.../db/queryengine/plan/analyze/AnalyzeTest.java | 13 +
.../queryengine/plan/analyze/AnalyzeUtilsTest.java | 63 +-
.../plan/analyze/FakePartitionFetcherImpl.java | 17 +
.../plan/analyze/QueryTimePartitionTest.java | 27 +
.../plan/analyze/load/LoadTsFileAnalyzerTest.java | 16 +-
.../plan/analyze/schema/SchemaValidatorTest.java | 101 +++
.../metadata/relational/ShowCreateTaskTest.java | 46 +-
.../plan/parser/StatementGeneratorTest.java | 88 ++
.../distribution/AggregationTableScanTest.java | 36 +
.../plan/planner/distribution/Util.java | 19 +
.../plan/planner/distribution/Util2.java | 19 +
.../planner/node/source/SourceNodeSerdeTest.java | 11 +
.../planner/node/write/WritePlanNodeSplitTest.java | 49 +
.../plan/relational/analyzer/AuthTest.java | 51 ++
.../plan/relational/analyzer/TSBSMetadata.java | 54 +-
.../relational/analyzer/TableFunctionTest.java | 174 ++++
.../plan/relational/analyzer/TestMetadata.java | 59 +-
.../spill/DeviceEntryMaterializerTest.java | 372 ++++++++
.../spill/DeviceEntryRpcSegmentFetcherTest.java | 107 +++
.../spill/InMemoryDeviceEntrySourceTest.java | 49 +
.../spill/SegmentDeviceEntrySourceTest.java | 347 +++++++
.../relational/planner/TableModelPlannerTest.java | 78 ++
.../informationschema/ShowReceiversTest.java | 128 +++
.../plan/scheduler/AsyncPlanNodeSenderTest.java | 81 ++
.../scheduler/load/LoadTsFileSchedulerTest.java | 43 +
.../FragmentInstanceStatisticsJsonDrawerTest.java | 12 +
.../cross/CrossSpaceCompactionSelectorTest.java | 33 +-
.../CrossSpaceCompactionWithFastPerformerTest.java | 7 +-
...sSpaceCompactionWithReadPointPerformerTest.java | 7 +-
.../cross/RewriteCompactionFileSelectorTest.java | 3 +-
.../memtable/AlignedTVListIteratorTest.java | 86 ++
.../memtable/MemChunkTimeRangeUtilsTest.java | 59 ++
.../dataregion/memtable/MemTableFlushTaskTest.java | 264 ++++++
.../memtable/NonAlignedTVListIteratorTest.java | 72 ++
.../dataregion/tsfile/TsFileResourceTest.java | 30 +
.../wal/buffer/WALBufferRollRecoveryTest.java | 300 +++++++
.../dataregion/wal/io/WALFileTest.java | 15 +
.../wal/node/ConsensusReqReaderTest.java | 2 +
.../db/storageengine/load/TsFileSplitterTest.java | 163 +++-
.../load/converter/LoadTsFileInvalidPathTest.java | 195 ++++
.../db/storageengine/load/util/LoadUtilTest.java | 59 ++
.../agent/SubscriptionReceiverAgentTest.java | 39 +-
.../ConsensusSubscriptionBrokerOwnershipTest.java | 192 ++++
.../consensus/ConsensusPrefetchingQueueTest.java | 54 ++
.../ConsensusSubscriptionSetupHandlerTest.java | 13 +-
.../apache/iotdb/db/utils/CommonUtilsTest.java} | 24 +-
.../apache/iotdb/db/utils/DateTimeUtilsTest.java | 41 +
.../db/utils/datastructure/AlignedTVListTest.java | 32 +
.../SlidingTimeWindowEvaluationHandlerTest.java | 15 +
iotdb-core/metrics/ReadMe.md | 1 +
.../apache/iotdb/metrics/i18n/MetricsMessages.java | 1 +
.../apache/iotdb/metrics/i18n/MetricsMessages.java | 1 +
.../apache/iotdb/metrics/config/MetricConfig.java | 14 +
.../metrics/config/MetricConfigDescriptor.java | 94 +-
.../reporter/prometheus/PrometheusReporter.java | 120 ++-
.../org/apache/iotdb/metrics/utils/NodeType.java | 3 +-
.../iotdb/metrics/config/MetricConfigTest.java | 16 +
.../prometheus/PrometheusReporterTest.java | 75 ++
iotdb-core/node-commons/pom.xml | 8 +
.../resources/conf/edge/iotdb-system.properties | 201 +++++
.../conf/iotdb-system.properties.template | 99 +-
.../apache/iotdb/commons/i18n/CommonMessages.java | 284 ++++--
.../apache/iotdb/commons/i18n/ConfigMessages.java | 39 +
.../apache/iotdb/commons/i18n/QueryMessages.java | 44 +
.../apache/iotdb/commons/i18n/ServiceMessages.java | 4 +
.../apache/iotdb/commons/i18n/StorageMessages.java | 38 +
.../apache/iotdb/commons/i18n/CommonMessages.java | 38 +-
.../apache/iotdb/commons/i18n/ConfigMessages.java | 33 +
.../apache/iotdb/commons/i18n/QueryMessages.java | 42 +
.../apache/iotdb/commons/i18n/ServiceMessages.java | 4 +
.../apache/iotdb/commons/i18n/StorageMessages.java | 35 +
.../iotdb/commons/audit/AbstractAuditLogger.java | 49 +
.../apache/iotdb/commons/audit/AuditEventType.java | 1 +
.../commons/audit/UserDataTransferAuditEvent.java | 84 ++
.../UserDataTransferAuditHandler.java} | 37 +-
.../commons/audit/UserDataTransferErrorCode.java} | 15 +-
.../audit/UserDataTransferProtectionMethod.java} | 13 +-
.../commons/binaryallocator/BinaryAllocator.java | 311 -------
.../binaryallocator/BinaryAllocatorState.java | 71 --
.../PooledBinaryPhantomReference.java | 42 -
.../iotdb/commons/binaryallocator/arena/Arena.java | 273 ------
.../binaryallocator/autoreleaser/Releaser.java | 93 --
.../binaryallocator/config/AllocatorConfig.java | 53 --
.../ema/AdaptiveWeightedAverage.java | 100 ---
.../commons/binaryallocator/evictor/Evictor.java | 102 ---
.../metric/BinaryAllocatorMetrics.java | 138 ---
.../commons/binaryallocator/utils/SizeClasses.java | 146 ---
.../commons/client/AbstractConfigNodeClient.java} | 976 ++++++++------------
.../commons/client/AbstractConfigNodeInfo.java} | 59 +-
.../iotdb/commons/concurrent/ThreadName.java | 4 +-
.../commons/conf/AbstractIoTDBStartCheck.java | 195 ++++
.../apache/iotdb/commons/conf/CommonConfig.java | 59 +-
.../iotdb/commons/conf/CommonDescriptor.java | 29 -
.../commons/disk/utils}/DirectoryChecker.java | 12 +-
.../commons/partition/SeriesPartitionTable.java | 25 +-
.../agent/plugin/builtin/BuiltinPipePlugin.java | 33 +
.../plugin/service/PipePluginClassLoader.java | 8 +-
.../iotdb/commons/pipe/agent/task/PipeTask.java | 8 +
.../commons/pipe/agent/task/PipeTaskAgent.java | 270 ++++--
.../pipe/agent/task/meta/PipeRuntimeMeta.java | 4 +-
.../commons/pipe/agent/task/meta/PipeTaskMeta.java | 4 +-
.../pipe/agent/task/stage/PipeTaskStage.java | 8 +
.../task/subtask/PipeAbstractSinkSubtask.java | 3 +-
.../commons/pipe/receiver/IoTDBFileReceiver.java | 95 ++
.../pipe/receiver/PipeReceiverStatusHandler.java | 243 ++++-
.../runtime/PipeReceiverRuntimeRegistry.java | 355 ++++++++
.../runtime/PipeReceiverRuntimeSnapshot.java | 115 +++
.../pipe/sink/client/IoTDBClientManager.java | 25 +
.../pipe/sink/client/IoTDBSyncClientManager.java | 110 ++-
.../common/PipeTransferHandshakeConstant.java | 2 +
.../payload/thrift/request/PipeRequestType.java | 3 +
.../thrift/request/PipeTransferHandshakeV1Req.java | 3 +-
.../thrift/request/PipeTransferHandshakeV2Req.java | 8 +-
...eTransferPipeReceiverRuntimeInfoCleanupReq.java | 103 +++
.../commons/pipe/sink/protocol/IoTDBSink.java | 27 +
.../pipe/sink/protocol/IoTDBSslSyncSink.java | 22 +
.../plan/planner/plan/node/PlanNodeType.java | 1 +
.../function/TableBuiltinTableFunction.java | 18 +-
.../function/tvf/ForecastTableFunction.java | 18 +-
.../queryengine/plan/udf/ForecastTimeUtils.java | 78 ++
.../commons/queryengine/plan/udf/UDTFForecast.java | 15 +-
.../schema/column/ColumnHeaderConstant.java | 42 +
.../commons/schema/table/InformationSchema.java | 34 +
.../commons/schema/tree/AbstractTreeVisitor.java | 4 +-
.../service/metric/JvmGcMonitorMetrics.java | 4 -
.../commons/service/metric/MetricService.java | 15 +-
.../commons/service/metric}/ProcessMetrics.java | 8 +-
.../iotdb/commons/service/metric/enums/Metric.java | 2 +-
.../iotdb/commons/service/metric/enums/Tag.java | 1 +
.../snapshot/ReusableBufferedOutputStream.java | 134 +++
.../commons/snapshot/SnapshotStreamFactory.java | 130 +++
.../meta/consumer/ConsumerGroupMeta.java | 31 +-
.../builtin/UDTFEqualSizeBucketOutlierSample.java | 115 +--
.../commons/udf/builtin/UDTFTimeDifference.java | 4 +-
.../relational/tvf/CapacityTableFunction.java | 30 +-
.../relational/tvf/CumulateTableFunction.java | 19 +-
.../builtin/relational/tvf/FFTTableFunction.java | 804 +++++++++++++++++
.../tvf/FilterTransferTableFunction.java | 315 +++++++
.../builtin/relational/tvf/HOPTableFunction.java | 41 +-
.../relational/tvf/HighPassTableFunction.java | 81 ++
.../relational/tvf/LowPassTableFunction.java | 77 ++
.../builtin/relational/tvf/M4TableFunction.java | 87 +-
.../relational/tvf/SessionTableFunction.java | 6 +-
.../relational/tvf/TumbleTableFunction.java | 6 +-
.../udf/builtin/relational/tvf/WindowTVFUtils.java | 216 +++++
.../builtin/relational/tvf/XCorrTableFunction.java | 249 ++++++
.../builtin/relational/tvf/fft/DoubleFFT_1D.java | 191 ++++
.../builtin/relational/tvf/fft/FloatFFT_1D.java | 160 ++++
.../iotdb/commons/utils/CommonDateTimeUtils.java | 20 +
.../org/apache/iotdb/commons/utils/FileUtils.java | 27 +
.../iotdb/commons/utils/TimePartitionUtils.java | 208 +++--
.../commons/audit/AbstractAuditLoggerTest.java | 19 +
.../audit/UserDataTransferAuditEventTest.java | 57 ++
.../binaryallocator/BinaryAllocatorTest.java | 171 ----
.../iotdb/commons/conf/CommonConfigTest.java | 16 +
.../partition/SeriesPartitionTableTest.java | 43 +
.../plugin/service/PipePluginClassLoaderTest.java | 35 +
.../PipeReceiverStatusHandlerTest.java | 226 +++++
.../runtime/PipeReceiverRuntimeRegistryTest.java | 947 ++++++++++++++++++++
.../thrift/request/PipeRequestTypeTest.java | 25 +
.../commons/pipe/task/PipeSleepIntervalTest.java | 17 +
.../schema/filter/impl/DeviceFilterUtilTest.java | 15 +
.../snapshot/SnapshotStreamFactoryTest.java | 307 +++++++
.../consumer/ConsumerGroupDeSerTest.java | 26 +
.../relational/tvf/CapacityTableFunctionTest.java | 58 +-
.../relational/tvf/FFTTableFunctionTest.java | 518 +++++++++++
.../relational/tvf/ForecastTimeUtilsTest.java | 70 ++
.../tvf/TimeWindowTableFunctionBoundaryTest.java | 186 ++++
.../udf/builtin/relational/tvf/fft/FFT1DTest.java | 148 +++
.../commons/utils/CommonDateTimeUtilsTest.java | 33 +
.../apache/iotdb/commons/utils/FileUtilsTest.java | 12 +
.../commons/utils/TimePartitionUtilsTest.java | 160 ++++
.../db/relational/grammar/sql/RelationalSql.g4 | 8 +-
.../src/main/thrift/datanode.thrift | 15 +
pom.xml | 21 +-
scripts/conf/edge-env.sh | 69 ++
scripts/conf/windows/edge-env.bat | 48 +
scripts/sbin/start-edge.sh | 96 ++
scripts/sbin/stop-edge.sh | 114 +++
scripts/sbin/windows/check-edge.ps1 | 66 ++
scripts/sbin/windows/start-confignode.bat | 4 +-
scripts/sbin/windows/start-datanode.bat | 4 +-
scripts/sbin/windows/start-edge.bat | 109 +++
scripts/sbin/windows/start-standalone.bat | 7 +-
scripts/sbin/windows/stop-edge.bat | 29 +
scripts/tools/ops/daemon-edge.sh | 114 +++
scripts/tools/ops/destroy-edge.sh | 161 ++++
scripts/tools/windows/ops/destroy-edge.bat | 96 ++
746 files changed, 40714 insertions(+), 8864 deletions(-)
create mode 100644 .github/scripts/test-edge-ops.py
create mode 100644 .github/scripts/test-edge-windows.ps1
create mode 100644 .github/workflows/edge-it.yml
create mode 100644 distribution/src/assembly/ainode-common-files.xml
delete mode 100644 distribution/src/assembly/cli.xml
delete mode 100644 distribution/src/assembly/confignode.xml
delete mode 100644 distribution/src/assembly/datanode.xml
copy distribution/src/assembly/{all.xml => edge.xml} (62%)
create mode 100644
distribution/src/assembly/resources/conf-edge/logback-edge.xml
copy
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/agent/task/PipeTask.java
=> integration-test/src/main/java/org/apache/iotdb/itbase/category/EdgeIT.java
(84%)
create mode 100644
integration-test/src/test/java/org/apache/iotdb/edge/it/IoTDBEdgeBasicIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/pipe/it/dual/tablemodel/manual/basic/IoTDBPipeRelationalSecurityIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/pipe/it/dual/treemodel/auto/basic/IoTDBShowReceiversLifecycleIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/pipe/it/single/IoTDBLegacyPipeReceiverSecurityIT.java
delete mode 100644
integration-test/src/test/java/org/apache/iotdb/pipe/it/single/IoTDBPipeReceiverIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/pipe/it/single/IoTDBShowReceiversIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/pipe/it/triple/IoTDBShowReceiversTripleIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/IoTDBFFTTableFunctionIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBDeviceEntrySpillIT.java
copy
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/agent/task/PipeTask.java
=> iotdb-client/client-cpp/src/include/SslConfig.h (74%)
copy
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/service/metric/enums/Tag.java
=> iotdb-client/client-cpp/src/rpc/RpcSslUtils.cpp (59%)
copy
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/agent/task/PipeTask.java
=> iotdb-client/client-cpp/src/rpc/RpcSslUtils.h (69%)
copy
iotdb-core/metrics/interface/src/main/java/org/apache/iotdb/metrics/utils/NodeType.java
=> iotdb-client/client-cpp/src/session/SslConfig.cpp (64%)
create mode 100644 iotdb-client/client-cpp/test/cpp/RpcSslIotdbE2eTest.cpp
create mode 100644 iotdb-client/client-cpp/test/cpp/sessionUtilsTest.cpp
create mode 100644 iotdb-client/client-cpp/test/fixtures/tls/ca.crt
create mode 100644 iotdb-client/client-cpp/test/fixtures/tls/client.crt
create mode 100644 iotdb-client/client-cpp/test/fixtures/tls/client.key
create mode 100644 iotdb-client/client-cpp/test/fixtures/tls/tls-server.p12
copy
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/agent/task/PipeTask.java
=> iotdb-client/client-cpp/test/main_rpc_ssl.cpp (84%)
copy
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/agent/task/PipeTask.java
=> iotdb-client/client-cpp/test/main_utils.cpp (79%)
create mode 100644
iotdb-client/client-cpp/test/scripts/configure_iotdb_ssl_it.py
create mode 100644 iotdb-client/client-cpp/test/scripts/run_cpp_it_phases.py
create mode 100644 iotdb-client/client-py/iotdb/utils/SessionUtils.py
create mode 100644 iotdb-client/client-py/tests/unit/test_session_utils.py
create mode 100644
iotdb-client/service-rpc/src/test/java/org/apache/iotdb/rpc/DeepCopyRpcTransportFactoryTest.java
create mode 100644
iotdb-client/subscription/src/test/java/org/apache/iotdb/session/subscription/SubscriptionSessionConnectionTimeoutTest.java
create mode 100644
iotdb-client/subscription/src/test/java/org/apache/iotdb/session/subscription/consumer/base/SubscriptionConsumerConnectionFailureTest.java
create mode 100644 iotdb-core/ainode/src/assembly/resources/NOTICE-binary
create mode 100644
iotdb-core/ainode/src/assembly/resources/licenses/LICENSE-GLIDE
create mode 100644
iotdb-core/ainode/src/assembly/resources/licenses/LICENSE-MOMENT
create mode 100644 iotdb-core/ainode/tests/test_sundial_flow_loss.py
create mode 100644
iotdb-core/confignode/src/main/java/org/apache/iotdb/edge/EdgeNode.java
copy
iotdb-core/{node-commons/src/test/java/org/apache/iotdb/commons/utils/CommonDateTimeUtilsTest.java
=>
confignode/src/test/java/org/apache/iotdb/confignode/conf/ConfigNodeConfigTest.java}
(50%)
create mode 100644
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/conf/LoadStatisticsPublisherConfigTest.java
create mode 100644
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/manager/ProcedureManagerReconstructRegionTest.java
create mode 100644
iotdb-core/consensus/src/main/java/org/apache/iotdb/consensus/config/UserDataTransferAuditClassifier.java
create mode 100644
iotdb-core/consensus/src/test/java/org/apache/iotdb/consensus/iot/client/DispatchLogHandlerTest.java
delete mode 100644
iotdb-core/consensus/src/test/java/org/apache/iotdb/consensus/iot/logdispatcher/LogDispatcherTest.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/audit/DataNodeUserDataTransferAuditor.java
copy
iotdb-core/{metrics/interface/src/main/java/org/apache/iotdb/metrics/utils/NodeType.java
=>
datanode/src/main/java/org/apache/iotdb/db/exception/load/LoadAnalyzeInvalidPathException.java}
(74%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/exception/query/{QueryTimeoutRuntimeException.java
=> DeviceEntrySpillNotFoundException.java} (60%)
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{utils/datastructure/BackAlignedTVList.java
=> pipe/processor/downsampling/DownSamplingTimeUtils.java} (54%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/QueryDataSourceLease.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/PipeReceiverRuntimeSnapshotFilter.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/ShowReceiversOperator.java
copy
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/agent/task/PipeConfigNodeTask.java
=>
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/memory/OperatorMemoryNotEnoughException.java}
(51%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/ShowReceiversNode.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/fetcher/DeviceEntryFetchContext.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/AbstractDeviceEntryMaterializer.java
copy
iotdb-core/{metrics/interface/src/main/java/org/apache/iotdb/metrics/utils/NodeType.java
=>
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/BatchDeviceEntrySource.java}
(68%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryDataSet.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryDataSetHandle.java
copy
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/agent/task/PipeConfigNodeTask.java
=>
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryDataSetResult.java}
(54%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryDiskSpiller.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryFileSpillerReader.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryIOContext.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryMaterializationMemoryController.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryMaterializer.java
copy
iotdb-core/{metrics/interface/src/main/java/org/apache/iotdb/metrics/utils/NodeType.java
=>
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryReader.java}
(69%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryRpcSegmentFetcher.java
copy
iotdb-core/{node-commons/src/main/java/org/apache/iotdb/commons/pipe/agent/task/PipeTask.java
=>
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntrySegmentFetcher.java}
(74%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntrySortedMaterializer.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntrySpillManager.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/InMemoryDeviceEntryDataSet.java
copy
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/agent/task/PipeConfigNodeTask.java
=>
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/InMemoryDeviceEntrySource.java}
(55%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/LocalSegmentDeviceEntrySource.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/RemoteSegmentDeviceEntrySource.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/SegmentDeviceEntrySource.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/SpilledDeviceEntryDataSet.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/sys/ShowReceiversStatement.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/metrics/DataNodeExceptionMetrics.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/MemChunkTimeRangeUtils.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/load/LoadTsFilePathUtils.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/audit/DataNodeUserDataTransferAuditorTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/conf/QueryThreadPoolConfigTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/agent/runtime/PipeAgentLauncherTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/agent/task/subtask/sink/PipeSinkSubtaskLifeCycleTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/consensus/deletion/persist/PageCacheDeletionBufferTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/processor/aggregate/window/processor/TumblingWindowingProcessorTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/receiver/transform/statement/PipeConvertedInsertTabletStatementTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/sink/payload/evolvable/batch/PipeTransferBatchReqBuilderTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/sink/protocol/thrift/async/IoTDBDataRegionAsyncSinkTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/sink/util/cacher/LeaderCacheUtilsTest.java
copy
iotdb-core/{node-commons/src/test/java/org/apache/iotdb/commons/conf/CommonConfigTest.java
=>
datanode/src/test/java/org/apache/iotdb/db/pipe/source/dataregion/DataRegionWatermarkInjectorTest.java}
(53%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/protocol/client/ConfigNodeInfoTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/fragment/QueryDataSourceLeaseTest.java
copy
iotdb-core/{node-commons/src/test/java/org/apache/iotdb/commons/utils/CommonDateTimeUtilsTest.java
=>
datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/process/ai/InferenceOperatorTest.java}
(51%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/source/ShowReceiversOperatorTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/DeviceIteratorScanOperatorTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/InformationSchemaReceiversSupplierTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/schedule/DriverTaskThreadTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/analyze/schema/SchemaValidatorTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryMaterializerTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/DeviceEntryRpcSegmentFetcherTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/InMemoryDeviceEntrySourceTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/spill/SegmentDeviceEntrySourceTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/TableModelPlannerTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/informationschema/ShowReceiversTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/scheduler/AsyncPlanNodeSenderTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/memtable/MemChunkTimeRangeUtilsTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/wal/buffer/WALBufferRollRecoveryTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/load/converter/LoadTsFileInvalidPathTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/subscription/broker/ConsensusSubscriptionBrokerOwnershipTest.java
copy
iotdb-core/{node-commons/src/test/java/org/apache/iotdb/commons/conf/CommonConfigTest.java
=> datanode/src/test/java/org/apache/iotdb/db/utils/CommonUtilsTest.java} (58%)
create mode 100644
iotdb-core/metrics/interface/src/test/java/org/apache/iotdb/metrics/reporter/prometheus/PrometheusReporterTest.java
create mode 100644
iotdb-core/node-commons/src/assembly/resources/conf/edge/iotdb-system.properties
create mode 100644
iotdb-core/node-commons/src/main/i18n/en/org/apache/iotdb/commons/i18n/StorageMessages.java
create mode 100644
iotdb-core/node-commons/src/main/i18n/zh/org/apache/iotdb/commons/i18n/StorageMessages.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/audit/UserDataTransferAuditEvent.java
rename
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/{binaryallocator/arena/ArenaStrategy.java
=> audit/UserDataTransferAuditHandler.java} (52%)
copy
iotdb-core/{metrics/interface/src/main/java/org/apache/iotdb/metrics/utils/NodeType.java
=>
node-commons/src/main/java/org/apache/iotdb/commons/audit/UserDataTransferErrorCode.java}
(83%)
copy
iotdb-core/{metrics/interface/src/main/java/org/apache/iotdb/metrics/utils/NodeType.java
=>
node-commons/src/main/java/org/apache/iotdb/commons/audit/UserDataTransferProtectionMethod.java}
(78%)
delete mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/BinaryAllocator.java
delete mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/BinaryAllocatorState.java
delete mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/PooledBinaryPhantomReference.java
delete mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/arena/Arena.java
delete mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/autoreleaser/Releaser.java
delete mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/config/AllocatorConfig.java
delete mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/ema/AdaptiveWeightedAverage.java
delete mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/evictor/Evictor.java
delete mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/metric/BinaryAllocatorMetrics.java
delete mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/binaryallocator/utils/SizeClasses.java
copy
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/protocol/client/ConfigNodeClient.java
=>
node-commons/src/main/java/org/apache/iotdb/commons/client/AbstractConfigNodeClient.java}
(53%)
copy
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/protocol/client/ConfigNodeInfo.java
=>
node-commons/src/main/java/org/apache/iotdb/commons/client/AbstractConfigNodeInfo.java}
(74%)
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/conf/AbstractIoTDBStartCheck.java
rename
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/storageengine/rescon/disk
=>
node-commons/src/main/java/org/apache/iotdb/commons/disk/utils}/DirectoryChecker.java
(94%)
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/receiver/runtime/PipeReceiverRuntimeRegistry.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/receiver/runtime/PipeReceiverRuntimeSnapshot.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/sink/payload/thrift/request/PipeTransferPipeReceiverRuntimeInfoCleanupReq.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/queryengine/plan/udf/ForecastTimeUtils.java
rename iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/service/metrics
=>
node-commons/src/main/java/org/apache/iotdb/commons/service/metric}/ProcessMetrics.java
(97%)
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/snapshot/ReusableBufferedOutputStream.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/snapshot/SnapshotStreamFactory.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/FFTTableFunction.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/FilterTransferTableFunction.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/HighPassTableFunction.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/LowPassTableFunction.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/XCorrTableFunction.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/fft/DoubleFFT_1D.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/fft/FloatFFT_1D.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/audit/UserDataTransferAuditEventTest.java
delete mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/binaryallocator/BinaryAllocatorTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/pipe/receiver/runtime/PipeReceiverRuntimeRegistryTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/snapshot/SnapshotStreamFactoryTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/FFTTableFunctionTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/ForecastTimeUtilsTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/TimeWindowTableFunctionBoundaryTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/udf/builtin/relational/tvf/fft/FFT1DTest.java
create mode 100644 scripts/conf/edge-env.sh
create mode 100644 scripts/conf/windows/edge-env.bat
create mode 100644 scripts/sbin/start-edge.sh
create mode 100644 scripts/sbin/stop-edge.sh
create mode 100644 scripts/sbin/windows/check-edge.ps1
create mode 100644 scripts/sbin/windows/start-edge.bat
create mode 100644 scripts/sbin/windows/stop-edge.bat
create mode 100644 scripts/tools/ops/daemon-edge.sh
create mode 100644 scripts/tools/ops/destroy-edge.sh
create mode 100644 scripts/tools/windows/ops/destroy-edge.bat