You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2023/06/14 15:03:05 UTC
[shardingsphere] branch master updated: Fix new configuration subscriber (#26350)
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 ad3279cef4c Fix new configuration subscriber (#26350)
ad3279cef4c is described below
commit ad3279cef4ce4700dc59814d5943c9ac9fdbfe87
Author: ChenJiaHao <Pa...@163.com>
AuthorDate: Wed Jun 14 23:02:53 2023 +0800
Fix new configuration subscriber (#26350)
---
.../subscriber/EncryptConfigurationSubscriber.java | 5 ++---
.../encrypt/subscriber/EncryptorSubscriber.java | 2 --
.../mask/subscriber/MaskAlgorithmSubscriber.java | 2 --
.../mask/subscriber/MaskConfigurationSubscriber.java | 5 ++---
.../ReadwriteSplittingConfigurationSubscriber.java | 5 ++---
.../ReadwriteSplittingLoadBalanceSubscriber.java | 2 --
.../shadow/subscriber/ShadowAlgorithmSubscriber.java | 2 --
.../subscriber/ShadowConfigurationSubscriber.java | 5 ++---
.../shadow/subscriber/ShadowTableSubscriber.java | 2 --
.../subscriber/ShardingAlgorithmSubscriber.java | 6 ------
.../ShardingCacheConfigurationSubscriber.java | 2 --
.../ShardingStrategyConfigurationSubscriber.java | 20 +++++---------------
.../ShardingTableConfigurationSubscriber.java | 19 +++++++------------
13 files changed, 20 insertions(+), 57 deletions(-)
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptConfigurationSubscriber.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptConfigurationSubscriber.java
index 3e79c70558b..b5d33f2c8fc 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptConfigurationSubscriber.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptConfigurationSubscriber.java
@@ -69,11 +69,12 @@ public final class EncryptConfigurationSubscriber implements RuleConfigurationSu
EncryptRuleConfiguration config;
if (rule.isPresent()) {
config = (EncryptRuleConfiguration) rule.get().getConfiguration();
+ config.getTables().removeIf(each -> each.getName().equals(needToAddedConfig.getName()));
config.getTables().add(needToAddedConfig);
} else {
config = new EncryptRuleConfiguration(Collections.singletonList(needToAddedConfig), Collections.emptyMap());
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -91,7 +92,6 @@ public final class EncryptConfigurationSubscriber implements RuleConfigurationSu
EncryptRuleConfiguration config = (EncryptRuleConfiguration) database.getRuleMetaData().getSingleRule(EncryptRule.class).getConfiguration();
config.getTables().removeIf(each -> each.getName().equals(event.getTableName()));
config.getTables().add(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -107,7 +107,6 @@ public final class EncryptConfigurationSubscriber implements RuleConfigurationSu
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
EncryptRuleConfiguration config = (EncryptRuleConfiguration) database.getRuleMetaData().getSingleRule(EncryptRule.class).getConfiguration();
config.getTables().removeIf(each -> each.getName().equals(event.getTableName()));
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptorSubscriber.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptorSubscriber.java
index 17c7bde4cbd..4a463ec2126 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptorSubscriber.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptorSubscriber.java
@@ -78,7 +78,6 @@ public final class EncryptorSubscriber implements RuleConfigurationSubscribeCoor
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
EncryptRuleConfiguration config = (EncryptRuleConfiguration) database.getRuleMetaData().getSingleRule(EncryptRule.class).getConfiguration();
config.getEncryptors().put(encryptorName, encryptorConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(databaseName, config));
}
@@ -94,7 +93,6 @@ public final class EncryptorSubscriber implements RuleConfigurationSubscribeCoor
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
EncryptRuleConfiguration config = (EncryptRuleConfiguration) database.getRuleMetaData().getSingleRule(EncryptRule.class).getConfiguration();
config.getEncryptors().remove(event.getEncryptorName());
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
diff --git a/features/mask/core/src/main/java/org/apache/shardingsphere/mask/subscriber/MaskAlgorithmSubscriber.java b/features/mask/core/src/main/java/org/apache/shardingsphere/mask/subscriber/MaskAlgorithmSubscriber.java
index 26f3d9ae5c5..8a9a5f3f923 100644
--- a/features/mask/core/src/main/java/org/apache/shardingsphere/mask/subscriber/MaskAlgorithmSubscriber.java
+++ b/features/mask/core/src/main/java/org/apache/shardingsphere/mask/subscriber/MaskAlgorithmSubscriber.java
@@ -78,7 +78,6 @@ public final class MaskAlgorithmSubscriber implements RuleConfigurationSubscribe
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
MaskRuleConfiguration config = (MaskRuleConfiguration) database.getRuleMetaData().getSingleRule(MaskRule.class).getConfiguration();
config.getMaskAlgorithms().put(algorithmName, algorithmConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(databaseName, config));
}
@@ -94,7 +93,6 @@ public final class MaskAlgorithmSubscriber implements RuleConfigurationSubscribe
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
MaskRuleConfiguration config = (MaskRuleConfiguration) database.getRuleMetaData().getSingleRule(MaskRule.class).getConfiguration();
config.getMaskAlgorithms().remove(event.getAlgorithmName());
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
diff --git a/features/mask/core/src/main/java/org/apache/shardingsphere/mask/subscriber/MaskConfigurationSubscriber.java b/features/mask/core/src/main/java/org/apache/shardingsphere/mask/subscriber/MaskConfigurationSubscriber.java
index 2ce1b8363c2..bb919465c73 100644
--- a/features/mask/core/src/main/java/org/apache/shardingsphere/mask/subscriber/MaskConfigurationSubscriber.java
+++ b/features/mask/core/src/main/java/org/apache/shardingsphere/mask/subscriber/MaskConfigurationSubscriber.java
@@ -69,11 +69,12 @@ public final class MaskConfigurationSubscriber implements RuleConfigurationSubsc
MaskRuleConfiguration config;
if (rule.isPresent()) {
config = (MaskRuleConfiguration) rule.get().getConfiguration();
+ config.getTables().removeIf(each -> each.getName().equals(needToAddedConfig.getName()));
config.getTables().add(needToAddedConfig);
} else {
config = new MaskRuleConfiguration(Collections.singletonList(needToAddedConfig), Collections.emptyMap());
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -91,7 +92,6 @@ public final class MaskConfigurationSubscriber implements RuleConfigurationSubsc
MaskRuleConfiguration config = (MaskRuleConfiguration) database.getRuleMetaData().getSingleRule(MaskRule.class).getConfiguration();
config.getTables().removeIf(each -> each.getName().equals(event.getTableName()));
config.getTables().add(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -107,7 +107,6 @@ public final class MaskConfigurationSubscriber implements RuleConfigurationSubsc
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
MaskRuleConfiguration config = (MaskRuleConfiguration) database.getRuleMetaData().getSingleRule(MaskRule.class).getConfiguration();
config.getTables().removeIf(each -> each.getName().equals(event.getTableName()));
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
diff --git a/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/subscriber/ReadwriteSplittingConfigurationSubscriber.java b/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/subscriber/ReadwriteSplittingConfigurationSubscriber.java
index f791ab6e6e1..cba21c6b48b 100644
--- a/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/subscriber/ReadwriteSplittingConfigurationSubscriber.java
+++ b/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/subscriber/ReadwriteSplittingConfigurationSubscriber.java
@@ -69,11 +69,12 @@ public final class ReadwriteSplittingConfigurationSubscriber implements RuleConf
ReadwriteSplittingRuleConfiguration config;
if (rule.isPresent()) {
config = (ReadwriteSplittingRuleConfiguration) rule.get().getConfiguration();
+ config.getDataSources().removeIf(each -> each.getName().equals(needToAddedConfig.getName()));
config.getDataSources().add(needToAddedConfig);
} else {
config = new ReadwriteSplittingRuleConfiguration(Collections.singletonList(needToAddedConfig), Collections.emptyMap());
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -91,7 +92,6 @@ public final class ReadwriteSplittingConfigurationSubscriber implements RuleConf
ReadwriteSplittingRuleConfiguration config = (ReadwriteSplittingRuleConfiguration) database.getRuleMetaData().getSingleRule(ReadwriteSplittingRule.class).getConfiguration();
config.getDataSources().removeIf(each -> each.getName().equals(event.getGroupName()));
config.getDataSources().add(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -107,7 +107,6 @@ public final class ReadwriteSplittingConfigurationSubscriber implements RuleConf
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ReadwriteSplittingRuleConfiguration config = (ReadwriteSplittingRuleConfiguration) database.getRuleMetaData().getSingleRule(ReadwriteSplittingRule.class).getConfiguration();
config.getDataSources().removeIf(each -> each.getName().equals(event.getGroupName()));
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
diff --git a/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/subscriber/ReadwriteSplittingLoadBalanceSubscriber.java b/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/subscriber/ReadwriteSplittingLoadBalanceSubscriber.java
index 1e0909523b9..21e4f61ed24 100644
--- a/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/subscriber/ReadwriteSplittingLoadBalanceSubscriber.java
+++ b/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/subscriber/ReadwriteSplittingLoadBalanceSubscriber.java
@@ -78,7 +78,6 @@ public final class ReadwriteSplittingLoadBalanceSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ReadwriteSplittingRuleConfiguration config = (ReadwriteSplittingRuleConfiguration) database.getRuleMetaData().getSingleRule(ReadwriteSplittingRule.class).getConfiguration();
config.getLoadBalancers().put(loadBalanceName, algorithmConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(databaseName, config));
}
@@ -94,7 +93,6 @@ public final class ReadwriteSplittingLoadBalanceSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ReadwriteSplittingRuleConfiguration config = (ReadwriteSplittingRuleConfiguration) database.getRuleMetaData().getSingleRule(ReadwriteSplittingRule.class).getConfiguration();
config.getLoadBalancers().remove(event.getLoadBalanceName());
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
diff --git a/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowAlgorithmSubscriber.java b/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowAlgorithmSubscriber.java
index 2e1e2ed0ad8..c18ecd9df54 100644
--- a/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowAlgorithmSubscriber.java
+++ b/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowAlgorithmSubscriber.java
@@ -78,7 +78,6 @@ public final class ShadowAlgorithmSubscriber implements RuleConfigurationSubscri
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShadowRuleConfiguration config = (ShadowRuleConfiguration) database.getRuleMetaData().getSingleRule(ShadowRule.class).getConfiguration();
config.getShadowAlgorithms().put(algorithmName, algorithmConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(databaseName, config));
}
@@ -94,7 +93,6 @@ public final class ShadowAlgorithmSubscriber implements RuleConfigurationSubscri
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShadowRuleConfiguration config = (ShadowRuleConfiguration) database.getRuleMetaData().getSingleRule(ShadowRule.class).getConfiguration();
config.getShadowAlgorithms().remove(event.getAlgorithmName());
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
diff --git a/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowConfigurationSubscriber.java b/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowConfigurationSubscriber.java
index 6cd20f2419c..41503026ea9 100644
--- a/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowConfigurationSubscriber.java
+++ b/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowConfigurationSubscriber.java
@@ -68,12 +68,13 @@ public final class ShadowConfigurationSubscriber implements RuleConfigurationSub
ShadowRuleConfiguration config;
if (rule.isPresent()) {
config = (ShadowRuleConfiguration) rule.get().getConfiguration();
+ config.getDataSources().removeIf(each -> each.getName().equals(needToAddedConfig.getName()));
config.getDataSources().add(needToAddedConfig);
} else {
config = new ShadowRuleConfiguration();
config.getDataSources().add(needToAddedConfig);
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -91,7 +92,6 @@ public final class ShadowConfigurationSubscriber implements RuleConfigurationSub
ShadowRuleConfiguration config = (ShadowRuleConfiguration) database.getRuleMetaData().getSingleRule(ShadowRule.class).getConfiguration();
config.getDataSources().removeIf(each -> each.getName().equals(event.getDataSourceName()));
config.getDataSources().add(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -107,7 +107,6 @@ public final class ShadowConfigurationSubscriber implements RuleConfigurationSub
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShadowRuleConfiguration config = (ShadowRuleConfiguration) database.getRuleMetaData().getSingleRule(ShadowRule.class).getConfiguration();
config.getDataSources().removeIf(each -> each.getName().equals(event.getDataSourceName()));
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
diff --git a/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowTableSubscriber.java b/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowTableSubscriber.java
index 1f2b5e93438..5a1a441fdc2 100644
--- a/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowTableSubscriber.java
+++ b/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/subscriber/ShadowTableSubscriber.java
@@ -78,7 +78,6 @@ public final class ShadowTableSubscriber implements RuleConfigurationSubscribeCo
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShadowRuleConfiguration config = (ShadowRuleConfiguration) database.getRuleMetaData().getSingleRule(ShadowRule.class).getConfiguration();
config.getTables().put(tableName, tableConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(databaseName, config));
}
@@ -94,7 +93,6 @@ public final class ShadowTableSubscriber implements RuleConfigurationSubscribeCo
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShadowRuleConfiguration config = (ShadowRuleConfiguration) database.getRuleMetaData().getSingleRule(ShadowRule.class).getConfiguration();
config.getTables().remove(event.getTableName());
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
diff --git a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingAlgorithmSubscriber.java b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingAlgorithmSubscriber.java
index 116b9360d23..fd1202c7afc 100644
--- a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingAlgorithmSubscriber.java
+++ b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingAlgorithmSubscriber.java
@@ -130,7 +130,6 @@ public final class ShardingAlgorithmSubscriber implements RuleConfigurationSubsc
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getShardingAlgorithms().remove(event.getAlgorithmName());
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -146,7 +145,6 @@ public final class ShardingAlgorithmSubscriber implements RuleConfigurationSubsc
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getKeyGenerators().remove(event.getKeyGeneratorName());
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -162,7 +160,6 @@ public final class ShardingAlgorithmSubscriber implements RuleConfigurationSubsc
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getAuditors().remove(event.getAuditorName());
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -172,7 +169,6 @@ public final class ShardingAlgorithmSubscriber implements RuleConfigurationSubsc
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getShardingAlgorithms().put(algorithmName, algorithmConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(databaseName, config));
}
@@ -182,7 +178,6 @@ public final class ShardingAlgorithmSubscriber implements RuleConfigurationSubsc
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getKeyGenerators().put(algorithmName, algorithmConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(databaseName, config));
}
@@ -192,7 +187,6 @@ public final class ShardingAlgorithmSubscriber implements RuleConfigurationSubsc
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getAuditors().put(algorithmName, algorithmConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(databaseName, config));
}
diff --git a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingCacheConfigurationSubscriber.java b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingCacheConfigurationSubscriber.java
index e6c3fe4aecf..5692fb2db1d 100644
--- a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingCacheConfigurationSubscriber.java
+++ b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingCacheConfigurationSubscriber.java
@@ -84,7 +84,6 @@ public final class ShardingCacheConfigurationSubscriber implements RuleConfigura
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setShardingCache(null);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -94,7 +93,6 @@ public final class ShardingCacheConfigurationSubscriber implements RuleConfigura
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setShardingCache(shardingCacheConfiguration);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(databaseName, config));
}
diff --git a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingStrategyConfigurationSubscriber.java b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingStrategyConfigurationSubscriber.java
index 24c9d8e2046..c6d630798f2 100644
--- a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingStrategyConfigurationSubscriber.java
+++ b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingStrategyConfigurationSubscriber.java
@@ -86,8 +86,8 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
} else {
config = new ShardingRuleConfiguration();
config.setDefaultDatabaseShardingStrategy(needToAddedConfig);
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -110,8 +110,8 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
} else {
config = new ShardingRuleConfiguration();
config.setDefaultTableShardingStrategy(needToAddedConfig);
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -134,8 +134,8 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
} else {
config = new ShardingRuleConfiguration();
config.setDefaultKeyGenerateStrategy(needToAddedConfig);
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -158,8 +158,8 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
} else {
config = new ShardingRuleConfiguration();
config.setDefaultAuditStrategy(needToAddedConfig);
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -182,8 +182,8 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
} else {
config = new ShardingRuleConfiguration();
config.setDefaultShardingColumn(needToAddedConfig);
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -200,7 +200,6 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setDefaultDatabaseShardingStrategy(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -217,7 +216,6 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setDefaultTableShardingStrategy(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -234,7 +232,6 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setDefaultKeyGenerateStrategy(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -251,7 +248,6 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setDefaultAuditStrategy(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -268,7 +264,6 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setDefaultShardingColumn(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -284,7 +279,6 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setDefaultDatabaseShardingStrategy(null);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -300,7 +294,6 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setDefaultTableShardingStrategy(null);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -316,7 +309,6 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setDefaultKeyGenerateStrategy(null);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -332,7 +324,6 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setDefaultAuditStrategy(null);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -348,7 +339,6 @@ public final class ShardingStrategyConfigurationSubscriber implements RuleConfig
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setDefaultAuditStrategy(null);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
diff --git a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingTableConfigurationSubscriber.java b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingTableConfigurationSubscriber.java
index 91ed4357e9c..185be58d9e4 100644
--- a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingTableConfigurationSubscriber.java
+++ b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/subscriber/ShardingTableConfigurationSubscriber.java
@@ -80,12 +80,13 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
ShardingRuleConfiguration config;
if (rule.isPresent()) {
config = (ShardingRuleConfiguration) rule.get().getConfiguration();
+ config.getTables().removeIf(each -> each.getLogicTable().equals(needToAddedConfig.getLogicTable()));
config.getTables().add(needToAddedConfig);
} else {
config = new ShardingRuleConfiguration();
config.getTables().add(needToAddedConfig);
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -104,12 +105,13 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
ShardingRuleConfiguration config;
if (rule.isPresent()) {
config = (ShardingRuleConfiguration) rule.get().getConfiguration();
+ config.getAutoTables().removeIf(each -> each.getLogicTable().equals(needToAddedConfig.getLogicTable()));
config.getAutoTables().add(needToAddedConfig);
} else {
config = new ShardingRuleConfiguration();
config.getAutoTables().add(needToAddedConfig);
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -128,12 +130,13 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
ShardingRuleConfiguration config;
if (rule.isPresent()) {
config = (ShardingRuleConfiguration) rule.get().getConfiguration();
+ config.getBindingTableGroups().removeIf(each -> each.getName().equals(needToAddedConfig.getName()));
config.getBindingTableGroups().add(needToAddedConfig);
} else {
config = new ShardingRuleConfiguration();
config.getBindingTableGroups().add(needToAddedConfig);
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -156,8 +159,8 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
} else {
config = new ShardingRuleConfiguration();
config.getBroadcastTables().addAll(needToAddedConfig);
+ ruleConfigs.add(config);
}
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -175,7 +178,6 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getTables().removeIf(each -> each.getLogicTable().equals(event.getTableName()));
config.getTables().add(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -193,7 +195,6 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getAutoTables().removeIf(each -> each.getLogicTable().equals(event.getTableName()));
config.getAutoTables().add(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -211,7 +212,6 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getBindingTableGroups().removeIf(each -> each.getName().equals(event.getTableName()));
config.getBindingTableGroups().add(needToAlteredConfig);
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -228,7 +228,6 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setBroadcastTables(new LinkedList<>(needToAlteredConfig));
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -244,7 +243,6 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getTables().removeIf(each -> each.getLogicTable().equals(event.getTableName()));
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -260,7 +258,6 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getAutoTables().removeIf(each -> each.getLogicTable().equals(event.getTableName()));
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -276,7 +273,6 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.getBindingTableGroups().removeIf(each -> each.getName().equals(event.getTableName()));
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
@@ -292,7 +288,6 @@ public final class ShardingTableConfigurationSubscriber implements RuleConfigura
Collection<RuleConfiguration> ruleConfigs = new LinkedList<>(database.getRuleMetaData().getConfigurations());
ShardingRuleConfiguration config = (ShardingRuleConfiguration) database.getRuleMetaData().getSingleRule(ShardingRule.class).getConfiguration();
config.setBroadcastTables(new ArrayList<>());
- ruleConfigs.add(config);
database.getRuleMetaData().getConfigurations().addAll(ruleConfigs);
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}