This is an automated email from the ASF dual-hosted git repository.
duanzhengqiang 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 734ecb0da27 Refactor
GlobalRuleDefinitionExecutor.buildAlteredRuleConfiguration (#29897)
734ecb0da27 is described below
commit 734ecb0da27c9203ec3ddf2784277a42cb416a52
Author: Liang Zhang <[email protected]>
AuthorDate: Mon Jan 29 12:38:03 2024 +0800
Refactor GlobalRuleDefinitionExecutor.buildAlteredRuleConfiguration (#29897)
---
.../rule/engine/global/GlobalRuleDefinitionExecuteEngine.java | 2 +-
.../engine/legacy/LegacyGlobalRuleDefinitionExecuteEngine.java | 10 +++++-----
.../type/rdl/rule/spi/global/GlobalRuleDefinitionExecutor.java | 2 +-
.../distsql/handler/update/AlterGlobalClockRuleExecutor.java | 2 +-
.../handler/update/AlterGlobalClockRuleExecutorTest.java | 2 +-
.../distsql/handler/update/AlterSQLFederationRuleExecutor.java | 2 +-
.../handler/update/AlterSQLFederationRuleExecutorTest.java | 2 +-
.../distsql/handler/update/AlterSQLParserRuleExecutor.java | 2 +-
.../distsql/handler/update/AlterSQLParserRuleExecutorTest.java | 2 +-
.../distsql/handler/update/AlterSQLTranslatorRuleExecutor.java | 2 +-
.../handler/update/AlterSQLTranslatorRuleExecutorTest.java | 4 ++--
.../distsql/handler/update/AlterTrafficRuleExecutor.java | 10 +++++-----
.../distsql/handler/update/AlterTrafficRuleExecutorTest.java | 4 ++--
.../distsql/handler/update/AlterTransactionRuleExecutor.java | 2 +-
.../handler/update/AlterTransactionRuleExecutorTest.java | 9 +++++----
15 files changed, 29 insertions(+), 28 deletions(-)
diff --git
a/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/engine/global/GlobalRuleDefinitionExecuteEngine.java
b/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/engine/global/GlobalRuleDefinitionExecuteEngine.java
index 77f3c072159..40cfef5e5d7 100644
---
a/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/engine/global/GlobalRuleDefinitionExecuteEngine.java
+++
b/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/engine/global/GlobalRuleDefinitionExecuteEngine.java
@@ -61,7 +61,7 @@ public final class GlobalRuleDefinitionExecuteEngine {
@SuppressWarnings("unchecked")
private RuleConfiguration processUpdate(final
Collection<RuleConfiguration> ruleConfigs, final RuleDefinitionStatement
sqlStatement, final RuleConfiguration currentRuleConfig) {
- RuleConfiguration result =
executor.buildAlteredRuleConfiguration(currentRuleConfig, sqlStatement);
+ RuleConfiguration result =
executor.buildAlteredRuleConfiguration(sqlStatement, currentRuleConfig);
ruleConfigs.remove(currentRuleConfig);
ruleConfigs.add(result);
return result;
diff --git
a/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/engine/legacy/LegacyGlobalRuleDefinitionExecuteEngine.java
b/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/engine/legacy/LegacyGlobalRuleDefinitionExecuteEngine.java
index d1ede4f3bd1..5dac6944945 100644
---
a/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/engine/legacy/LegacyGlobalRuleDefinitionExecuteEngine.java
+++
b/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/engine/legacy/LegacyGlobalRuleDefinitionExecuteEngine.java
@@ -52,8 +52,8 @@ public final class LegacyGlobalRuleDefinitionExecuteEngine {
contextManager.getInstanceContext().getModeContextManager().alterGlobalRuleConfiguration(processUpdate(ruleConfigs,
sqlStatement, executor, currentRuleConfig));
}
- private RuleConfiguration findCurrentRuleConfiguration(final
Collection<RuleConfiguration> ruleConfigurations, final Class<? extends
RuleConfiguration> ruleConfigClass) {
- for (RuleConfiguration each : ruleConfigurations) {
+ private RuleConfiguration findCurrentRuleConfiguration(final
Collection<RuleConfiguration> ruleConfigs, final Class<? extends
RuleConfiguration> ruleConfigClass) {
+ for (RuleConfiguration each : ruleConfigs) {
if (ruleConfigClass.isAssignableFrom(each.getClass())) {
return each;
}
@@ -62,11 +62,11 @@ public final class LegacyGlobalRuleDefinitionExecuteEngine {
}
@SuppressWarnings({"rawtypes", "unchecked"})
- private Collection<RuleConfiguration> processUpdate(final
Collection<RuleConfiguration> ruleConfigurations,
+ private Collection<RuleConfiguration> processUpdate(final
Collection<RuleConfiguration> ruleConfigs,
final
RuleDefinitionStatement sqlStatement, final GlobalRuleDefinitionExecutor
globalRuleUpdater, final RuleConfiguration currentRuleConfig) {
- Collection<RuleConfiguration> result = new
LinkedList<>(ruleConfigurations);
+ Collection<RuleConfiguration> result = new LinkedList<>(ruleConfigs);
result.remove(currentRuleConfig);
-
result.add(globalRuleUpdater.buildAlteredRuleConfiguration(currentRuleConfig,
sqlStatement));
+
result.add(globalRuleUpdater.buildAlteredRuleConfiguration(sqlStatement,
currentRuleConfig));
return result;
}
}
diff --git
a/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/spi/global/GlobalRuleDefinitionExecutor.java
b/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/spi/global/GlobalRuleDefinitionExecutor.java
index f388135759c..fc89a3c0f0a 100644
---
a/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/spi/global/GlobalRuleDefinitionExecutor.java
+++
b/infra/distsql-handler/src/main/java/org/apache/shardingsphere/distsql/handler/type/rdl/rule/spi/global/GlobalRuleDefinitionExecutor.java
@@ -46,7 +46,7 @@ public interface GlobalRuleDefinitionExecutor<T extends
RuleDefinitionStatement,
* @param sqlStatement SQL statement
* @return built altered rule configuration
*/
- RuleConfiguration buildAlteredRuleConfiguration(R currentRuleConfig, T
sqlStatement);
+ RuleConfiguration buildAlteredRuleConfiguration(T sqlStatement, R
currentRuleConfig);
/**
* Get rule configuration class.
diff --git
a/kernel/global-clock/distsql/handler/src/main/java/org/apache/shardingsphere/globalclock/distsql/handler/update/AlterGlobalClockRuleExecutor.java
b/kernel/global-clock/distsql/handler/src/main/java/org/apache/shardingsphere/globalclock/distsql/handler/update/AlterGlobalClockRuleExecutor.java
index 1f3e62bd66f..10ce8cf9327 100644
---
a/kernel/global-clock/distsql/handler/src/main/java/org/apache/shardingsphere/globalclock/distsql/handler/update/AlterGlobalClockRuleExecutor.java
+++
b/kernel/global-clock/distsql/handler/src/main/java/org/apache/shardingsphere/globalclock/distsql/handler/update/AlterGlobalClockRuleExecutor.java
@@ -31,7 +31,7 @@ public final class AlterGlobalClockRuleExecutor implements
GlobalRuleDefinitionE
}
@Override
- public GlobalClockRuleConfiguration buildAlteredRuleConfiguration(final
GlobalClockRuleConfiguration currentRuleConfig, final
AlterGlobalClockRuleStatement sqlStatement) {
+ public GlobalClockRuleConfiguration buildAlteredRuleConfiguration(final
AlterGlobalClockRuleStatement sqlStatement, final GlobalClockRuleConfiguration
currentRuleConfig) {
return new GlobalClockRuleConfiguration(sqlStatement.getType(),
sqlStatement.getProvider(), sqlStatement.isEnabled(), sqlStatement.getProps());
}
diff --git
a/kernel/global-clock/distsql/handler/src/test/java/org/apache/shardingsphere/globalclock/distsql/handler/update/AlterGlobalClockRuleExecutorTest.java
b/kernel/global-clock/distsql/handler/src/test/java/org/apache/shardingsphere/globalclock/distsql/handler/update/AlterGlobalClockRuleExecutorTest.java
index 7e15f7630c9..e7e794e5290 100644
---
a/kernel/global-clock/distsql/handler/src/test/java/org/apache/shardingsphere/globalclock/distsql/handler/update/AlterGlobalClockRuleExecutorTest.java
+++
b/kernel/global-clock/distsql/handler/src/test/java/org/apache/shardingsphere/globalclock/distsql/handler/update/AlterGlobalClockRuleExecutorTest.java
@@ -34,7 +34,7 @@ class AlterGlobalClockRuleExecutorTest {
void assertExecute() {
AlterGlobalClockRuleExecutor executor = new
AlterGlobalClockRuleExecutor();
AlterGlobalClockRuleStatement sqlStatement = new
AlterGlobalClockRuleStatement("TSO", "redis", Boolean.TRUE,
PropertiesBuilder.build(new Property("host", "127.0.0.1")));
- GlobalClockRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(getSQLParserRuleConfiguration(),
sqlStatement);
+ GlobalClockRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(sqlStatement,
getSQLParserRuleConfiguration());
assertThat(actual.getType(), is("TSO"));
assertThat(actual.getProvider(), is("redis"));
assertTrue(actual.isEnabled());
diff --git
a/kernel/sql-federation/distsql/handler/src/main/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutor.java
b/kernel/sql-federation/distsql/handler/src/main/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutor.java
index 050021829b3..64b0ad8316e 100644
---
a/kernel/sql-federation/distsql/handler/src/main/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutor.java
+++
b/kernel/sql-federation/distsql/handler/src/main/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutor.java
@@ -33,7 +33,7 @@ public final class AlterSQLFederationRuleExecutor implements
GlobalRuleDefinitio
}
@Override
- public SQLFederationRuleConfiguration buildAlteredRuleConfiguration(final
SQLFederationRuleConfiguration currentRuleConfig, final
AlterSQLFederationRuleStatement sqlStatement) {
+ public SQLFederationRuleConfiguration buildAlteredRuleConfiguration(final
AlterSQLFederationRuleStatement sqlStatement, final
SQLFederationRuleConfiguration currentRuleConfig) {
boolean sqlFederationEnabled = null ==
sqlStatement.getSqlFederationEnabled() ?
currentRuleConfig.isSqlFederationEnabled() :
sqlStatement.getSqlFederationEnabled();
boolean allQueryUseSQLFederation = null ==
sqlStatement.getAllQueryUseSQLFederation() ?
currentRuleConfig.isAllQueryUseSQLFederation() :
sqlStatement.getAllQueryUseSQLFederation();
CacheOption executionPlanCache = null ==
sqlStatement.getExecutionPlanCache()
diff --git
a/kernel/sql-federation/distsql/handler/src/test/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutorTest.java
b/kernel/sql-federation/distsql/handler/src/test/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutorTest.java
index c5af8da6149..6e4e0404ba3 100644
---
a/kernel/sql-federation/distsql/handler/src/test/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutorTest.java
+++
b/kernel/sql-federation/distsql/handler/src/test/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutorTest.java
@@ -33,7 +33,7 @@ class AlterSQLFederationRuleExecutorTest {
void assertExecute() {
AlterSQLFederationRuleExecutor executor = new
AlterSQLFederationRuleExecutor();
AlterSQLFederationRuleStatement sqlStatement = new
AlterSQLFederationRuleStatement(true, true, new CacheOptionSegment(64, 512L));
- SQLFederationRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(getSQLFederationRuleConfiguration(),
sqlStatement);
+ SQLFederationRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(sqlStatement,
getSQLFederationRuleConfiguration());
assertTrue(actual.isSqlFederationEnabled());
assertTrue(actual.isAllQueryUseSQLFederation());
assertThat(actual.getExecutionPlanCache().getInitialCapacity(),
is(64));
diff --git
a/kernel/sql-parser/distsql/handler/src/main/java/org/apache/shardingsphere/parser/distsql/handler/update/AlterSQLParserRuleExecutor.java
b/kernel/sql-parser/distsql/handler/src/main/java/org/apache/shardingsphere/parser/distsql/handler/update/AlterSQLParserRuleExecutor.java
index 6c821490684..c7429e0a927 100644
---
a/kernel/sql-parser/distsql/handler/src/main/java/org/apache/shardingsphere/parser/distsql/handler/update/AlterSQLParserRuleExecutor.java
+++
b/kernel/sql-parser/distsql/handler/src/main/java/org/apache/shardingsphere/parser/distsql/handler/update/AlterSQLParserRuleExecutor.java
@@ -33,7 +33,7 @@ public final class AlterSQLParserRuleExecutor implements
GlobalRuleDefinitionExe
}
@Override
- public SQLParserRuleConfiguration buildAlteredRuleConfiguration(final
SQLParserRuleConfiguration currentRuleConfig, final AlterSQLParserRuleStatement
sqlStatement) {
+ public SQLParserRuleConfiguration buildAlteredRuleConfiguration(final
AlterSQLParserRuleStatement sqlStatement, final SQLParserRuleConfiguration
currentRuleConfig) {
CacheOption parseTreeCache = null == sqlStatement.getParseTreeCache()
? currentRuleConfig.getParseTreeCache()
: createCacheOption(currentRuleConfig.getParseTreeCache(),
sqlStatement.getParseTreeCache());
diff --git
a/kernel/sql-parser/distsql/handler/src/test/java/org/apache/shardingsphere/parser/distsql/handler/update/AlterSQLParserRuleExecutorTest.java
b/kernel/sql-parser/distsql/handler/src/test/java/org/apache/shardingsphere/parser/distsql/handler/update/AlterSQLParserRuleExecutorTest.java
index 4bd7dcdde81..81bdf3c3e30 100644
---
a/kernel/sql-parser/distsql/handler/src/test/java/org/apache/shardingsphere/parser/distsql/handler/update/AlterSQLParserRuleExecutorTest.java
+++
b/kernel/sql-parser/distsql/handler/src/test/java/org/apache/shardingsphere/parser/distsql/handler/update/AlterSQLParserRuleExecutorTest.java
@@ -32,7 +32,7 @@ class AlterSQLParserRuleExecutorTest {
void assertExecute() {
AlterSQLParserRuleExecutor executor = new AlterSQLParserRuleExecutor();
AlterSQLParserRuleStatement sqlStatement = new
AlterSQLParserRuleStatement(new CacheOptionSegment(64, 512L), new
CacheOptionSegment(1000, 1000L));
- SQLParserRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(getSQLParserRuleConfiguration(),
sqlStatement);
+ SQLParserRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(sqlStatement,
getSQLParserRuleConfiguration());
assertThat(actual.getSqlStatementCache().getInitialCapacity(),
is(1000));
assertThat(actual.getSqlStatementCache().getMaximumSize(), is(1000L));
assertThat(actual.getParseTreeCache().getInitialCapacity(), is(64));
diff --git
a/kernel/sql-translator/distsql/handler/src/main/java/org/apache/shardingsphere/sqltranslator/distsql/handler/update/AlterSQLTranslatorRuleExecutor.java
b/kernel/sql-translator/distsql/handler/src/main/java/org/apache/shardingsphere/sqltranslator/distsql/handler/update/AlterSQLTranslatorRuleExecutor.java
index f63152ac009..ffd41bef0cf 100644
---
a/kernel/sql-translator/distsql/handler/src/main/java/org/apache/shardingsphere/sqltranslator/distsql/handler/update/AlterSQLTranslatorRuleExecutor.java
+++
b/kernel/sql-translator/distsql/handler/src/main/java/org/apache/shardingsphere/sqltranslator/distsql/handler/update/AlterSQLTranslatorRuleExecutor.java
@@ -34,7 +34,7 @@ public final class AlterSQLTranslatorRuleExecutor implements
GlobalRuleDefinitio
}
@Override
- public SQLTranslatorRuleConfiguration buildAlteredRuleConfiguration(final
SQLTranslatorRuleConfiguration currentRuleConfig, final
AlterSQLTranslatorRuleStatement sqlStatement) {
+ public SQLTranslatorRuleConfiguration buildAlteredRuleConfiguration(final
AlterSQLTranslatorRuleStatement sqlStatement, final
SQLTranslatorRuleConfiguration currentRuleConfig) {
return new
SQLTranslatorRuleConfiguration(sqlStatement.getProvider().getName(),
sqlStatement.getProvider().getProps(),
null == sqlStatement.getUseOriginalSQLWhenTranslatingFailed()
? currentRuleConfig.isUseOriginalSQLWhenTranslatingFailed() :
sqlStatement.getUseOriginalSQLWhenTranslatingFailed());
}
diff --git
a/kernel/sql-translator/distsql/handler/src/test/java/org/apache/shardingsphere/sqltranslator/distsql/handler/update/AlterSQLTranslatorRuleExecutorTest.java
b/kernel/sql-translator/distsql/handler/src/test/java/org/apache/shardingsphere/sqltranslator/distsql/handler/update/AlterSQLTranslatorRuleExecutorTest.java
index 187be0c3290..76635a52d7b 100644
---
a/kernel/sql-translator/distsql/handler/src/test/java/org/apache/shardingsphere/sqltranslator/distsql/handler/update/AlterSQLTranslatorRuleExecutorTest.java
+++
b/kernel/sql-translator/distsql/handler/src/test/java/org/apache/shardingsphere/sqltranslator/distsql/handler/update/AlterSQLTranslatorRuleExecutorTest.java
@@ -37,8 +37,8 @@ class AlterSQLTranslatorRuleExecutorTest {
@Test
void assertExecute() {
AlterSQLTranslatorRuleExecutor executor = new
AlterSQLTranslatorRuleExecutor();
- SQLTranslatorRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(createSQLTranslatorRuleConfiguration(),
- new AlterSQLTranslatorRuleStatement(new
AlgorithmSegment("JOOQ", PropertiesBuilder.build(new Property("foo", "bar"))),
null));
+ SQLTranslatorRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(
+ new AlterSQLTranslatorRuleStatement(new
AlgorithmSegment("JOOQ", PropertiesBuilder.build(new Property("foo", "bar"))),
null), createSQLTranslatorRuleConfiguration());
assertThat(actual.getType(), is("JOOQ"));
assertFalse(actual.getProps().isEmpty());
String props = PropertiesConverter.convert(actual.getProps());
diff --git
a/kernel/traffic/distsql/handler/src/main/java/org/apache/shardingsphere/traffic/distsql/handler/update/AlterTrafficRuleExecutor.java
b/kernel/traffic/distsql/handler/src/main/java/org/apache/shardingsphere/traffic/distsql/handler/update/AlterTrafficRuleExecutor.java
index b6a850229d1..2fe3a9f9156 100644
---
a/kernel/traffic/distsql/handler/src/main/java/org/apache/shardingsphere/traffic/distsql/handler/update/AlterTrafficRuleExecutor.java
+++
b/kernel/traffic/distsql/handler/src/main/java/org/apache/shardingsphere/traffic/distsql/handler/update/AlterTrafficRuleExecutor.java
@@ -43,16 +43,16 @@ public final class AlterTrafficRuleExecutor implements
GlobalRuleDefinitionExecu
@Override
public void checkBeforeUpdate(final AlterTrafficRuleStatement
sqlStatement, final TrafficRuleConfiguration currentRuleConfig) {
- checkRuleNames(currentRuleConfig, sqlStatement);
+ checkRuleNames(sqlStatement, currentRuleConfig);
checkAlgorithmNames(sqlStatement);
}
- private void checkRuleNames(final TrafficRuleConfiguration
currentRuleConfig, final AlterTrafficRuleStatement sqlStatement) {
- Collection<String> notExistRuleNames =
getNotExistRuleNames(currentRuleConfig, sqlStatement);
+ private void checkRuleNames(final AlterTrafficRuleStatement sqlStatement,
final TrafficRuleConfiguration currentRuleConfig) {
+ Collection<String> notExistRuleNames =
getNotExistRuleNames(sqlStatement, currentRuleConfig);
ShardingSpherePreconditions.checkState(notExistRuleNames.isEmpty(), ()
-> new MissingRequiredRuleException("Traffic", notExistRuleNames));
}
- private Collection<String> getNotExistRuleNames(final
TrafficRuleConfiguration currentRuleConfig, final AlterTrafficRuleStatement
sqlStatement) {
+ private Collection<String> getNotExistRuleNames(final
AlterTrafficRuleStatement sqlStatement, final TrafficRuleConfiguration
currentRuleConfig) {
Collection<String> currentRuleNames =
currentRuleConfig.getTrafficStrategies().stream().map(TrafficStrategyConfiguration::getName).collect(Collectors.toSet());
return
sqlStatement.getSegments().stream().map(TrafficRuleSegment::getName).filter(each
-> !currentRuleNames.contains(each)).collect(Collectors.toSet());
}
@@ -67,7 +67,7 @@ public final class AlterTrafficRuleExecutor implements
GlobalRuleDefinitionExecu
}
@Override
- public TrafficRuleConfiguration buildAlteredRuleConfiguration(final
TrafficRuleConfiguration currentRuleConfig, final AlterTrafficRuleStatement
sqlStatement) {
+ public TrafficRuleConfiguration buildAlteredRuleConfiguration(final
AlterTrafficRuleStatement sqlStatement, final TrafficRuleConfiguration
currentRuleConfig) {
TrafficRuleConfiguration result = new TrafficRuleConfiguration();
TrafficRuleConfiguration configFromSQLStatement =
TrafficRuleConverter.convert(sqlStatement.getSegments());
result.getTrafficStrategies().addAll(createToBeAlteredStrategyConfigurations(currentRuleConfig,
configFromSQLStatement));
diff --git
a/kernel/traffic/distsql/handler/src/test/java/org/apache/shardingsphere/traffic/distsql/handler/update/AlterTrafficRuleExecutorTest.java
b/kernel/traffic/distsql/handler/src/test/java/org/apache/shardingsphere/traffic/distsql/handler/update/AlterTrafficRuleExecutorTest.java
index 0dcdc528f2a..5acd00e378a 100644
---
a/kernel/traffic/distsql/handler/src/test/java/org/apache/shardingsphere/traffic/distsql/handler/update/AlterTrafficRuleExecutorTest.java
+++
b/kernel/traffic/distsql/handler/src/test/java/org/apache/shardingsphere/traffic/distsql/handler/update/AlterTrafficRuleExecutorTest.java
@@ -63,7 +63,7 @@ class AlterTrafficRuleExecutorTest {
TrafficRuleSegment trafficRuleSegment = new
TrafficRuleSegment("rule_name_1", Arrays.asList("olap", "order_by"),
new AlgorithmSegment("DISTSQL.FIXTURE", new Properties()),
null);
AlterTrafficRuleExecutor executor = new AlterTrafficRuleExecutor();
- TrafficRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(createTrafficRuleConfiguration(), new
AlterTrafficRuleStatement(Collections.singleton(trafficRuleSegment)));
+ TrafficRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(new
AlterTrafficRuleStatement(Collections.singleton(trafficRuleSegment)),
createTrafficRuleConfiguration());
assertThat(actual.getTrafficStrategies().size(), is(2));
assertThat(actual.getTrafficAlgorithms().size(), is(2));
assertThat(actual.getLoadBalancers().size(), is(1));
@@ -77,7 +77,7 @@ class AlterTrafficRuleExecutorTest {
"rule_name_2", Collections.emptyList(), new
AlgorithmSegment("DISTSQL.FIXTURE", new Properties()), new
AlgorithmSegment("DISTSQL.FIXTURE", new Properties()));
AlterTrafficRuleExecutor executor = new AlterTrafficRuleExecutor();
TrafficRuleConfiguration actual =
-
executor.buildAlteredRuleConfiguration(createTrafficRuleConfiguration(), new
AlterTrafficRuleStatement(Arrays.asList(trafficRuleSegment1,
trafficRuleSegment2)));
+ executor.buildAlteredRuleConfiguration(new
AlterTrafficRuleStatement(Arrays.asList(trafficRuleSegment1,
trafficRuleSegment2)), createTrafficRuleConfiguration());
assertThat(actual.getTrafficStrategies().size(), is(2));
assertThat(actual.getTrafficAlgorithms().size(), is(2));
assertThat(actual.getLoadBalancers().size(), is(2));
diff --git
a/kernel/transaction/distsql/handler/src/main/java/org/apache/shardingsphere/transaction/distsql/handler/update/AlterTransactionRuleExecutor.java
b/kernel/transaction/distsql/handler/src/main/java/org/apache/shardingsphere/transaction/distsql/handler/update/AlterTransactionRuleExecutor.java
index 02a99ec88d7..b89ca0696e5 100644
---
a/kernel/transaction/distsql/handler/src/main/java/org/apache/shardingsphere/transaction/distsql/handler/update/AlterTransactionRuleExecutor.java
+++
b/kernel/transaction/distsql/handler/src/main/java/org/apache/shardingsphere/transaction/distsql/handler/update/AlterTransactionRuleExecutor.java
@@ -69,7 +69,7 @@ public final class AlterTransactionRuleExecutor implements
GlobalRuleDefinitionE
}
@Override
- public TransactionRuleConfiguration buildAlteredRuleConfiguration(final
TransactionRuleConfiguration currentRuleConfig, final
AlterTransactionRuleStatement sqlStatement) {
+ public TransactionRuleConfiguration buildAlteredRuleConfiguration(final
AlterTransactionRuleStatement sqlStatement, final TransactionRuleConfiguration
currentRuleConfig) {
return new TransactionRuleConfiguration(sqlStatement.getDefaultType(),
sqlStatement.getProvider().getProviderType(),
sqlStatement.getProvider().getProps());
}
diff --git
a/kernel/transaction/distsql/handler/src/test/java/org/apache/shardingsphere/transaction/distsql/handler/update/AlterTransactionRuleExecutorTest.java
b/kernel/transaction/distsql/handler/src/test/java/org/apache/shardingsphere/transaction/distsql/handler/update/AlterTransactionRuleExecutorTest.java
index 16c1f51a67c..95ce5e54efe 100644
---
a/kernel/transaction/distsql/handler/src/test/java/org/apache/shardingsphere/transaction/distsql/handler/update/AlterTransactionRuleExecutorTest.java
+++
b/kernel/transaction/distsql/handler/src/test/java/org/apache/shardingsphere/transaction/distsql/handler/update/AlterTransactionRuleExecutorTest.java
@@ -48,8 +48,9 @@ class AlterTransactionRuleExecutorTest {
void assertExecuteWithXA() {
when(ShardingSphereServiceLoader.getServiceInstances(ShardingSphereTransactionManager.class)).thenReturn(Collections.singleton(new
ShardingSphereTransactionManagerFixture()));
AlterTransactionRuleExecutor executor = new
AlterTransactionRuleExecutor();
- TransactionRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(createTransactionRuleConfiguration(),
new AlterTransactionRuleStatement("XA",
- new TransactionProviderSegment("Atomikos",
PropertiesBuilder.build(new Property("host", "127.0.0.1"), new
Property("databaseName", "jbossts")))));
+ AlterTransactionRuleStatement sqlStatement = new
AlterTransactionRuleStatement(
+ "XA", new TransactionProviderSegment("Atomikos",
PropertiesBuilder.build(new Property("host", "127.0.0.1"), new
Property("databaseName", "jbossts"))));
+ TransactionRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(sqlStatement,
createTransactionRuleConfiguration());
assertThat(actual.getDefaultType(), is("XA"));
assertThat(actual.getProviderType(), is("Atomikos"));
assertFalse(actual.getProps().isEmpty());
@@ -61,8 +62,8 @@ class AlterTransactionRuleExecutorTest {
@Test
void assertExecuteWithLocal() {
AlterTransactionRuleExecutor executor = new
AlterTransactionRuleExecutor();
- TransactionRuleConfiguration actual =
-
executor.buildAlteredRuleConfiguration(createTransactionRuleConfiguration(),
new AlterTransactionRuleStatement("LOCAL", new TransactionProviderSegment("",
new Properties())));
+ TransactionRuleConfiguration actual =
executor.buildAlteredRuleConfiguration(
+ new AlterTransactionRuleStatement("LOCAL", new
TransactionProviderSegment("", new Properties())),
createTransactionRuleConfiguration());
assertThat(actual.getDefaultType(), is("LOCAL"));
assertThat(actual.getProviderType(), is(""));
}