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

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


The following commit(s) were added to refs/heads/master by this push:
     new 6f0d325c69c Fix default data source lost when create migration job 
(#32735)
6f0d325c69c is described below

commit 6f0d325c69cf71b0943f5948cd4cb5f249fb8870
Author: Raigor <[email protected]>
AuthorDate: Fri Aug 30 18:40:30 2024 +0800

    Fix default data source lost when create migration job (#32735)
---
 .../datasource/creator/ShardingSpherePipelineDataSourceCreator.java    | 3 +++
 1 file changed, 3 insertions(+)

diff --git 
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/datasource/creator/ShardingSpherePipelineDataSourceCreator.java
 
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/datasource/creator/ShardingSpherePipelineDataSourceCreator.java
index 033a2e4af0d..a1abbc4a274 100644
--- 
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/datasource/creator/ShardingSpherePipelineDataSourceCreator.java
+++ 
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/datasource/creator/ShardingSpherePipelineDataSourceCreator.java
@@ -72,9 +72,12 @@ public final class ShardingSpherePipelineDataSourceCreator 
implements PipelineDa
     }
     
     private void updateSingleRuleConfiguration(final YamlRootConfiguration 
yamlRootConfig) {
+        Optional<YamlSingleRuleConfiguration> originalSingleRuleConfig =
+                
yamlRootConfig.getRules().stream().filter(YamlSingleRuleConfiguration.class::isInstance).map(YamlSingleRuleConfiguration.class::cast).findFirst();
         
yamlRootConfig.getRules().removeIf(YamlSingleRuleConfiguration.class::isInstance);
         YamlSingleRuleConfiguration singleRuleConfig = new 
YamlSingleRuleConfiguration();
         
singleRuleConfig.setTables(Collections.singletonList(SingleTableConstants.ALL_TABLES));
+        originalSingleRuleConfig.ifPresent(optional -> 
singleRuleConfig.setDefaultDataSource(optional.getDefaultDataSource()));
         yamlRootConfig.getRules().add(singleRuleConfig);
     }
     

Reply via email to