This is an automated email from the ASF dual-hosted git repository.
haonan pushed a change to branch speed_up_recover
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from b1a4c961a7f Merge branch 'master' of github.com:apache/iotdb into
speed_up_recover
add 4c0a073a436 Fixed concurrency bug in IoTConsensus Region migration
#13070
add c60a5079eed Bump jetty.version from 9.4.53.v20231009 to
9.4.55.v20240627 (#13073)
add ef5b1b42e59 Bump org.codehaus.mojo:exec-maven-plugin from 3.1.0 to
3.1.1 (#13075)
add 43e562a2ac1 Pipe/Subscription: Add 'Create If Not Exists' and 'Drop If
Exists' Support for Pipes, Plugins, and Topics (#12969)
add cceaebd5919 Pipe/Subscription: Prevent NPE when some pipe SQL
parameter values are null (#13069)
add 994a3808422 Bump com.nimbusds:nimbus-jose-jwt from 9.37.2 to 9.37.3
(#13072)
add 0a611a8c7c4 [fix] Change IoTConsensusService and PipeConsensusService
from async to sync (#13077)
add b9ed555a3aa Refactor TsFileValidationTool with abstracting the
sequential scan process (#13066)
add 2c10213db2f Improve robustness of removing peer step of region
migration (#13078)
add d8a200516c1 Pipe: Fix the class not found exception of OPC UA
connector (#13086)
add 83f8db0a8b3 Subscription: avoid incomplete resource release of
prefetching queue caused by restarting subscription pipe (#13079)
add b1bc66671bd Update out-dated profile name in readmes (#13092)
add 0733a499a0f Convert date to LocalDate in sortlist()
add 86ddd749cc0 Subscription: java client supports Create Topic If Not
Exists and Drop Topic If Exists (#13081)
add 97f9ef52942 PipePlugin/Subscription: The Drop PipePlugin operation
adds a check to see if there is a Topic that uses PipePlugin as a processor
(#13048)
add 08356308a86 Update multi-language-client CI with path rule (#13095)
add b2cf8047b85 Fix IoTConsensus log explosion when stoping one node #13101
add 900cbc3e817 Merge branch 'master' of github.com:apache/iotdb into
speed_up_recover
add 54d6a3ff395 finish compact logic
No new revisions were added by this update.
Summary of changes:
.github/workflows/multi-language-client.yml | 28 +-
README.md | 4 +-
README_ZH.md | 2 +-
.../IoTDBPipeConditionalOperationsIT.java | 228 +++++++++++
...eSingleEnvDemoIT.java => IoTDBPipeOPCUAIT.java} | 17 +-
.../it/local/IoTDBSubscriptionTopicIT.java | 178 +++++++++
.../api/customizer/parameter/PipeParameters.java | 25 +-
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 1 +
.../java/org/apache/iotdb/session/Session.java | 9 +-
.../session/subscription/SubscriptionSession.java | 94 ++++-
.../java/org/apache/iotdb/session/TabletTest.java | 75 +++-
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 14 +-
.../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4 | 9 +
.../iotdb/confignode/manager/ConfigManager.java | 15 +-
.../apache/iotdb/confignode/manager/IManager.java | 11 +-
.../iotdb/confignode/manager/ProcedureManager.java | 13 +-
.../coordinator/plugin/PipePluginCoordinator.java | 12 +-
.../pipe/coordinator/task/PipeTaskCoordinator.java | 11 +-
.../subscription/SubscriptionCoordinator.java | 18 +-
.../persistence/pipe/PipePluginInfo.java | 26 +-
.../confignode/persistence/pipe/PipeTaskInfo.java | 26 +-
.../persistence/subscription/SubscriptionInfo.java | 43 ++-
.../impl/pipe/AbstractOperatePipeProcedureV2.java | 6 +-
.../pipe/plugin/CreatePipePluginProcedure.java | 28 +-
.../impl/pipe/plugin/DropPipePluginProcedure.java | 28 +-
.../runtime/PipeHandleLeaderChangeProcedure.java | 2 +-
.../runtime/PipeHandleMetaChangeProcedure.java | 2 +-
.../impl/pipe/runtime/PipeMetaSyncProcedure.java | 2 +-
.../impl/pipe/task/AlterPipeProcedureV2.java | 6 +-
.../impl/pipe/task/CreatePipeProcedureV2.java | 15 +-
.../impl/pipe/task/DropPipeProcedureV2.java | 2 +-
.../impl/pipe/task/StartPipeProcedureV2.java | 4 +-
.../impl/pipe/task/StopPipeProcedureV2.java | 2 +-
.../AbstractOperateSubscriptionProcedure.java | 15 +-
.../consumer/AlterConsumerGroupProcedure.java | 3 +-
.../runtime/ConsumerGroupMetaSyncProcedure.java | 3 +-
.../subscription/CreateSubscriptionProcedure.java | 3 +-
.../subscription/DropSubscriptionProcedure.java | 3 +-
.../subscription/topic/AlterTopicProcedure.java | 4 +-
.../subscription/topic/CreateTopicProcedure.java | 21 +-
.../subscription/topic/DropTopicProcedure.java | 3 +-
.../topic/runtime/TopicMetaSyncProcedure.java | 3 +-
.../thrift/ConfigNodeRPCServiceProcessor.java | 20 +-
.../iotdb/confignode/persistence/PipeInfoTest.java | 2 +-
.../pipe/plugin/CreatePipePluginProcedureTest.java | 2 +-
.../pipe/plugin/DropPipePluginProcedureTest.java | 2 +-
.../apache/iotdb/consensus/iot/IoTConsensus.java | 30 +-
.../consensus/iot/IoTConsensusServerImpl.java | 49 ++-
.../consensus/iot/logdispatcher/SyncStatus.java | 60 ++-
.../iot/service/IoTConsensusRPCService.java | 14 +-
.../service/IoTConsensusRPCServiceProcessor.java | 192 ++++------
.../apache/iotdb/consensus/pipe/PipeConsensus.java | 2 +-
.../pipe/service/PipeConsensusRPCService.java | 15 +-
.../service/PipeConsensusRPCServiceProcessor.java | 64 ++--
.../iotdb/db/protocol/client/ConfigNodeClient.java | 14 +
.../config/executor/ClusterConfigTaskExecutor.java | 37 +-
.../config/executor/IConfigTaskExecutor.java | 3 +-
.../config/metadata/DropPipePluginTask.java | 6 +-
.../db/queryengine/plan/parser/ASTVisitor.java | 20 +-
.../planner/plan/node/write/InsertTabletNode.java | 1 +
.../metadata/pipe/AlterPipeStatement.java | 9 +
.../metadata/pipe/CreatePipePluginStatement.java | 9 +-
.../metadata/pipe/CreatePipeStatement.java | 9 +
.../metadata/pipe/DropPipePluginStatement.java | 18 +-
.../statement/metadata/pipe/DropPipeStatement.java | 9 +
.../subscription/CreateTopicStatement.java | 10 +-
.../metadata/subscription/DropTopicStatement.java | 9 +
.../db/storageengine/dataregion/DataRegion.java | 6 +-
.../dataregion/tsfile/TsFileManager.java | 21 +-
.../timeindex/FileTimeIndexCacheRecorder.java | 86 +++--
.../FileTimeIndexCacheReader.java | 8 +-
.../FileTimeIndexCacheWriter.java | 17 +-
.../agent/SubscriptionBrokerAgent.java | 15 +-
.../agent/SubscriptionConsumerAgent.java | 4 +-
.../db/subscription/broker/SubscriptionBroker.java | 102 +++--
.../broker/SubscriptionPrefetchingQueue.java | 69 ++--
.../broker/SubscriptionPrefetchingTabletQueue.java | 6 +-
.../broker/SubscriptionPrefetchingTsFileQueue.java | 24 +-
.../SubscriptionConnectorSubtaskLifeCycle.java | 2 +-
.../iotdb/db/tools/utils/TsFileSequenceScan.java | 168 ++++++++
.../iotdb/db/tools/utils/TsFileValidationScan.java | 397 +++++++++++++++++++
.../db/tools/validate/TsFileValidationTool.java | 422 ++-------------------
.../node/write/InsertTabletNodeSerdeTest.java | 35 ++
.../compaction/AbstractCompactionTest.java | 4 +-
.../FastCrossCompactionPerformerTest.java | 4 +-
...eCompactionWithFastPerformerValidationTest.java | 2 +-
...actionWithReadPointPerformerValidationTest.java | 2 +-
.../iotdb/db/tools/TsFileValidationScanTest.java | 203 ++++++++++
.../iotdb/commons/pipe/event/EnrichedEvent.java | 19 +-
.../iotdb/commons/service/ThriftService.java | 15 +-
.../src/main/thrift/confignode.thrift | 21 +
pom.xml | 8 +-
92 files changed, 2343 insertions(+), 937 deletions(-)
create mode 100644
integration-test/src/test/java/org/apache/iotdb/pipe/it/autocreate/IoTDBPipeConditionalOperationsIT.java
copy
integration-test/src/test/java/org/apache/iotdb/pipe/it/single/{IoTDBPipeSingleEnvDemoIT.java
=> IoTDBPipeOPCUAIT.java} (74%)
create mode 100644
integration-test/src/test/java/org/apache/iotdb/subscription/it/local/IoTDBSubscriptionTopicIT.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/tools/utils/TsFileSequenceScan.java
create mode 100644
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/tools/utils/TsFileValidationScan.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/tools/TsFileValidationScanTest.java