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

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


The following commit(s) were added to refs/heads/master by this push:
     new 942477843dc Pipe: Fixed the bug that the default 
"enable-send-tsfile-limit" is set to false for historical pipes split by full 
sync (#17264)
942477843dc is described below

commit 942477843dc25e46102d80ea72f42c04d244d3df
Author: Caideyipi <[email protected]>
AuthorDate: Fri Mar 6 11:35:50 2026 +0800

    Pipe: Fixed the bug that the default "enable-send-tsfile-limit" is set to 
false for historical pipes split by full sync (#17264)
    
    * may-comp
    
    * Avoid someone merge with name 'may-comp'
---
 .../db/pipe/agent/task/builder/PipeDataNodeTaskBuilder.java   |  3 ++-
 .../execution/config/executor/ClusterConfigTaskExecutor.java  | 11 ++++++++++-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/agent/task/builder/PipeDataNodeTaskBuilder.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/agent/task/builder/PipeDataNodeTaskBuilder.java
index f9609869b45..d66a4f14a79 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/agent/task/builder/PipeDataNodeTaskBuilder.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/agent/task/builder/PipeDataNodeTaskBuilder.java
@@ -213,7 +213,8 @@ public class PipeDataNodeTaskBuilder {
               PipeSinkConstant.CONNECTOR_ENABLE_SEND_TSFILE_LIMIT);
 
       if (enableSendTsFileLimit == null) {
-        
sinkParameters.addAttribute(PipeSinkConstant.SINK_ENABLE_SEND_TSFILE_LIMIT, 
"true");
+        sinkParameters.addAttribute(
+            PipeSinkConstant.SINK_ENABLE_SEND_TSFILE_LIMIT, 
Boolean.TRUE.toString());
         LOGGER.info(
             "PipeDataNodeTaskBuilder: When the realtime sync is enabled, we 
enable rate limiter in sending tsfile by default to reserve disk and network IO 
for realtime sending.");
       } else if (!enableSendTsFileLimit) {
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java
index 404990e124d..d28edddb2f9 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/executor/ClusterConfigTaskExecutor.java
@@ -2203,6 +2203,8 @@ public class ClusterConfigTaskExecutor implements 
IConfigTaskExecutor {
     // and history are true), the pipe is split into history-only and 
realtime–only modes.
     final PipeParameters sourcePipeParameters =
         new PipeParameters(createPipeStatement.getSourceAttributes());
+    final PipeParameters sinkPipeParameters =
+        new PipeParameters(createPipeStatement.getSinkAttributes());
     if (PipeConfig.getInstance().getPipeAutoSplitFullEnabled()
         && PipeDataNodeAgent.task().isFullSync(sourcePipeParameters)) {
       try (final ConfigNodeClient configNodeClient =
@@ -2260,7 +2262,14 @@ public class ClusterConfigTaskExecutor implements 
IConfigTaskExecutor {
                                     
PipeSourceConstant.EXTRACTOR_EXCLUSION_DEFAULT_VALUE)))
                         .getAttribute())
                 
.setProcessorAttributes(createPipeStatement.getProcessorAttributes())
-                
.setConnectorAttributes(createPipeStatement.getSinkAttributes());
+                .setConnectorAttributes(
+                    sinkPipeParameters
+                        .addOrReplaceEquivalentAttributesWithClone(
+                            new PipeParameters(
+                                Collections.singletonMap(
+                                    
PipeSinkConstant.SINK_ENABLE_SEND_TSFILE_LIMIT,
+                                    Boolean.TRUE.toString())))
+                        .getAttribute());
 
         final TSStatus historyTsStatus = 
configNodeClient.createPipe(historyReq);
         // If creation fails, immediately return with exception

Reply via email to