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 a03062d41b3 Fix air gap receiver retry test
add 17e4efb6922 Record audit logs when revoke failed (#18352)
add 3a06ed41d5d Disable multi-node REMOVE statements (#18360)
add 647e5363152 Remove Ratis region migration rate limiting (#18365)
add 71700468942 [Pipe] Fix historical TsFile schema recovery race (#18314)
add 6559aa52ba9 Pipe: Handle hybrid meta progress indexes (#18331)
add a321fa34d5d Subscription: preserve topic updates during owner transfer
(#18353)
add 154644107a8 Pipe: Respect history enable with source time range
(#18362)
add 75eaa40744b Fix race condition in ExternalTsFileQueryResource
reference counting (#18371)
add 09252d40064 feat(load): reject managed TsFile directories (#18271)
add d82806fa208 Subscription: Rename topic modes to initial and
incremental (#18370)
add 157efaef283 Use provider-compatible file deletion and truncation APIs
(#18349)
add cc583ca61b0 Fix query analyze metric of TableModel
add 83d536aa17d [Fix] Keep heartbeat alive when metadata lease is fenced
(#18343)
add e23500e1a10 Support rate family aggregation functions in table model
(#18334)
add cde1601d17d [Pipe] Batch OPC UA sink writes (#18380) (#18384)
add bee70a863b4 Fix IndexOutOfBoundsException caused by concurrent sort
and delete on TVList (#18389)
add f6a844d8191 Query: Optimize schema traversal for non-leading tag IN
predicates (#18369)
add 303686e8604 Pipe: Add receiver session authentication integration
tests (#18395)
add c46c0732bb3 Record audit logs for normal and failed role grants and
revokes (#18355)
add f49370013af Fix config event race in pipe idempotent table IT (#18403)
add 346abc37df2 Fix DataNode restart during database deletion (#18407)
add a0543f5aa21 [ConfigNode] Revert procedure-based RegionGroup cleanup
and fix RegionMaintainer retries (#18404)
add 14ecc9f212a [Performance] Reduce allocations on aligned tablet writes
(#18358)
add 6a253567b08 Fix write-back sink tree target database case (#18398)
add 9fe55fce9a9 Fix table UDF result block splitting (#18333)
add 84c4bafa38d [Subscription] Reduce consensus WAL replay and ACK
contention (#18402)
add 513a093f6dc Fix silent deduplication of duplicate tag columns in COPY
TO statement (#18408)
add c6afaf54957 Fix table model set configuration audit logging (#18412)
add ec473f7fd1d [Subscription] Isolate tree and table topics (#18397)
add 0d94b765427 Optimize aligned memtable flush without deleted
measurements (#18406)
add feba0c62b8a feat(load): reject active load listening dirs under data
directory (#18405)
add 5be170d6a1f Fix pipe tablet memory resize admission limit (#18413)
add 7e2c453fbd1 fix(load): use buffered input when splitting TsFiles
(#18388)
add 81c2b05c67f Bump tsfile to 2.4.1-260806-SNAPSHOT and add
COPY_TO_WRITE_ERROR for COPY TO write failures (#18414)
add fcaa2f82267 Pipe: Reuse clusters across related integration tests
(#18400)
add c4616685b1a Fix SHOW QUERIES and KILL QUERY privilege filtering
(#18359)
add e281a308851 Reduce AirGap receiver log noise (#18424)
add d1f362d3ca3 Pipe: Handle transient resource failures locally (#18381)
add bc5b6a2d162 Fix subscription topic authorization bypass (#18418)
add 85442f00f85 [Load] Isolate reused TsFile parser memory from Pipe pool
(#18419)
add 10950e13ea9 Pipe: dynamically share idle floating memory (#18422)
add 50a2e83eb65 fix: validate internal tsfile paths for files only (#18417)
add 5d163835737 Support high availability for the authority module (#18425)
add 4b237744707 modify the deal strategy for metadata lease exception in
DataDriver and ErrorHandlingUtils (#18438)
add ab881319f22 Fix fragment failure race with concurrent cancellation
(#18439)
add 02f43e73f47 Upgrade Eclipse Milo to 1.1.6 (#18431)
add 3c0c7fef006 [Pipe] Fix processor worker starvation on pipe stop
(#18396)
add 17e3b4e9460 clone partial columns of aligned tvlist for query (#18409)
add ef0a792a3aa fix(pipe): reuse safe local progress on alter (#18423)
add 6ca8850a25b [Pipe] Support configurable TsFile parser (#18440)
add 2479dc63531 Subscription: clean up consumers after abrupt disconnect
(#18434)
add e1030c5e00e fix: reuse pre-computed ArrayList instance size in
AlignedTVList ram cost (#18452)
add e509114c515 fix: retry SyncStatus batch memory reservation (#18453)
add 0ea96b543ea Bump ratis to 3.3.0 (#18320)
add 96c905e8146 [SQL] Add STREAM and STREAMS as reserved keywords (#18458)
add 27e9920399b feat: cache sorted WAL file lists (#18456)
add ab7a911fdb2 [Subscription] Fix pending consensus request memory leak
(#18429)
add 8b0abccd89a [Subscription] Exclude audit database from subscriptions
(#18451)
add a110cc024f9 fix flush average points num may be mixed in one region
(#18460)
add 9b2784c3ad4 Fix data exchange failure propagation (#18468)
add cec4f9b111b Fix audit database filtering for consensus pipes (#18476)
add dc2e7c861b6 [Pipe] Optimize OPC UA TsFile last-value transfer (#18433)
add 5db9f416143 fix(subscription): avoid per-provider poll backoff (#18448)
add 4eff4c1654c [Pipe] Support receiver-side async takeover for TsFile
conversion (#18421)
add dc47a3baa0a Stabilize air-gap batch compression IT
add ada62cb1048 [Pipe] Fix conversion task ID collision after leader
switch (#18494)
add 5221cf49ed0 fix: make CompactionWorkerTest UT deterministic by using
CountDownLatch instead of fixed 2s sleep to wait for task drop status reset
(#18498)
add c63d0e82efc [DOC] Clarify internal RPC trust boundary in threat model
(#18504)
add c8e73f30ac3 Add the setting for JAVA_HOME in the start-cli.bat file
(#18503)
add 541b9a32d8e Fix unsolicited AirGap responses on idle timeout (#18502)
add 41c0e2d4ee8 [Subscription] Isolate tree and table consensus topics
(#18469)
add e591e66c0f5 Fix IoTConsensus batch accumulation and config reload
(#18501)
add fdce12d7972 Fix subscription event loss on poll payload overflow
(#18471)
add a4e56ce5c2f [Subscription] Fix WAL replay after leader failover
(#18474)
add 0a9fda0a4c3 [Subscription] Reduce consensus commit warning log noise
(#18450)
add c0c1d562aa0 [Pipe] Reject operations while pipe is being dropped
(#18485)
add 429587f629a Load: preserve pending tablets when parser fails (#18487)
add 91a44fd8c00 [Pipe] Split OPC UA sink requests by advertised server
limits (#18486)
add 20ce15e04a5 Fix fail-open authorization for pipe config plans (#18488)
add 6be80261199 Supported "need last cache" semantic for table/database
schema (#15538)
add 83f6303c253 Add TLS channel failure reporting hooks (#18299)
add ae163537785 [Subscription] Protect retained WAL by committed progress
(#18399)
add 593c3bc5c33 [Subscription] Skip runtime when subscription is disabled
(#18465)
add 2686348c031 Avoid duplicate DataNode memory configuration
initialization (#18467)
add 9ebbaaa458d Fix snapshot pipe auto-drop when some DataNodes fail to
initialize (#18512)
add c520debda0b Subscription: improve WAL replay gap observability (#18377)
add 930e9bc0cf7 Fix DataNode status handling for Pipe receiver disk
failures (#18484)
add 206f1fc4c29 Move PipelineMemoryEstimator to calc-commons (#18520)
add 079d2ee66de Fix snapshot pipe completion wait on unmatched DataRegions
and add IT (#18523)
add 89d4fbbcd9c Add consensus subscription progress observability (#18521)
add 0edcf5ff005 Merge branch 'master' of https://github.com/apache/iotdb
into air-gap-udp-transport
No new revisions were added by this update.
Summary of changes:
THREAT_MODEL.md | 41 +-
dependencies.json | 17 +-
example/pipe-opc-ua-sink/pom.xml | 4 +-
.../java/org/apache/iotdb/opcua/ClientExample.java | 4 +-
.../apache/iotdb/opcua/ClientExampleRunner.java | 41 +-
.../java/org/apache/iotdb/opcua/ClientTest.java | 54 +-
.../ConsensusSubscriptionWalFileAnalyzer.java | 5 +-
.../iotdb/ConsensusSubscriptionSessionExample.java | 2 +-
...sensusTableModelSubscriptionSessionExample.java | 2 +-
external-service-impl/rest/pom.xml | 4 +
.../java/org/apache/iotdb/rest/RestService.java | 4 +
.../rest/TrustedChannelAuditHandshakeListener.java | 75 ++
.../rest/protocol/filter/AuthorizationFilter.java | 7 +-
.../protocol/handler/AuthorizationHandler.java | 16 +-
.../rest/protocol/v1/impl/RestApiServiceImpl.java | 3 +-
.../rest/protocol/v2/impl/RestApiServiceImpl.java | 3 +-
.../TrustedChannelAuditHandshakeListenerTest.java | 96 +++
.../relational/LargeResultTableFunction.java | 136 ++++
.../org/apache/iotdb/it/env/cluster/EnvUtils.java | 9 +-
.../iotdb/it/env/cluster/env/AbstractEnv.java | 9 +-
.../IoTDBRemoveDataNodeNormalIT.java | 7 -
.../org/apache/iotdb/db/it/IoTDBLoadTsFileIT.java | 22 +
.../org/apache/iotdb/db/it/IoTDBShowQueriesIT.java | 155 ++++
.../manual/enhanced/IoTDBPipeIdempotentIT.java | 7 +-
.../treemodel/auto/basic/IoTDBPipeAlterIT.java | 48 ++
.../treemodel/auto/basic/IoTDBPipeSourceIT.java | 60 ++
.../auto/enhanced/IoTDBPipeAutoConflictIT.java | 5 +
.../auto/enhanced/IoTDBPipeAutoDropIT.java | 107 +++
.../auto/enhanced/IoTDBPipeSinkCompressionIT.java | 4 +-
.../manual/IoTDBPipeManualConflictIT.java | 70 +-
.../treemodel/manual/IoTDBPipePermissionIT.java | 147 +++-
.../treemodel/manual/IoTDBPipeWriteBackSinkIT.java | 24 +-
.../single/IoTDBLegacyPipeReceiverSecurityIT.java | 219 ------
.../iotdb/pipe/it/single/IoTDBPipeOPCUAIT.java | 33 +-
.../it/single/IoTDBPipeOperationDiagnosticsIT.java | 395 +++++++++++
.../iotdb/pipe/it/single/IoTDBPipeReceiverIT.java | 631 +++++++++++++++++
.../db/it/udf/IoTDBUserDefinedTableFunctionIT.java | 80 +++
.../it/query/recent/IoTDBTableAggregationIT.java | 564 ++++++++++++++-
.../query/recent/copyto/IoTDBCopyToTsFileIT.java | 38 +-
.../relational/it/schema/IoTDBDatabaseIT.java | 130 +++-
.../relational/it/schema/IoTDBTableAuthHAIT.java | 670 ++++++++++++++++++
.../iotdb/relational/it/schema/IoTDBTableIT.java | 125 +++-
.../local/ConsensusSubscriptionITSupport.java | 2 +-
.../ConsensusSubscriptionTableITSupport.java | 2 +-
...ConsensusSubscriptionColumnFilterClusterIT.java | 2 +-
...ensusSubscriptionConsumerDisconnectTableIT.java | 298 ++++++++
.../IoTDBSubscriptionColumnFilterIT.java | 5 +-
.../tablemodel/IoTDBSubscriptionIsolationIT.java | 161 ++---
.../tablemodel/IoTDBSubscriptionPermissionIT.java | 2 +-
.../IoTDBAllTsDatasetPullConsumerIT.java | 2 +-
.../IoTDBAllTsTsfilePullConsumerIT.java | 2 +-
.../IoTDBPathDeviceDataSetPullConsumerIT.java | 2 +-
.../IoTDBPathDeviceTsfilePullConsumerIT.java | 2 +-
.../IoTDBTimeTsDatasetPullConsumerIT.java | 2 +-
.../IoTDBTimeTsTsfilePullConsumerIT.java | 2 +-
.../IoTDBLooseAllTsDatasetPushConsumerIT.java | 4 +-
.../IoTDBLooseAllTsfilePushConsumerIT.java | 4 +-
.../IoTDBPathLooseDeviceTsfilePushConsumerIT.java | 2 +-
.../IoTDBPathLooseTsDatasetPushConsumerIT.java | 2 +-
.../IoTDBPathLooseTsfilePushConsumerIT.java | 2 +-
.../IoTDBPathTsLooseDatasetPushConsumerIT.java | 2 +-
.../IoTDBTimeLooseTsDatasetPushConsumerIT.java | 4 +-
.../IoTDBTimeLooseTsTsfilePushConsumerIT.java | 4 +-
.../IoTDBTimeLooseTsfilePushConsumerIT.java | 2 +-
.../IoTDBTimeTsLooseDatasetPushConsumerIT.java | 4 +-
iotdb-client/client-cpp/examples/README.md | 4 +-
iotdb-client/client-cpp/examples/README_zh.md | 4 +-
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 3 +
.../subscription/i18n/SubscriptionMessages.java | 2 +-
.../subscription/i18n/SubscriptionMessages.java | 2 +-
.../iotdb/rpc/subscription/config/TopicConfig.java | 51 +-
.../rpc/subscription/config/TopicConstant.java | 19 +-
.../base/AbstractSubscriptionConsumer.java | 26 +-
.../base/AbstractSubscriptionProviders.java | 8 +
.../rpc/subscription/config/TopicConfigTest.java | 57 ++
.../SubscriptionConsumerMultiProviderPollTest.java | 281 ++++++++
.../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 | 1 +
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 5 +-
.../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4 | 4 +
.../org/apache/iotdb/calc/i18n/CalcMessages.java | 60 ++
.../org/apache/iotdb/calc/i18n/CalcMessages.java | 60 ++
.../process/function/TableFunctionOperator.java | 51 +-
.../process/function/partition/PartitionCache.java | 2 +-
.../relational/aggregation/AccumulatorFactory.java | 141 +++-
.../rate/AbstractGroupedDeltaAccumulator.java | 138 ++++
.../rate/AbstractGroupedIncreaseAccumulator.java | 147 ++++
.../rate/AbstractGroupedIrateAccumulator.java | 83 +++
.../rate/AbstractGroupedRateAccumulator.java | 150 ++++
.../grouped/rate/GroupedNaiveDeltaAccumulator.java | 141 ++++
.../rate/GroupedNaiveIncreaseAccumulator.java | 151 ++++
.../grouped/rate/GroupedNaiveIrateAccumulator.java | 120 ++++
.../grouped/rate/GroupedNaiveRateAccumulator.java | 148 ++++
.../rate/GroupedOrderedDeltaAccumulator.java | 159 +++++
.../rate/GroupedOrderedIncreaseAccumulator.java | 167 +++++
.../rate/GroupedOrderedIrateAccumulator.java | 143 ++++
.../rate/GroupedOrderedRateAccumulator.java | 164 +++++
.../grouped/rate/TimeValueBufferBigArray.java | 75 ++
.../rate/AbstractDeltaTableAccumulator.java | 109 +++
.../rate/AbstractIncreaseTableAccumulator.java | 118 ++++
.../rate/AbstractIrateTableAccumulator.java | 78 +++
.../rate/AbstractRateTableAccumulator.java | 121 ++++
.../aggregation/rate/ExtrapolationUtil.java | 139 ++++
.../aggregation/rate/NaiveDeltaAccumulator.java | 155 ++++
.../aggregation/rate/NaiveIncreaseAccumulator.java | 171 +++++
.../aggregation/rate/NaiveIrateAccumulator.java | 143 ++++
.../aggregation/rate/NaiveRateAccumulator.java | 163 +++++
.../aggregation/rate/OrderedDeltaAccumulator.java | 143 ++++
.../rate/OrderedIncreaseAccumulator.java | 150 ++++
.../aggregation/rate/OrderedIrateAccumulator.java | 133 ++++
.../aggregation/rate/OrderedRateAccumulator.java | 147 ++++
.../rate/RateFunctionIntermediateStateCodec.java | 201 ++++++
.../aggregation/rate/RateFunctionType.java} | 37 +-
.../aggregation/rate/RateFunctionValidation.java | 119 ++++
.../aggregation/rate/TimeValueBuffer.java | 228 ++++++
.../calc/plan/planner/TableOperatorGenerator.java | 4 +
.../planner/memory/MemoryReservationManager.java | 6 +
.../planner/memory/PipelineMemoryEstimator.java | 4 +-
.../datastructure/SerializableList.java | 28 +-
.../iotdb/calc/utils/constant/SqlConstant.java | 4 +
.../rate/GroupedRateAccumulatorMemoryTest.java | 96 +++
.../aggregation/rate/ExtrapolationUtilTest.java | 65 ++
.../rate/RateAccumulatorFactoryTest.java | 181 +++++
.../RateFunctionIntermediateStateCodecTest.java | 157 +++++
.../iotdb/confignode/i18n/ConfigNodeMessages.java | 17 +-
.../iotdb/confignode/i18n/ManagerMessages.java | 5 +-
.../iotdb/confignode/i18n/ProcedureMessages.java | 23 +-
.../iotdb/confignode/i18n/ConfigNodeMessages.java | 19 +-
.../iotdb/confignode/i18n/ManagerMessages.java | 5 +-
.../iotdb/confignode/i18n/ProcedureMessages.java | 23 +-
.../client/async/CnToDnAsyncRequestType.java | 4 +
.../CnToDnInternalServiceAsyncRequestManager.java | 11 +
.../heartbeat/DataNodeHeartbeatHandler.java | 4 +-
.../write/subscription/topic/DropTopicPlan.java | 31 +-
.../response/pipe/task/PipeTableResp.java | 1 +
.../iotdb/confignode/manager/ConfigManager.java | 115 ++-
.../iotdb/confignode/manager/ProcedureManager.java | 61 +-
.../manager/partition/PartitionManager.java | 334 +++++----
.../pipe/agent/task/PipeConfigNodeSubtask.java | 8 +
.../pipe/agent/task/PipeConfigNodeTaskAgent.java | 17 +-
.../runtime/PipeRuntimeCoordinator.java | 10 +-
.../runtime/heartbeat/PipeHeartbeat.java | 75 +-
.../runtime/heartbeat/PipeHeartbeatParser.java | 132 +++-
.../runtime/heartbeat/PipeHeartbeatScheduler.java | 7 +-
.../pipe/coordinator/task/PipeTaskCoordinator.java | 24 +
.../receiver/protocol/IoTDBConfigNodeReceiver.java | 21 +-
.../manager/schema/ClusterSchemaManager.java | 83 ++-
.../subscription/SubscriptionCoordinator.java | 127 +++-
.../runtime/SubscriptionRuntimeCoordinator.java | 2 +-
.../confignode/persistence/ProcedureInfo.java | 40 +-
.../confignode/persistence/node/NodeInfo.java | 3 +-
.../persistence/partition/PartitionInfo.java | 32 +-
.../confignode/persistence/pipe/PipeTaskInfo.java | 15 +-
.../persistence/schema/ClusterSchemaInfo.java | 23 +-
.../confignode/persistence/schema/ConfigMTree.java | 5 +
.../persistence/schema/TemplatePreSetTable.java | 3 +-
.../persistence/schema/TemplateTable.java | 3 +-
.../persistence/subscription/SubscriptionInfo.java | 216 ++++--
.../procedure/env/ConfigNodeProcedureEnv.java | 45 ++
.../impl/pipe/AbstractOperatePipeProcedureV2.java | 5 +-
.../impl/pipe/task/AlterPipeProcedureV2.java | 96 ++-
.../impl/region/CreateRegionGroupsProcedure.java | 44 +-
.../impl/region/RemoveRegionGroupProcedure.java | 389 -----------
.../impl/schema/DeleteDatabaseProcedure.java | 111 ++-
.../impl/schema/table/CreateTableProcedure.java | 4 +
.../table/view/CreateTableViewProcedure.java | 9 +
.../SubscriptionHandleLeaderChangeProcedure.java | 2 +-
.../subscription/CreateSubscriptionProcedure.java | 5 +-
.../subscription/DropSubscriptionProcedure.java | 5 +-
.../subscription/topic/AlterTopicProcedure.java | 70 +-
.../subscription/topic/CreateTopicProcedure.java | 6 +-
.../subscription/topic/DropTopicProcedure.java | 41 +-
.../impl/sync/AuthOperationProcedure.java | 86 ++-
.../state/schema/DeleteDatabaseState.java | 5 +-
.../procedure/store/ProcedureFactory.java | 13 +-
.../confignode/procedure/store/ProcedureType.java | 2 +-
.../confignode/procedure/store/ProcedureWAL.java | 10 +-
.../service/thrift/ConfigNodeRPCService.java | 8 +-
.../writelog/io/SingleFileLogReader.java | 8 +-
.../request/ConfigPhysicalPlanSerDeTest.java | 8 +-
.../consensus/response/pipe/PipeTableRespTest.java | 19 +
.../manager/ClusterSchemaManagerTest.java | 52 ++
.../PartitionManagerRegionMaintainTest.java | 70 ++
.../runtime/heartbeat/PipeHeartbeatParserTest.java | 187 ++++-
.../subscription/SubscriptionCoordinatorTest.java | 155 ++++
.../confignode/persistence/PartitionInfoTest.java | 27 -
.../subscription/SubscriptionInfoTest.java | 66 ++
.../SubscriptionInfoTopicValidationTest.java | 203 +++++-
.../region/RemoveRegionGroupProcedureTest.java | 100 ---
.../CreateSubscriptionProcedureTest.java | 2 +-
.../DropSubscriptionProcedureTest.java | 2 +-
.../topic/AlterTopicProcedureTest.java | 82 ++-
.../subscription/topic/DropTopicProcedureTest.java | 19 +
.../common/request/IndexedConsensusRequest.java | 44 +-
.../iotdb/consensus/config/ConsensusConfig.java | 23 +-
.../apache/iotdb/consensus/iot/IoTConsensus.java | 9 +-
.../consensus/iot/IoTConsensusServerImpl.java | 35 +-
.../logdispatcher/IoTConsensusMemoryManager.java | 76 +-
.../consensus/iot/logdispatcher/LogDispatcher.java | 42 +-
.../consensus/iot/logdispatcher/SyncStatus.java | 20 +-
.../iot/service/IoTConsensusRPCService.java | 16 +-
.../subscription/SubscriptionQueueRegistry.java | 65 +-
.../SubscriptionWalRetentionCalculator.java | 12 +-
.../iotdb/consensus/pipe/IoTConsensusV2.java | 4 +-
.../pipe/service/IoTConsensusV2RPCService.java | 16 +-
.../ratis/ApplicationStateMachineProxy.java | 12 +-
.../ratis/RateLimitedGrpcLogAppender.java | 76 --
.../iotdb/consensus/ratis/RatisConsensus.java | 2 -
.../IoTConsensusMemoryManagerTest.java | 100 +++
.../iot/logdispatcher/LogDispatcherTest.java | 224 ++++++
.../iot/logdispatcher/SyncStatusTest.java | 64 ++
.../SubscriptionQueueRegistryTest.java | 108 +++
.../SubscriptionWalRetentionCalculatorTest.java | 101 +++
.../ratis/RateLimitedGrpcLogAppenderTest.java | 66 --
iotdb-core/datanode/pom.xml | 14 +-
.../apache/iotdb/db/i18n/DataNodeMiscMessages.java | 34 +-
.../apache/iotdb/db/i18n/DataNodePipeMessages.java | 43 +-
.../iotdb/db/i18n/DataNodeQueryMessages.java | 17 +
.../iotdb/db/i18n/DataNodeSchemaMessages.java | 3 +
.../iotdb/db/i18n/StorageEngineMessages.java | 10 +
.../apache/iotdb/db/i18n/DataNodeMiscMessages.java | 31 +-
.../apache/iotdb/db/i18n/DataNodePipeMessages.java | 40 +-
.../iotdb/db/i18n/DataNodeQueryMessages.java | 17 +
.../iotdb/db/i18n/DataNodeSchemaMessages.java | 3 +
.../iotdb/db/i18n/StorageEngineMessages.java | 8 +
.../org/apache/iotdb/db/audit/DNAuditLogger.java | 257 +++++++
.../db/audit/UserRoleModificationAuditContext.java | 184 +++++
.../org/apache/iotdb/db/auth/AuthorityChecker.java | 28 +-
.../apache/iotdb/db/auth/BasicAuthorityCache.java | 9 -
.../iotdb/db/auth/ClusterAuthorityFetcher.java | 68 +-
.../apache/iotdb/db/auth/IAuthorityFetcher.java | 2 -
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 96 ++-
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 16 +-
.../db/consensus/DataRegionConsensusImpl.java | 3 +
.../db/pipe/agent/task/PipeDataNodeTaskAgent.java | 225 ++++--
.../agent/task/builder/PipeDataNodeBuilder.java | 2 +-
.../task/builder/PipeDataNodeTaskBuilder.java | 56 +-
.../agent/task/connection/PipeEventCollector.java | 17 +-
.../subtask/processor/PipeProcessorSubtask.java | 97 ++-
.../PipeProcessorSubtaskExecutionGuard.java | 110 +++
.../processor/PipeProcessorSubtaskWorker.java | 129 +++-
.../PipeProcessorSubtaskWorkerManager.java | 15 +-
.../PipeProcessorSubtaskYieldException.java | 53 ++
.../agent/task/subtask/sink/PipeSinkSubtask.java | 8 +
.../deletion/persist/PageCacheDeletionBuffer.java | 22 +-
.../consensus/deletion/recover/DeletionReader.java | 7 +-
.../tsfile/PipeCompactedTsFileInsertionEvent.java | 1 +
.../common/tsfile/PipeTsFileInsertionEvent.java | 164 ++++-
.../tsfile/parser/TsFileInsertionEventParser.java | 44 +-
.../TsFileInsertionEventParserMemoryBlock.java} | 29 +-
.../TsFileInsertionEventParserMemoryManager.java | 75 ++
.../parser/TsFileInsertionEventParserProvider.java | 62 ++
.../query/TsFileInsertionEventQueryParser.java | 69 +-
...ileInsertionEventQueryParserTabletIterator.java | 10 +-
.../scan/TsFileInsertionEventScanParser.java | 301 +++++---
.../table/TsFileInsertionEventTableParser.java | 112 ++-
...ileInsertionEventTableParserTabletIterator.java | 150 ++--
.../tsfile/parser/util/ModsOperationUtil.java | 17 +-
.../processor/aggregate/AggregateProcessor.java | 16 +-
.../twostage/plugin/TwoStageCountProcessor.java | 29 +-
.../protocol/airgap/IoTDBAirGapReceiver.java | 54 +-
.../iotconsensusv2/IoTConsensusV2Receiver.java | 6 +-
.../protocol/legacy/loader/TsFileLoader.java | 2 +-
.../protocol/thrift/IoTDBDataNodeReceiver.java | 206 +++++-
...aNodeHardlinkOrCopiedFileDirStartupCleaner.java | 4 +-
.../db/pipe/resource/memory/PipeMemoryManager.java | 57 +-
.../batch/PipeTabletEventTsFileBatch.java | 3 +-
.../request/PipeTransferTsFileSealWithModReq.java | 263 ++++++-
.../protocol/airgap/IoTDBDataRegionAirGapSink.java | 42 +-
.../iotconsensusv2/IoTConsensusV2SyncSink.java | 21 +-
.../db/pipe/sink/protocol/opcua/OpcUaSink.java | 171 ++++-
.../sink/protocol/opcua/client/ClientRunner.java | 46 +-
.../protocol/opcua/client/IoTDBOpcUaClient.java | 297 ++++++--
.../sink/protocol/opcua/server/OpcUaNameSpace.java | 99 ++-
.../protocol/opcua/server/OpcUaServerBuilder.java | 246 +++----
.../thrift/async/IoTDBDataRegionAsyncSink.java | 68 +-
.../async/handler/PipeTransferTsFileHandler.java | 51 +-
.../thrift/sync/IoTDBDataRegionSyncSink.java | 41 +-
.../sink/protocol/writeback/WriteBackSink.java | 4 +-
.../util/builder/PipeTableModelTsFileBuilder.java | 9 +-
.../builder/PipeTableModelTsFileBuilderV2.java | 8 +-
.../util/builder/PipeTreeModelTsFileBuilder.java | 6 +-
.../util/builder/PipeTreeModelTsFileBuilderV2.java | 5 +-
.../pipe/sink/util/builder/PipeTsFileBuilder.java | 20 +-
.../dataregion/DataRegionListeningFilter.java | 18 +-
.../source/dataregion/IoTDBDataRegionSource.java | 25 +-
...istoricalDataRegionTsFileAndDeletionSource.java | 50 +-
.../realtime/PipeRealtimeDataRegionSource.java | 9 +
.../realtime/assigner/PipeDataRegionAssigner.java | 1 +
.../db/protocol/session/RestClientSession.java | 6 +-
.../protocol/thrift/impl/ClientRPCServiceImpl.java | 16 +-
.../impl/DataNodeInternalRPCServiceImpl.java | 134 +++-
.../thrift/impl/DataNodeRegionManager.java | 18 +-
.../thrift/impl/PushMultiPipeMetaHelper.java | 36 +-
.../common/header/DatasetHeaderFactory.java | 4 +
.../queryengine/execution/driver/DataDriver.java | 20 +-
.../execution/exchange/MPPDataExchangeManager.java | 54 +-
.../execution/exchange/MPPDataExchangeService.java | 7 +-
.../execution/exchange/sink/ShuffleSinkHandle.java | 121 ++--
.../execution/exchange/sink/SinkChannel.java | 24 +-
.../execution/exchange/source/SourceHandle.java | 39 +-
.../fragment/FragmentInstanceContext.java | 51 +-
.../fragment/FragmentInstanceManager.java | 19 +-
.../execution/fragment/QueryContext.java | 11 +
.../process/copyto/TableCopyToOperator.java | 27 +-
.../process/copyto/tsfile/CopyToTsFileOptions.java | 13 +-
.../copyto/tsfile/TsFileFormatCopyToWriter.java | 26 +-
.../InformationSchemaContentSupplierFactory.java | 9 +
.../iotdb/db/queryengine/plan/Coordinator.java | 77 +-
.../plan/analyze/ClusterPartitionFetcher.java | 4 +
.../plan/analyze/IPartitionFetcher.java | 2 +
.../analyze/cache/partition/PartitionCache.java | 81 ++-
.../plan/analyze/load/LoadTsFileAnalyzer.java | 54 +-
.../load/TreeSchemaAutoCreatorAndVerifier.java | 1 +
.../plan/analyze/schema/ISchemaFetcher.java | 19 +
.../plan/analyze/schema/SchemaValidator.java | 34 +-
.../queryengine/plan/execution/QueryExecution.java | 4 +
.../execution/config/TableConfigTaskVisitor.java | 84 ++-
.../execution/config/TreeConfigTaskVisitor.java | 37 +-
.../config/executor/ClusterConfigTaskExecutor.java | 21 +-
.../config/metadata/DatabaseSchemaTask.java | 3 +
.../metadata/relational/AbstractDatabaseTask.java | 1 +
.../relational/RelationalAuthorizerTask.java | 9 +-
.../metadata/relational/ShowCreateTableTask.java | 8 +-
.../config/metadata/relational/ShowDBTask.java | 1 +
.../metadata/relational/ShowTablesDetailsTask.java | 3 +
.../plan/execution/config/sys/AuthorizerTask.java | 11 +-
.../execution/config/sys/pipe/ShowPipeTask.java | 9 +
.../sys/subscription/ShowSubscriptionsTask.java | 50 ++
.../db/queryengine/plan/parser/ASTVisitor.java | 11 +-
.../plan/planner/LocalExecutionPlanContext.java | 2 +-
.../plan/planner/LocalExecutionPlanner.java | 2 +-
.../plan/planner/OperatorTreeGenerator.java | 2 +-
.../ConsumeAllChildrenPipelineMemoryEstimator.java | 1 +
...umeChildrenOneByOnePipelineMemoryEstimator.java | 1 +
.../memory/FakedMemoryReservationManager.java | 3 +
.../NotThreadSafeMemoryReservationManager.java | 16 +-
.../memory/PipelineMemoryEstimatorFactory.java | 1 +
.../memory/ThreadSafeMemoryReservationManager.java | 5 +
.../node/write/RelationalInsertTabletNode.java | 4 +
.../plan/relational/analyzer/Analyzer.java | 2 +-
.../read_tsfile/ExternalTsFileQueryResource.java | 4 +-
.../relational/metadata/TableMetadataImpl.java | 51 ++
.../fetcher/cache/TableDeviceSchemaCache.java | 38 +-
.../cache/TreeDeviceSchemaCacheManager.java | 9 +
.../distribute/TableDistributedPlanGenerator.java | 74 +-
.../PushAggregationIntoTableScan.java | 18 +
.../relational/security/AccessControlImpl.java | 22 +-
.../security/TreeAccessCheckVisitor.java | 18 +-
.../plan/relational/sql/ast/LoadTsFile.java | 32 +-
.../plan/relational/sql/ast/ShowSubscriptions.java | 16 +-
.../plan/relational/sql/parser/AstBuilder.java | 36 +-
.../relational/sql/util/DataNodeSqlFormatter.java | 8 +-
.../plan/scheduler/load/LoadTsFileScheduler.java | 9 +-
.../plan/statement/crud/LoadTsFileStatement.java | 93 ++-
.../metadata/DatabaseSchemaStatement.java | 15 +
.../statement/metadata/ShowDatabaseStatement.java | 1 +
.../subscription/ShowSubscriptionsStatement.java | 9 +
.../apache/iotdb/db/schemaengine/SchemaEngine.java | 33 +-
.../schemaengine/lease/MetadataLeaseManager.java | 4 +-
.../schemaregion/logfile/SchemaLogReader.java | 14 +-
.../schemaregion/logfile/SchemaLogWriter.java | 28 +-
.../mtree/impl/pbtree/schemafile/SchemaFile.java | 21 +-
.../pbtree/schemafile/log/SchemaFileLogReader.java | 3 +-
.../pbtree/schemafile/pagemgr/PageIOChannel.java | 12 +-
.../schemaregion/mtree/traverser/Traverser.java | 6 +
.../schemaengine/schemaregion/tag/TagManager.java | 4 +-
.../schemaregion/utils/ResourceByPathUtils.java | 339 ++++++---
.../db/schemaengine/table/DataNodeTableCache.java | 21 +
.../schemaengine/table/InformationSchemaUtils.java | 4 +-
.../java/org/apache/iotdb/db/service/DataNode.java | 5 +-
.../db/service/DataNodeInternalRPCService.java | 8 +-
.../iotdb/db/service/ExternalRPCService.java | 14 +-
.../iotdb/db/service/RegionMigrateService.java | 12 +-
.../iotdb/db/service/metrics/WritingMetrics.java | 34 +-
.../iotdb/db/storageengine/StorageEngine.java | 7 +-
.../db/storageengine/dataregion/DataRegion.java | 2 +-
.../dataregion/flush/CompressionRatio.java | 5 +-
.../memtable/AbstractWritableMemChunk.java | 26 +-
.../memtable/AlignedReadOnlyMemChunk.java | 4 +-
.../memtable/AlignedWritableMemChunk.java | 182 +++++
.../dataregion/memtable/ReadOnlyMemChunk.java | 4 +-
.../dataregion/memtable/TsFileProcessor.java | 38 +-
.../modification/v1/ModificationFileV1.java | 4 +-
.../v1/io/LocalTextModificationAccessor.java | 37 +-
.../dataregion/tsfile/TsFileResource.java | 2 +-
.../FileTimeIndexCacheWriter.java | 30 +-
.../dataregion/wal/buffer/WALBuffer.java | 34 +-
.../storageengine/dataregion/wal/io/LogWriter.java | 12 +-
.../storageengine/dataregion/wal/node/WALNode.java | 110 ++-
.../file/AbstractTsFileRecoverPerformer.java | 2 +-
.../load/active/ActiveLoadDirScanner.java | 33 +-
.../load/active/ActiveLoadPathHelper.java | 103 +++
.../load/active/ActiveLoadPendingQueue.java | 26 +-
.../load/active/ActiveLoadTsFileLoader.java | 86 ++-
.../load/config/LoadTsFileConfigurator.java | 23 +
...leStatementDataTypeConvertExecutionVisitor.java | 168 +++--
...eeStatementDataTypeConvertExecutionVisitor.java | 300 +++++---
.../converter/LoadTreeTsFileTabletIterator.java | 37 +-
.../converter/LoadTsFileDataTypeConverter.java | 2 +-
.../converter/PipeTsFileConversionTaskManager.java | 543 ++++++++++++++
.../load/memory/LoadTsFileParserMemoryManager.java | 120 ++++
.../load/splitter/TsFileSplitter.java | 4 +-
.../iotdb/db/storageengine/load/util/LoadUtil.java | 131 +++-
.../rescon/disk/DirectoryChecker.java | 36 +-
.../agent/SubscriptionBrokerAgent.java | 95 ++-
.../agent/SubscriptionConsumerAgent.java | 22 +-
.../agent/SubscriptionReceiverAgent.java | 253 ++++++-
.../subscription/agent/SubscriptionTopicAgent.java | 188 ++++-
.../broker/ConsensusSubscriptionBroker.java | 65 +-
.../subscription/broker/ISubscriptionBroker.java | 8 +
.../db/subscription/broker/SubscriptionBroker.java | 35 +-
.../broker/SubscriptionPrefetchingQueue.java | 42 +-
.../consensus/ConsensusLogToTabletConverter.java | 2 +-
.../consensus/ConsensusPrefetchingQueue.java | 568 +++++++++++++--
.../ConsensusSubscriptionCommitManager.java | 21 +-
.../ConsensusSubscriptionSetupHandler.java | 109 ++-
.../broker/consensus/ProgressWALIterator.java | 309 ++++++--
.../db/subscription/event/SubscriptionEvent.java | 5 +
.../batch/SubscriptionPipeTabletEventBatch.java | 9 +-
.../batch/SubscriptionPipeTsFileEventBatch.java | 8 +-
.../response/SubscriptionEventTabletResponse.java | 5 +-
.../response/SubscriptionEventTsFileResponse.java | 5 +-
...nsensusSubscriptionPrefetchingQueueMetrics.java | 98 +++
.../receiver/SubscriptionReceiver.java | 23 +
.../receiver/SubscriptionReceiverV1.java | 198 ++++--
.../task/subtask/SubscriptionSinkSubtask.java | 3 +-
.../subtask/SubscriptionSinkSubtaskLifeCycle.java | 7 +-
.../apache/iotdb/db/utils/ErrorHandlingUtils.java | 6 +-
.../org/apache/iotdb/db/utils/ObjectWriter.java | 31 +-
.../db/utils/datastructure/AlignedTVList.java | 777 ++++++++++++++++-----
.../db/utils/datastructure/BackAlignedTVList.java | 6 +-
.../db/utils/datastructure/QuickAlignedTVList.java | 6 +-
.../iotdb/db/utils/datastructure/TVList.java | 22 +-
.../db/utils/datastructure/TimAlignedTVList.java | 6 +-
.../apache/iotdb/db/utils/writelog/LogWriter.java | 25 +-
.../db/audit/DNAuditLoggerRevokeFailureTest.java | 183 +++++
.../DNAuditLoggerUserRoleModificationTest.java | 354 ++++++++++
.../db/auth/ClusterAuthorityFetcherLeaseTest.java | 24 +-
.../db/conf/ActiveLoadListeningDirConfigTest.java | 139 ++++
.../IoTDBDescriptorDefaultMemoryConfigTest.java | 52 ++
.../conf/IoTDBDescriptorSystemPropertiesTest.java | 65 ++
.../org/apache/iotdb/db/conf/PropertiesTest.java | 28 +
.../cache/TreeDeviceSchemaCacheManagerTest.java | 29 +
.../SchemaRegionTableDevicePerformanceTest.java | 335 +++++++++
.../pipe/agent/task/PipeDataNodeTaskAgentTest.java | 182 +++++
.../task/builder/PipeDataNodeTaskBuilderTest.java | 79 +++
.../PipeProcessorSubtaskExecutionGuardTest.java | 247 +++++++
.../processor/PipeProcessorSubtaskWorkerTest.java | 151 ++++
.../task/subtask/sink/PipeSinkSubtaskTest.java | 49 ++
.../pipe/event/TsFileInsertionEventParserTest.java | 221 +++++-
.../plugin/TwoStageCountProcessorTest.java | 55 ++
.../protocol/airgap/IoTDBAirGapReceiverTest.java | 69 ++
.../protocol/thrift/IoTDBDataNodeReceiverTest.java | 94 +++
.../memory/PipeMemoryManagerResizeTest.java | 61 +-
.../pipe/sink/PipeDataNodeThriftRequestTest.java | 67 ++
.../apache/iotdb/db/pipe/sink/PipeSinkTest.java | 2 +-
.../opcua/OpcUaSinkTsFileMetadataTest.java | 167 +++++
.../opcua/OpcUaSinkTsFilePerformanceTest.java | 415 +++++++++++
.../protocol/opcua/client/ClientRunnerTest.java | 2 +-
.../opcua/client/IoTDBOpcUaClientTest.java | 309 ++++++++
.../opcua/server/OpcUaNameSpaceMetadataTest.java | 167 +++++
.../opcua/server/OpcUaServerBuilderTest.java | 104 ++-
.../server/OpcUaTcpNoneCompatibilityTest.java | 132 ++++
.../db/pipe/source/IoTDBDataRegionSourceTest.java | 31 +
.../dataregion/DataRegionListeningFilterTest.java | 65 ++
...ricalDataRegionTsFileAndDeletionSourceTest.java | 36 +
.../DataNodeInternalRPCServiceImplDiskTest.java | 108 +++
...nternalRPCServiceImplPushMultiPipeMetaTest.java | 72 ++
...rnalRPCServiceImplSubscriptionDisabledTest.java | 64 ++
.../exchange/MPPDataExchangeManagerTest.java | 80 +++
.../execution/exchange/ShuffleSinkHandleTest.java | 96 +++
.../SinkChannelFailurePropagationTest.java | 364 ++++++++++
.../fragment/FragmentInstanceExecutionTest.java | 212 +++++-
.../fragment/FragmentInstanceManagerTest.java | 131 ++++
.../fragment/QueryModificationLoaderTest.java | 5 +
.../process/tvf/TableFunctionOperatorTest.java | 331 +++++++++
.../plan/analyze/cache/PartitionCacheTest.java | 31 +-
.../plan/analyze/load/LoadTsFileAnalyzerTest.java | 71 ++
.../config/metadata/DatabaseSchemaTaskTest.java | 57 ++
.../config/sys/pipe/ShowPipeTaskTest.java | 13 +-
.../ShowSubscriptionsTaskTest.java} | 68 +-
...est.java => RemoveNodeSingleNodeParseTest.java} | 27 +-
.../parser/ShowSubscriptionsStatementTest.java | 48 ++
.../LocalExecutionPlannerOperatorsMemoryTest.java | 46 ++
.../plan/planner/PipelineBuilderTest.java | 2 +-
.../metadata/fetcher/SchemaPredicateUtilTest.java | 125 ++++
.../fetcher/cache/TableDeviceSchemaCacheTest.java | 184 ++++-
.../planner/AggregationNodeRateSerdeTest.java | 92 +++
.../TableDistributedPlanGeneratorRateTest.java | 124 ++++
.../relational/security/AccessControlImplTest.java | 119 ++++
...atementTest.java => ShowSubscriptionsTest.java} | 39 +-
...java => RemoveNodeSingleNodeStatementTest.java} | 25 +-
.../relational/sql/parser/StreamKeywordTest.java | 127 ++++
.../statement/crud/LoadTsFileStatementTest.java | 72 ++
.../utils/ResourceByPathUtilsTest.java | 113 +++
.../DataNodeInternalRPCServiceImplTest.java | 99 +++
.../db/service/metrics/WritingMetricsTest.java | 87 +++
.../TsFileResourceProgressIndexTest.java | 9 +
.../compaction/CompactionWorkerTest.java | 58 +-
...ignedBitmapMemoryAccountingPerformanceTest.java | 214 +++++-
.../dataregion/memtable/MemTableFlushTaskTest.java | 64 ++
.../dataregion/memtable/TsFileProcessorTest.java | 130 +++-
.../wal/node/ConsensusReqReaderTest.java | 51 ++
.../wal/node/WALFileListCachePerformanceTest.java | 338 +++++++++
.../wal/node/WalDeleteOutdatedNewTest.java | 12 +
.../db/storageengine/load/TsFileSplitterTest.java | 91 +++
.../load/active/ActiveLoadDirScannerTest.java | 42 +-
.../load/active/ActiveLoadPathHelperTest.java | 60 +-
.../load/active/ActiveLoadTsFileLoaderTest.java | 14 +
...atementDataTypeConvertExecutionVisitorTest.java | 84 +++
.../LoadTsFileParserPipeMemoryIsolationTest.java | 66 ++
.../PipeTsFileConversionTaskManagerTest.java | 381 ++++++++++
.../load/memory/LoadTsFileMemoryManagerTest.java | 20 +
.../db/storageengine/load/util/LoadUtilTest.java | 100 ++-
.../rescon/disk/FolderManagerTest.java | 25 +
.../agent/SubscriptionReceiverAgentTest.java | 320 +++++++++
...onsensusSubscriptionBrokerPayloadLimitTest.java | 93 +++
.../SubscriptionBrokerAgentPayloadLimitTest.java | 104 +++
.../consensus/ConsensusPrefetchingQueueTest.java | 688 +++++++++++++++++-
.../ConsensusSubscriptionSetupHandlerTest.java | 75 ++
.../broker/consensus/ProgressWALIteratorTest.java | 334 ++++++++-
...susSubscriptionPrefetchingQueueMetricsTest.java | 20 +
.../receiver/SubscriptionReceiverV1Test.java | 94 ++-
.../AlignedBitmapRangeCheckPerformanceTest.java | 201 ++++++
.../AlignedSparseWritePerformanceTest.java | 314 +++++++++
.../db/utils/datastructure/AlignedTVListTest.java | 310 +++++++-
.../conf/iotdb-system.properties.template | 9 +
.../apache/iotdb/commons/i18n/CommonMessages.java | 2 +
.../apache/iotdb/commons/i18n/PipeMessages.java | 3 +
.../apache/iotdb/commons/i18n/UtilMessages.java | 2 +
.../apache/iotdb/commons/i18n/CommonMessages.java | 2 +
.../apache/iotdb/commons/i18n/PipeMessages.java | 3 +
.../apache/iotdb/commons/i18n/UtilMessages.java | 2 +
.../iotdb/commons/audit/AbstractAuditLogger.java | 75 ++
.../apache/iotdb/commons/audit/AuditEventType.java | 3 +-
.../audit/TrustedChannelFailureHandler.java} | 15 +-
.../commons/auth/role/LocalFileRoleAccessor.java | 5 +-
.../commons/auth/user/LocalFileUserAccessor.java | 3 +-
.../apache/iotdb/commons/conf/CommonConfig.java | 9 +-
.../commons/consensus/index/ProgressIndex.java | 10 +
.../consensus/index/impl/HybridProgressIndex.java | 25 +
.../consensus/index/impl/IoTProgressIndex.java | 9 +
.../consensus/index/impl/MetaProgressIndex.java | 9 +
.../consensus/index/impl/MinimumProgressIndex.java | 9 +
.../consensus/index/impl/RecoverProgressIndex.java | 9 +
.../consensus/index/impl/SimpleProgressIndex.java | 9 +
.../consensus/index/impl/StateProgressIndex.java | 9 +
.../index/impl/TimePartitionProgressIndex.java | 9 +
.../index/impl/TimeWindowStateProgressIndex.java | 11 +-
.../apache/iotdb/commons/disk/FolderManager.java | 14 +
.../commons/disk/strategy/DirectoryStrategy.java | 18 +-
.../pipe/PipeRuntimeSinkResourceException.java | 51 ++
...RuntimeSinkRetryTimesConfigurableException.java | 6 +
.../commons/executable/ExecutableManager.java | 14 +-
.../commons/file/SystemPropertiesHandler.java | 8 +-
.../iotdb/commons/path/ExtendedPartialPath.java | 34 +-
.../apache/iotdb/commons/path/fa/IPatternFA.java | 8 +
.../iotdb/commons/path/fa/nfa/SimpleNFA.java | 102 ++-
.../pipe/agent/plugin/meta/PipePluginMeta.java | 13 +-
.../service/PipePluginExecutableManager.java | 60 +-
.../commons/pipe/agent/task/PipeTaskAgent.java | 10 +
.../agent/task/meta/PipeTemporaryMetaInAgent.java | 19 +-
.../task/meta/PipeTemporaryMetaInCoordinator.java | 99 ++-
.../task/subtask/PipeAbstractSinkSubtask.java | 23 +-
.../pipe/agent/task/subtask/PipeSubtask.java | 15 +-
.../iotdb/commons/pipe/config/PipeConfig.java | 1 +
.../pipe/config/constant/PipeSinkConstant.java | 7 +
.../pipe/config/constant/PipeSourceConstant.java | 5 +
.../pipe/config/constant/SystemConstant.java | 3 +
.../options/PipeInclusionOptions.java | 15 +
.../queue/serializer/PlainQueueSerializer.java | 32 +-
.../commons/pipe/receiver/IoTDBFileReceiver.java | 23 +-
.../pipe/receiver/PipeReceiverStatusHandler.java | 19 +-
.../pipe/resource/PipeRecentFailureCounter.java | 93 +++
.../pipe/resource/PipeResourceFailureType.java} | 21 +-
.../commons/pipe/resource/PipeStopStrategy.java | 76 ++
.../commons/pipe/sink/protocol/IoTDBSink.java | 31 +
.../pipe/source/IoTDBNonDataRegionSource.java | 45 +-
.../relational/planner/node/AggregationNode.java | 33 +-
.../schema/column/ColumnHeaderConstant.java | 54 +-
.../schema/filter/impl/DeviceFilterUtil.java | 261 ++++++-
.../apache/iotdb/commons/schema/table/Audit.java | 13 +
.../commons/schema/table/InformationSchema.java | 11 +
.../iotdb/commons/schema/table/TreeViewSchema.java | 2 +
.../apache/iotdb/commons/schema/table/TsTable.java | 26 +-
.../commons/schema/tree/AbstractTreeVisitor.java | 79 ++-
.../TrustedChannelAuditServerEventHandler.java | 152 ++++
.../iotdb/commons/service/metric/enums/Metric.java | 11 +
.../meta/consumer/ConsumerGroupMeta.java | 28 +
.../meta/consumer/ConsumerGroupMetaKeeper.java | 20 +
.../subscription/meta/consumer/ConsumerMeta.java | 4 +
.../consumer/SubscriptionProgressSnapshot.java | 278 ++++++++
.../subscription/meta/topic/TopicMetaKeeper.java | 42 +-
.../TableBuiltinAggregationFunction.java | 11 +-
.../org/apache/iotdb/commons/utils/FileUtils.java | 33 +-
.../org/apache/iotdb/commons/utils/IOUtils.java | 2 +-
.../apache/iotdb/commons/utils/StatusUtils.java | 3 +
.../commons/audit/AbstractAuditLoggerTest.java | 152 ++++
.../iotdb/commons/conf/CommonConfigTest.java} | 32 +-
.../commons/consensus/index/ProgressIndexTest.java | 82 +++
.../service/PipePluginExecutableManagerTest.java | 111 +++
.../agent/task/meta/PipeTemporaryMetaTest.java | 32 +
.../pipe/plugin/meta/PipePluginMetaTest.java | 17 +
.../resource/PipeRecentFailureCounterTest.java | 48 ++
.../pipe/resource/PipeStopStrategyTest.java | 84 +++
.../pipe/source/IoTDBNonDataRegionSourceTest.java | 172 +++++
.../schema/filter/impl/DeviceFilterUtilTest.java | 385 ++++++++++
.../iotdb/commons/schema/table/AuditTest.java} | 29 +-
.../TrustedChannelAuditServerEventHandlerTest.java | 220 ++++++
.../consumer/ConsumerGroupDeSerTest.java | 25 +
.../consumer/SubscriptionProgressSnapshotTest.java | 78 +++
.../subscription/topic/TopicMetaKeeperTest.java | 120 ++++
.../apache/iotdb/commons/utils/FileUtilsTest.java | 10 +
.../db/relational/grammar/sql/RelationalSql.g4 | 8 +-
.../thrift-commons/src/main/thrift/common.thrift | 14 +-
.../src/main/thrift/confignode.thrift | 28 +
.../src/main/thrift/datanode.thrift | 5 +
pom.xml | 84 +--
scripts/sbin/windows/start-cli.bat | 1 +
src/main/forbidden-apis/secure-erase | 23 +
620 files changed, 37149 insertions(+), 4479 deletions(-)
create mode 100644
external-service-impl/rest/src/main/java/org/apache/iotdb/rest/TrustedChannelAuditHandshakeListener.java
create mode 100644
external-service-impl/rest/src/test/java/org/apache/iotdb/rest/TrustedChannelAuditHandshakeListenerTest.java
create mode 100644
integration-test/src/main/java/org/apache/iotdb/db/query/udf/example/relational/LargeResultTableFunction.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBShowQueriesIT.java
delete mode 100644
integration-test/src/test/java/org/apache/iotdb/pipe/it/single/IoTDBLegacyPipeReceiverSecurityIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/pipe/it/single/IoTDBPipeOperationDiagnosticsIT.java
create 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/relational/it/schema/IoTDBTableAuthHAIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/subscription/it/consensus/local/tablemodel/IoTDBConsensusSubscriptionConsumerDisconnectTableIT.java
create mode 100644
iotdb-client/subscription/src/test/java/org/apache/iotdb/session/subscription/consumer/base/SubscriptionConsumerMultiProviderPollTest.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/AbstractGroupedDeltaAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/AbstractGroupedIncreaseAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/AbstractGroupedIrateAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/AbstractGroupedRateAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/GroupedNaiveDeltaAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/GroupedNaiveIncreaseAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/GroupedNaiveIrateAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/GroupedNaiveRateAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/GroupedOrderedDeltaAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/GroupedOrderedIncreaseAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/GroupedOrderedIrateAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/GroupedOrderedRateAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/TimeValueBufferBigArray.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/AbstractDeltaTableAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/AbstractIncreaseTableAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/AbstractIrateTableAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/AbstractRateTableAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/ExtrapolationUtil.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/NaiveDeltaAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/NaiveIncreaseAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/NaiveIrateAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/NaiveRateAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/OrderedDeltaAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/OrderedIncreaseAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/OrderedIrateAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/OrderedRateAccumulator.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/RateFunctionIntermediateStateCodec.java
rename
iotdb-core/{consensus/src/main/java/org/apache/iotdb/consensus/ratis/RateLimitedGrpcFactory.java
=>
calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/RateFunctionType.java}
(54%)
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/RateFunctionValidation.java
create mode 100644
iotdb-core/calc-commons/src/main/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/TimeValueBuffer.java
rename iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/queryengine =>
calc-commons/src/main/java/org/apache/iotdb/calc}/plan/planner/memory/PipelineMemoryEstimator.java
(95%)
create mode 100644
iotdb-core/calc-commons/src/test/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/grouped/rate/GroupedRateAccumulatorMemoryTest.java
create mode 100644
iotdb-core/calc-commons/src/test/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/ExtrapolationUtilTest.java
create mode 100644
iotdb-core/calc-commons/src/test/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/RateAccumulatorFactoryTest.java
create mode 100644
iotdb-core/calc-commons/src/test/java/org/apache/iotdb/calc/execution/operator/source/relational/aggregation/rate/RateFunctionIntermediateStateCodecTest.java
delete mode 100644
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/region/RemoveRegionGroupProcedure.java
create mode 100644
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/manager/partition/PartitionManagerRegionMaintainTest.java
create mode 100644
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/manager/subscription/SubscriptionCoordinatorTest.java
delete mode 100644
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/procedure/impl/region/RemoveRegionGroupProcedureTest.java
delete mode 100644
iotdb-core/consensus/src/main/java/org/apache/iotdb/consensus/ratis/RateLimitedGrpcLogAppender.java
create mode 100644
iotdb-core/consensus/src/test/java/org/apache/iotdb/consensus/iot/logdispatcher/LogDispatcherTest.java
create mode 100644
iotdb-core/consensus/src/test/java/org/apache/iotdb/consensus/iot/subscription/SubscriptionQueueRegistryTest.java
create mode 100644
iotdb-core/consensus/src/test/java/org/apache/iotdb/consensus/iot/subscription/SubscriptionWalRetentionCalculatorTest.java
delete mode 100644
iotdb-core/consensus/src/test/java/org/apache/iotdb/consensus/ratis/RateLimitedGrpcLogAppenderTest.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/audit/UserRoleModificationAuditContext.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/agent/task/subtask/processor/PipeProcessorSubtaskExecutionGuard.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/agent/task/subtask/processor/PipeProcessorSubtaskYieldException.java
copy
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/{utils/datastructure/QuickAlignedTVList.java
=> pipe/event/common/tsfile/parser/TsFileInsertionEventParserMemoryBlock.java}
(62%)
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/event/common/tsfile/parser/TsFileInsertionEventParserMemoryManager.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/load/converter/PipeTsFileConversionTaskManager.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/load/memory/LoadTsFileParserMemoryManager.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/audit/DNAuditLoggerRevokeFailureTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/audit/DNAuditLoggerUserRoleModificationTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/conf/ActiveLoadListeningDirConfigTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/conf/IoTDBDescriptorDefaultMemoryConfigTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/conf/IoTDBDescriptorSystemPropertiesTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/metadata/schemaRegion/SchemaRegionTableDevicePerformanceTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/agent/task/subtask/processor/PipeProcessorSubtaskExecutionGuardTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/agent/task/subtask/processor/PipeProcessorSubtaskWorkerTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/sink/protocol/opcua/OpcUaSinkTsFileMetadataTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/sink/protocol/opcua/OpcUaSinkTsFilePerformanceTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/sink/protocol/opcua/client/IoTDBOpcUaClientTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/sink/protocol/opcua/server/OpcUaNameSpaceMetadataTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/sink/protocol/opcua/server/OpcUaTcpNoneCompatibilityTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/source/dataregion/DataRegionListeningFilterTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/protocol/thrift/impl/DataNodeInternalRPCServiceImplDiskTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/protocol/thrift/impl/DataNodeInternalRPCServiceImplSubscriptionDisabledTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/exchange/SinkChannelFailurePropagationTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceManagerTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/DatabaseSchemaTaskTest.java
copy
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/execution/config/sys/{pipe/ShowPipeTaskTest.java
=> subscription/ShowSubscriptionsTaskTest.java} (52%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/parser/{RemoveDataNodeMultiNodeParseTest.java
=> RemoveNodeSingleNodeParseTest.java} (66%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/parser/ShowSubscriptionsStatementTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/fetcher/SchemaPredicateUtilTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/AggregationNodeRateSerdeTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/TableDistributedPlanGeneratorRateTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/security/AccessControlImplTest.java
copy
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/sql/{parser/RemoveDataNodeMultiNodeStatementTest.java
=> ShowSubscriptionsTest.java} (57%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/sql/parser/{RemoveDataNodeMultiNodeStatementTest.java
=> RemoveNodeSingleNodeStatementTest.java} (70%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/sql/parser/StreamKeywordTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/schemaengine/schemaregion/utils/ResourceByPathUtilsTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/service/metrics/WritingMetricsTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/wal/node/WALFileListCachePerformanceTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/load/converter/LoadTsFileParserPipeMemoryIsolationTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/load/converter/PipeTsFileConversionTaskManagerTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/subscription/agent/SubscriptionReceiverAgentTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/subscription/broker/ConsensusSubscriptionBrokerPayloadLimitTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/subscription/broker/SubscriptionBrokerAgentPayloadLimitTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/datastructure/AlignedBitmapRangeCheckPerformanceTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/utils/datastructure/AlignedSparseWritePerformanceTest.java
rename
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/procedure/state/RemoveRegionGroupState.java
=>
node-commons/src/main/java/org/apache/iotdb/commons/audit/TrustedChannelFailureHandler.java}
(69%)
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/exception/pipe/PipeRuntimeSinkResourceException.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/resource/PipeRecentFailureCounter.java
rename
iotdb-core/{consensus/src/main/java/org/apache/iotdb/consensus/ratis/RateLimitedGrpcRpcType.java
=>
node-commons/src/main/java/org/apache/iotdb/commons/pipe/resource/PipeResourceFailureType.java}
(66%)
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/resource/PipeStopStrategy.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/service/TrustedChannelAuditServerEventHandler.java
create mode 100644
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/subscription/meta/consumer/SubscriptionProgressSnapshot.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/audit/AbstractAuditLoggerTest.java
copy
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/utils/datastructure/BackAlignedTVList.java
=>
node-commons/src/test/java/org/apache/iotdb/commons/conf/CommonConfigTest.java}
(58%)
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/consensus/index/ProgressIndexTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/pipe/agent/plugin/service/PipePluginExecutableManagerTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/pipe/resource/PipeRecentFailureCounterTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/pipe/resource/PipeStopStrategyTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/pipe/source/IoTDBNonDataRegionSourceTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/schema/filter/impl/DeviceFilterUtilTest.java
copy
iotdb-core/{datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/memory/ConsumeAllChildrenPipelineMemoryEstimator.java
=>
node-commons/src/test/java/org/apache/iotdb/commons/schema/table/AuditTest.java}
(53%)
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/service/TrustedChannelAuditServerEventHandlerTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/subscription/meta/consumer/SubscriptionProgressSnapshotTest.java
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/subscription/topic/TopicMetaKeeperTest.java
create mode 100644 src/main/forbidden-apis/secure-erase