This is an automated email from the ASF dual-hosted git repository.
panjuan 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 b9dc6ca Use mode on scaling (#11774)
b9dc6ca is described below
commit b9dc6ca5592e406d53a21591ef4e9b2d30ab3754
Author: Liang Zhang <[email protected]>
AuthorDate: Thu Aug 12 17:40:59 2021 +0800
Use mode on scaling (#11774)
* For code format
* Use mode on scaling
* Fix test case
* Fix test case
---
.../src/main/resources/conf/server.yaml | 10 ++++---
.../impl/GovernanceBootstrapInitializer.java | 14 ++++-----
.../util/ServerConfigurationInitializer.java | 2 +-
.../src/main/resources/conf/server.yaml | 10 ++++---
.../scaling/web/HttpServerInitializerTest.java | 4 +--
.../src/test/resources/conf/server.yaml | 10 ++++---
.../scaling/core/api/ScalingAPIFactory.java | 30 +++++++++-----------
.../scaling/core/config/ServerConfiguration.java | 4 +--
.../yaml/ServerConfigurationYamlSwapper.java | 9 +++---
.../core/config/yaml/YamlServerConfiguration.java | 4 +--
.../api/impl/GovernanceRepositoryAPIImplTest.java | 4 +--
.../scaling/core/api/impl/ScalingAPIImplTest.java | 4 +--
.../yaml/ServerConfigurationYamlSwapperTest.java | 33 ++++++++++++++--------
.../scaling/core/job/FinishedCheckJobTest.java | 4 +--
.../scaling/core/job/ScalingJobTest.java | 4 +--
.../test/resources/docker/scaling/conf/server.yaml | 10 ++++---
.../adapter/ShardingSphereAdapterContainer.java | 9 +++---
17 files changed, 88 insertions(+), 77 deletions(-)
diff --git
a/shardingsphere-distribution/shardingsphere-scaling-distribution/src/main/resources/conf/server.yaml
b/shardingsphere-distribution/shardingsphere-scaling-distribution/src/main/resources/conf/server.yaml
index e282259..3c99740 100644
---
a/shardingsphere-distribution/shardingsphere-scaling-distribution/src/main/resources/conf/server.yaml
+++
b/shardingsphere-distribution/shardingsphere-scaling-distribution/src/main/resources/conf/server.yaml
@@ -20,8 +20,10 @@ scaling:
blockQueueSize: 10000
workerThread: 30
-#governance:
-# registryCenter:
+#mode:
+# type: Cluster
+# repository:
# type: ZooKeeper
-# namespace: governance_ds
-# serverLists: localhost:2181
+# props:
+# namespace: governance_ds
+# serverLists: localhost:2181
diff --git
a/shardingsphere-proxy/shardingsphere-proxy-bootstrap/src/main/java/org/apache/shardingsphere/proxy/initializer/impl/GovernanceBootstrapInitializer.java
b/shardingsphere-proxy/shardingsphere-proxy-bootstrap/src/main/java/org/apache/shardingsphere/proxy/initializer/impl/GovernanceBootstrapInitializer.java
index f9582b7..d2666bb 100644
---
a/shardingsphere-proxy/shardingsphere-proxy-bootstrap/src/main/java/org/apache/shardingsphere/proxy/initializer/impl/GovernanceBootstrapInitializer.java
+++
b/shardingsphere-proxy/shardingsphere-proxy-bootstrap/src/main/java/org/apache/shardingsphere/proxy/initializer/impl/GovernanceBootstrapInitializer.java
@@ -21,14 +21,14 @@ import com.google.common.base.Preconditions;
import
org.apache.shardingsphere.governance.context.metadata.GovernanceMetaDataContexts;
import
org.apache.shardingsphere.governance.context.transaction.GovernanceTransactionContexts;
import org.apache.shardingsphere.governance.core.registry.RegistryCenter;
-import
org.apache.shardingsphere.governance.core.yaml.pojo.YamlGovernanceConfiguration;
-import
org.apache.shardingsphere.governance.core.yaml.swapper.GovernanceConfigurationYamlSwapper;
import
org.apache.shardingsphere.governance.repository.api.config.GovernanceConfiguration;
import
org.apache.shardingsphere.governance.repository.spi.RegistryCenterRepository;
import
org.apache.shardingsphere.infra.config.condition.PreConditionRuleConfiguration;
import org.apache.shardingsphere.infra.context.metadata.MetaDataContexts;
import
org.apache.shardingsphere.infra.context.metadata.impl.StandardMetaDataContexts;
import org.apache.shardingsphere.infra.mode.ShardingSphereMode;
+import
org.apache.shardingsphere.infra.yaml.config.pojo.mode.YamlModeConfiguration;
+import
org.apache.shardingsphere.infra.yaml.config.swapper.mode.ModeConfigurationYamlSwapper;
import org.apache.shardingsphere.proxy.config.YamlProxyConfiguration;
import org.apache.shardingsphere.scaling.core.api.ScalingWorker;
import org.apache.shardingsphere.scaling.core.config.ScalingContext;
@@ -75,15 +75,11 @@ public final class GovernanceBootstrapInitializer extends
AbstractBootstrapIniti
if (!scalingConfig.isPresent()) {
return;
}
- // TODO fix scaling with gov config
- Optional<YamlGovernanceConfiguration> governanceConfig =
yamlConfig.getServerConfiguration().getRules().stream().filter(
- each -> each instanceof YamlGovernanceConfiguration).map(each ->
(YamlGovernanceConfiguration) each).findFirst();
- Preconditions.checkState(governanceConfig.isPresent());
- scalingConfig.ifPresent(optional ->
initScalingDetails(governanceConfig.get(), optional));
+ scalingConfig.ifPresent(optional ->
initScalingDetails(yamlConfig.getServerConfiguration().getMode(), optional));
}
- private void initScalingDetails(final YamlGovernanceConfiguration
governanceConfig, final ServerConfiguration scalingConfig) {
- scalingConfig.setGovernanceConfig(new
GovernanceConfigurationYamlSwapper().swapToObject(governanceConfig));
+ private void initScalingDetails(final YamlModeConfiguration
yamlModeConfig, final ServerConfiguration scalingConfig) {
+ scalingConfig.setModeConfiguration(new
ModeConfigurationYamlSwapper().swapToObject(yamlModeConfig));
ScalingContext.getInstance().init(scalingConfig);
ScalingWorker.init();
}
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/main/java/org/apache/shardingsphere/scaling/util/ServerConfigurationInitializer.java
b/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/main/java/org/apache/shardingsphere/scaling/util/ServerConfigurationInitializer.java
index 70d2b24..5e5ee39 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/main/java/org/apache/shardingsphere/scaling/util/ServerConfigurationInitializer.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/main/java/org/apache/shardingsphere/scaling/util/ServerConfigurationInitializer.java
@@ -49,7 +49,7 @@ public final class ServerConfigurationInitializer {
File yamlFile = new File(Resources.getResource(SERVER_FILE).getPath());
YamlServerConfiguration serverConfig = YamlEngine.unmarshal(yamlFile,
YamlServerConfiguration.class);
Preconditions.checkNotNull(serverConfig, "Server configuration file
`%s` is invalid.", yamlFile.getName());
- Preconditions.checkNotNull(serverConfig.getGovernance(), "Governance
configuration is required.");
+ Preconditions.checkNotNull(serverConfig.getMode(), "Governance
configuration is required.");
ScalingContext.getInstance().init(new
ServerConfigurationYamlSwapper().swapToObject(serverConfig));
}
}
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/main/resources/conf/server.yaml
b/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/main/resources/conf/server.yaml
index e282259..3c99740 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/main/resources/conf/server.yaml
+++
b/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/main/resources/conf/server.yaml
@@ -20,8 +20,10 @@ scaling:
blockQueueSize: 10000
workerThread: 30
-#governance:
-# registryCenter:
+#mode:
+# type: Cluster
+# repository:
# type: ZooKeeper
-# namespace: governance_ds
-# serverLists: localhost:2181
+# props:
+# namespace: governance_ds
+# serverLists: localhost:2181
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/java/org/apache/shardingsphere/scaling/web/HttpServerInitializerTest.java
b/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/java/org/apache/shardingsphere/scaling/web/HttpServerInitializerTest.java
index 10a367e..7be905d 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/java/org/apache/shardingsphere/scaling/web/HttpServerInitializerTest.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/java/org/apache/shardingsphere/scaling/web/HttpServerInitializerTest.java
@@ -22,7 +22,7 @@ import io.netty.channel.ChannelPipeline;
import io.netty.channel.socket.SocketChannel;
import lombok.SneakyThrows;
import
org.apache.shardingsphere.governance.repository.api.config.RegistryCenterConfiguration;
-import
org.apache.shardingsphere.governance.repository.api.config.GovernanceConfiguration;
+import org.apache.shardingsphere.infra.mode.config.ModeConfiguration;
import org.apache.shardingsphere.scaling.core.config.ScalingContext;
import org.apache.shardingsphere.scaling.core.config.ServerConfiguration;
import org.apache.shardingsphere.scaling.core.util.ReflectionUtil;
@@ -62,7 +62,7 @@ public final class HttpServerInitializerTest {
private ServerConfiguration mockServerConfig() {
ServerConfiguration result = new ServerConfiguration();
- result.setGovernanceConfig(new GovernanceConfiguration(new
RegistryCenterConfiguration("Zookeeper", "test", "localhost:2181", null),
false));
+ result.setModeConfiguration(new ModeConfiguration("Cluster", new
RegistryCenterConfiguration("Zookeeper", "test", "localhost:2181", null),
false));
return result;
}
}
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/resources/conf/server.yaml
b/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/resources/conf/server.yaml
index 14492bc..6b9311a 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/resources/conf/server.yaml
+++
b/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/resources/conf/server.yaml
@@ -20,8 +20,10 @@ scaling:
blockQueueSize: 10000
workerThread: 30
-governance:
- registryCenter:
+mode:
+ type: Cluster
+ repository:
type: ZooKeeper
- namespace: governance_ds
- serverLists: localhost:2181
+ props:
+ namespace: governance_ds
+ serverLists: localhost:2181
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/ScalingAPIFactory.java
b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/ScalingAPIFactory.java
index edc5bf6..d4d1437 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/ScalingAPIFactory.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/ScalingAPIFactory.java
@@ -29,9 +29,8 @@ import
org.apache.shardingsphere.elasticjob.lite.lifecycle.api.JobStatisticsAPI;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperConfiguration;
import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperRegistryCenter;
-import
org.apache.shardingsphere.governance.repository.spi.RegistryCenterRepository;
import
org.apache.shardingsphere.governance.repository.api.config.RegistryCenterConfiguration;
-import
org.apache.shardingsphere.governance.repository.api.config.GovernanceConfiguration;
+import
org.apache.shardingsphere.governance.repository.spi.RegistryCenterRepository;
import org.apache.shardingsphere.infra.spi.ShardingSphereServiceLoader;
import org.apache.shardingsphere.infra.spi.typed.TypedSPIRegistry;
import
org.apache.shardingsphere.scaling.core.api.impl.GovernanceRepositoryAPIImpl;
@@ -105,7 +104,8 @@ public final class ScalingAPIFactory {
private static void checkServerConfig() {
ServerConfiguration serverConfig =
ScalingContext.getInstance().getServerConfig();
Preconditions.checkNotNull(serverConfig, "Scaling server configuration
is required.");
- Preconditions.checkNotNull(serverConfig.getGovernanceConfig(),
"Governance configuration is required.");
+ Preconditions.checkNotNull(serverConfig.getModeConfiguration(), "Mode
configuration is required.");
+
Preconditions.checkArgument("Cluster".equals(serverConfig.getModeConfiguration().getType()),
"Mode must be `Cluster`.");
}
private static final class ScalingAPIHolder {
@@ -146,10 +146,9 @@ public final class ScalingAPIFactory {
private static GovernanceRepositoryAPI createGovernanceRepositoryAPI()
{
checkServerConfig();
- GovernanceConfiguration governanceConfig =
ScalingContext.getInstance().getServerConfig().getGovernanceConfig();
- RegistryCenterConfiguration registryCenterConfig =
governanceConfig.getRegistryCenterConfiguration();
- RegistryCenterRepository registryCenterRepository =
TypedSPIRegistry.getRegisteredService(RegistryCenterRepository.class,
registryCenterConfig.getType(), registryCenterConfig.getProps());
- registryCenterRepository.init(registryCenterConfig);
+ RegistryCenterConfiguration repositoryConfig =
(RegistryCenterConfiguration)
ScalingContext.getInstance().getServerConfig().getModeConfiguration().getRepository();
+ RegistryCenterRepository registryCenterRepository =
TypedSPIRegistry.getRegisteredService(RegistryCenterRepository.class,
repositoryConfig.getType(), repositoryConfig.getProps());
+ registryCenterRepository.init(repositoryConfig);
return new GovernanceRepositoryAPIImpl(registryCenterRepository);
}
}
@@ -167,11 +166,11 @@ public final class ScalingAPIFactory {
private ElasticJobAPIHolder() {
checkServerConfig();
- GovernanceConfiguration governanceConfig =
ScalingContext.getInstance().getServerConfig().getGovernanceConfig();
- String namespace =
governanceConfig.getRegistryCenterConfiguration().getNamespace() +
ScalingConstant.SCALING_ROOT;
- jobStatisticsAPI =
JobAPIFactory.createJobStatisticsAPI(governanceConfig.getRegistryCenterConfiguration().getServerLists(),
namespace, null);
- jobConfigurationAPI =
JobAPIFactory.createJobConfigurationAPI(governanceConfig.getRegistryCenterConfiguration().getServerLists(),
namespace, null);
- jobOperateAPI =
JobAPIFactory.createJobOperateAPI(governanceConfig.getRegistryCenterConfiguration().getServerLists(),
namespace, null);
+ RegistryCenterConfiguration repositoryConfig =
(RegistryCenterConfiguration)
ScalingContext.getInstance().getServerConfig().getModeConfiguration().getRepository();
+ String namespace = repositoryConfig.getNamespace() +
ScalingConstant.SCALING_ROOT;
+ jobStatisticsAPI =
JobAPIFactory.createJobStatisticsAPI(repositoryConfig.getServerLists(),
namespace, null);
+ jobConfigurationAPI =
JobAPIFactory.createJobConfigurationAPI(repositoryConfig.getServerLists(),
namespace, null);
+ jobOperateAPI =
JobAPIFactory.createJobOperateAPI(repositoryConfig.getServerLists(), namespace,
null);
}
public static ElasticJobAPIHolder getInstance() {
@@ -209,10 +208,9 @@ public final class ScalingAPIFactory {
private static ZookeeperConfiguration getZookeeperConfig() {
checkServerConfig();
- GovernanceConfiguration governanceConfig =
ScalingContext.getInstance().getServerConfig().getGovernanceConfig();
- ZookeeperConfiguration result = new
ZookeeperConfiguration(governanceConfig.getRegistryCenterConfiguration().getServerLists(),
-
governanceConfig.getRegistryCenterConfiguration().getNamespace() +
ScalingConstant.SCALING_ROOT);
- Properties props =
governanceConfig.getRegistryCenterConfiguration().getProps();
+ RegistryCenterConfiguration repositoryConfig =
(RegistryCenterConfiguration)
ScalingContext.getInstance().getServerConfig().getModeConfiguration().getRepository();
+ ZookeeperConfiguration result = new
ZookeeperConfiguration(repositoryConfig.getServerLists(),
repositoryConfig.getNamespace() + ScalingConstant.SCALING_ROOT);
+ Properties props = repositoryConfig.getProps();
result.setMaxSleepTimeMilliseconds(getProperty(props,
"max.sleep.time.milliseconds", result.getMaxSleepTimeMilliseconds()));
result.setBaseSleepTimeMilliseconds(getProperty(props,
"base.sleep.time.milliseconds", result.getBaseSleepTimeMilliseconds()));
result.setConnectionTimeoutMilliseconds(getProperty(props,
"connection.timeout.milliseconds", result.getConnectionTimeoutMilliseconds()));
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/ServerConfiguration.java
b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/ServerConfiguration.java
index 8d1500f..3d319dd 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/ServerConfiguration.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/ServerConfiguration.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.scaling.core.config;
import lombok.Getter;
import lombok.Setter;
-import
org.apache.shardingsphere.governance.repository.api.config.GovernanceConfiguration;
+import org.apache.shardingsphere.infra.mode.config.ModeConfiguration;
/**
* Global server configuration.
@@ -34,5 +34,5 @@ public final class ServerConfiguration {
private int workerThread = 30;
- private GovernanceConfiguration governanceConfig;
+ private ModeConfiguration modeConfiguration;
}
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/yaml/ServerConfigurationYamlSwapper.java
b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/yaml/ServerConfigurationYamlSwapper.java
index aab8548..ef4b9d5 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/yaml/ServerConfigurationYamlSwapper.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/yaml/ServerConfigurationYamlSwapper.java
@@ -19,6 +19,7 @@ package org.apache.shardingsphere.scaling.core.config.yaml;
import
org.apache.shardingsphere.governance.core.yaml.swapper.GovernanceConfigurationYamlSwapper;
import
org.apache.shardingsphere.infra.yaml.config.swapper.YamlConfigurationSwapper;
+import
org.apache.shardingsphere.infra.yaml.config.swapper.mode.ModeConfigurationYamlSwapper;
import org.apache.shardingsphere.scaling.core.config.ServerConfiguration;
/**
@@ -34,8 +35,8 @@ public final class ServerConfigurationYamlSwapper implements
YamlConfigurationSw
result.getScaling().setPort(data.getPort());
result.getScaling().setBlockQueueSize(data.getBlockQueueSize());
result.getScaling().setWorkerThread(data.getWorkerThread());
- if (null != data.getGovernanceConfig()) {
-
result.setGovernance(governanceConfigurationYamlSwapper.swapToYamlConfiguration(data.getGovernanceConfig()));
+ if (null != data.getModeConfiguration()) {
+ result.setMode(new
ModeConfigurationYamlSwapper().swapToYamlConfiguration(data.getModeConfiguration()));
}
return result;
}
@@ -46,8 +47,8 @@ public final class ServerConfigurationYamlSwapper implements
YamlConfigurationSw
result.setPort(yamlConfig.getScaling().getPort());
result.setBlockQueueSize(yamlConfig.getScaling().getBlockQueueSize());
result.setWorkerThread(yamlConfig.getScaling().getWorkerThread());
- if (null != yamlConfig.getGovernance()) {
-
result.setGovernanceConfig(governanceConfigurationYamlSwapper.swapToObject(yamlConfig.getGovernance()));
+ if (null != yamlConfig.getMode()) {
+ result.setModeConfiguration(new
ModeConfigurationYamlSwapper().swapToObject(yamlConfig.getMode()));
}
return result;
}
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/yaml/YamlServerConfiguration.java
b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/yaml/YamlServerConfiguration.java
index 5b2c59d..5dbecbc 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/yaml/YamlServerConfiguration.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/config/yaml/YamlServerConfiguration.java
@@ -19,8 +19,8 @@ package org.apache.shardingsphere.scaling.core.config.yaml;
import lombok.Getter;
import lombok.Setter;
-import
org.apache.shardingsphere.governance.core.yaml.pojo.YamlGovernanceConfiguration;
import org.apache.shardingsphere.infra.yaml.config.pojo.YamlConfiguration;
+import
org.apache.shardingsphere.infra.yaml.config.pojo.mode.YamlModeConfiguration;
/**
* Global server configuration.
@@ -31,7 +31,7 @@ public final class YamlServerConfiguration implements
YamlConfiguration {
private YamlScalingConfiguration scaling = new YamlScalingConfiguration();
- private YamlGovernanceConfiguration governance;
+ private YamlModeConfiguration mode;
@Getter
@Setter
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/api/impl/GovernanceRepositoryAPIImplTest.java
b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/api/impl/GovernanceRepositoryAPIImplTest.java
index 7216e75..b60d5a0 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/api/impl/GovernanceRepositoryAPIImplTest.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/api/impl/GovernanceRepositoryAPIImplTest.java
@@ -18,8 +18,8 @@
package org.apache.shardingsphere.scaling.core.api.impl;
import
org.apache.shardingsphere.governance.repository.api.config.RegistryCenterConfiguration;
-import
org.apache.shardingsphere.governance.repository.api.config.GovernanceConfiguration;
import
org.apache.shardingsphere.governance.repository.api.listener.DataChangedEvent;
+import org.apache.shardingsphere.infra.mode.config.ModeConfiguration;
import org.apache.shardingsphere.scaling.core.api.GovernanceRepositoryAPI;
import org.apache.shardingsphere.scaling.core.api.ScalingAPIFactory;
import org.apache.shardingsphere.scaling.core.common.constant.ScalingConstant;
@@ -98,7 +98,7 @@ public final class GovernanceRepositoryAPIImplTest {
private static ServerConfiguration mockServerConfig() {
ServerConfiguration result = new ServerConfiguration();
- result.setGovernanceConfig(new GovernanceConfiguration(new
RegistryCenterConfiguration("Zookeeper", "test",
EmbedTestingServer.getConnectionString(), null), true));
+ result.setModeConfiguration(new ModeConfiguration("Cluster", new
RegistryCenterConfiguration("Zookeeper", "test",
EmbedTestingServer.getConnectionString(), null), true));
return result;
}
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/api/impl/ScalingAPIImplTest.java
b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/api/impl/ScalingAPIImplTest.java
index fa87ead..e0cd7bf 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/api/impl/ScalingAPIImplTest.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/api/impl/ScalingAPIImplTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.scaling.core.api.impl;
import lombok.SneakyThrows;
import
org.apache.shardingsphere.governance.repository.api.config.RegistryCenterConfiguration;
-import
org.apache.shardingsphere.governance.repository.api.config.GovernanceConfiguration;
+import org.apache.shardingsphere.infra.mode.config.ModeConfiguration;
import org.apache.shardingsphere.scaling.core.api.JobInfo;
import org.apache.shardingsphere.scaling.core.api.ScalingAPI;
import org.apache.shardingsphere.scaling.core.api.ScalingAPIFactory;
@@ -141,7 +141,7 @@ public final class ScalingAPIImplTest {
private static ServerConfiguration mockServerConfig() {
ServerConfiguration result = new ServerConfiguration();
- result.setGovernanceConfig(new GovernanceConfiguration(new
RegistryCenterConfiguration("Zookeeper", "test",
EmbedTestingServer.getConnectionString(), new Properties()), true));
+ result.setModeConfiguration(new ModeConfiguration("Cluster", new
RegistryCenterConfiguration("Zookeeper", "test",
EmbedTestingServer.getConnectionString(), new Properties()), true));
return result;
}
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/config/yaml/ServerConfigurationYamlSwapperTest.java
b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/config/yaml/ServerConfigurationYamlSwapperTest.java
index 44bc64e..04857cb 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/config/yaml/ServerConfigurationYamlSwapperTest.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/config/yaml/ServerConfigurationYamlSwapperTest.java
@@ -17,49 +17,58 @@
package org.apache.shardingsphere.scaling.core.config.yaml;
-import
org.apache.shardingsphere.governance.core.yaml.pojo.YamlRegistryCenterConfiguration;
-import
org.apache.shardingsphere.governance.core.yaml.pojo.YamlGovernanceConfiguration;
import
org.apache.shardingsphere.governance.repository.api.config.RegistryCenterConfiguration;
-import
org.apache.shardingsphere.governance.repository.api.config.GovernanceConfiguration;
+import org.apache.shardingsphere.infra.mode.config.ModeConfiguration;
+import org.apache.shardingsphere.infra.spi.ShardingSphereServiceLoader;
+import
org.apache.shardingsphere.infra.yaml.config.pojo.mode.YamlModeConfiguration;
+import
org.apache.shardingsphere.infra.yaml.config.pojo.mode.YamlPersistRepositoryConfiguration;
+import
org.apache.shardingsphere.infra.yaml.config.swapper.mode.PersistRepositoryConfigurationYamlSwapper;
import org.apache.shardingsphere.scaling.core.config.ServerConfiguration;
import org.junit.Test;
+import java.util.Properties;
+
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
public final class ServerConfigurationYamlSwapperTest {
+ static {
+
ShardingSphereServiceLoader.register(PersistRepositoryConfigurationYamlSwapper.class);
+ }
+
private final ServerConfigurationYamlSwapper
serverConfigurationYamlSwapper = new ServerConfigurationYamlSwapper();
@Test
public void assertSwapToYamlConfiguration() {
YamlServerConfiguration yamlServerConfig =
serverConfigurationYamlSwapper.swapToYamlConfiguration(mockServerConfig());
assertThat(yamlServerConfig.getScaling().getWorkerThread(), is(10));
-
assertThat(yamlServerConfig.getGovernance().getRegistryCenter().getNamespace(),
is("test"));
-
assertThat(yamlServerConfig.getGovernance().getRegistryCenter().getType(),
is("Zookeeper"));
+
assertThat(yamlServerConfig.getMode().getRepository().getProps().getProperty("namespace"),
is("test"));
+ assertThat(yamlServerConfig.getMode().getRepository().getType(),
is("Zookeeper"));
}
@Test
public void assertSwapToObject() {
ServerConfiguration serverConfig =
serverConfigurationYamlSwapper.swapToObject(mockYamlServerConfig());
assertThat(serverConfig.getWorkerThread(), is(10));
-
assertThat(serverConfig.getGovernanceConfig().getRegistryCenterConfiguration().getNamespace(),
is("test"));
+
assertThat(serverConfig.getModeConfiguration().getRepository().getProps().getProperty("namespace"),
is("test"));
}
private ServerConfiguration mockServerConfig() {
ServerConfiguration result = new ServerConfiguration();
result.setWorkerThread(10);
- result.setGovernanceConfig(new GovernanceConfiguration(new
RegistryCenterConfiguration("Zookeeper", "test", "localhost:2181", null),
false));
+ result.setModeConfiguration(new ModeConfiguration("Cluster", new
RegistryCenterConfiguration("Zookeeper", "test", "localhost:2181", new
Properties()), false));
return result;
}
private YamlServerConfiguration mockYamlServerConfig() {
+ YamlModeConfiguration config = new YamlModeConfiguration();
+ config.setType("Cluster");
+ YamlPersistRepositoryConfiguration repositoryConfig = new
YamlPersistRepositoryConfiguration();
+ repositoryConfig.getProps().setProperty("namespace", "test");
+ config.setRepository(repositoryConfig);
YamlServerConfiguration result = new YamlServerConfiguration();
- YamlGovernanceConfiguration config = new YamlGovernanceConfiguration();
- YamlRegistryCenterConfiguration registryCenterConfig = new
YamlRegistryCenterConfiguration();
- registryCenterConfig.setNamespace("test");
- config.setRegistryCenter(registryCenterConfig);
- result.setGovernance(config);
+ result.setMode(config);
result.getScaling().setWorkerThread(10);
return result;
}
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/FinishedCheckJobTest.java
b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/FinishedCheckJobTest.java
index 339b258..dc0b453 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/FinishedCheckJobTest.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/FinishedCheckJobTest.java
@@ -18,8 +18,8 @@
package org.apache.shardingsphere.scaling.core.job;
import lombok.SneakyThrows;
-import
org.apache.shardingsphere.governance.repository.api.config.GovernanceConfiguration;
import
org.apache.shardingsphere.governance.repository.api.config.RegistryCenterConfiguration;
+import org.apache.shardingsphere.infra.mode.config.ModeConfiguration;
import org.apache.shardingsphere.scaling.core.api.GovernanceRepositoryAPI;
import org.apache.shardingsphere.scaling.core.api.ScalingAPI;
import org.apache.shardingsphere.scaling.core.common.constant.ScalingConstant;
@@ -101,7 +101,7 @@ public final class FinishedCheckJobTest {
private static ServerConfiguration mockServerConfig() {
ServerConfiguration result = new ServerConfiguration();
- result.setGovernanceConfig(new GovernanceConfiguration(new
RegistryCenterConfiguration("Zookeeper", "test",
EmbedTestingServer.getConnectionString(), null), true));
+ result.setModeConfiguration(new ModeConfiguration("Cluster", new
RegistryCenterConfiguration("Zookeeper", "test",
EmbedTestingServer.getConnectionString(), null), true));
return result;
}
diff --git
a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/ScalingJobTest.java
b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/ScalingJobTest.java
index d066b73..bd6e584 100644
---
a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/ScalingJobTest.java
+++
b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/ScalingJobTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.scaling.core.job;
import lombok.SneakyThrows;
import org.apache.shardingsphere.elasticjob.api.ShardingContext;
import
org.apache.shardingsphere.governance.repository.api.config.RegistryCenterConfiguration;
-import
org.apache.shardingsphere.governance.repository.api.config.GovernanceConfiguration;
+import org.apache.shardingsphere.infra.mode.config.ModeConfiguration;
import org.apache.shardingsphere.infra.yaml.engine.YamlEngine;
import org.apache.shardingsphere.scaling.core.config.ScalingContext;
import org.apache.shardingsphere.scaling.core.config.ServerConfiguration;
@@ -66,7 +66,7 @@ public final class ScalingJobTest {
private static ServerConfiguration mockServerConfig() {
ServerConfiguration result = new ServerConfiguration();
- result.setGovernanceConfig(new GovernanceConfiguration(new
RegistryCenterConfiguration("Zookeeper", "test",
EmbedTestingServer.getConnectionString(), null), true));
+ result.setModeConfiguration(new ModeConfiguration("Cluster", new
RegistryCenterConfiguration("Zookeeper", "test",
EmbedTestingServer.getConnectionString(), null), true));
return result;
}
diff --git
a/shardingsphere-test/shardingsphere-integration-scaling-test/shardingsphere-integration-scaling-test-mysql/src/test/resources/docker/scaling/conf/server.yaml
b/shardingsphere-test/shardingsphere-integration-scaling-test/shardingsphere-integration-scaling-test-mysql/src/test/resources/docker/scaling/conf/server.yaml
index e036889..6b9311a 100644
---
a/shardingsphere-test/shardingsphere-integration-scaling-test/shardingsphere-integration-scaling-test-mysql/src/test/resources/docker/scaling/conf/server.yaml
+++
b/shardingsphere-test/shardingsphere-integration-scaling-test/shardingsphere-integration-scaling-test-mysql/src/test/resources/docker/scaling/conf/server.yaml
@@ -20,8 +20,10 @@ scaling:
blockQueueSize: 10000
workerThread: 30
-governance:
- registryCenter:
+mode:
+ type: Cluster
+ repository:
type: ZooKeeper
- namespace: governance_ds
- serverLists: zookeeper:2181
+ props:
+ namespace: governance_ds
+ serverLists: localhost:2181
diff --git
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-fixture/src/test/java/org/apache/shardingsphere/test/integration/junit/container/adapter/ShardingSphereAdapterContainer.java
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-fixture/src/test/java/org/apache/shardingsphere/test/integration/junit/container/adapter/ShardingSphereAdapterContainer.java
index 5da0898..bc42493 100644
---
a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-fixture/src/test/java/org/apache/shardingsphere/test/integration/junit/container/adapter/ShardingSphereAdapterContainer.java
+++
b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-integration-test-fixture/src/test/java/org/apache/shardingsphere/test/integration/junit/container/adapter/ShardingSphereAdapterContainer.java
@@ -54,10 +54,9 @@ public abstract class ShardingSphereAdapterContainer extends
ShardingSphereConta
private YamlUserConfiguration loadAuthentication(final ParameterizedArray
parameterizedArray) throws IOException {
YamlProxyServerConfiguration configuration = YamlEngine.unmarshal(
-
ByteStreams.toByteArray(this.getClass().getResourceAsStream("/docker/"
- + parameterizedArray.getScenario() + "/" +
parameterizedArray.getDatabaseType().getName().toLowerCase() +
"/proxy/conf/server.yaml")),
- YamlProxyServerConfiguration.class
- );
+ ByteStreams.toByteArray(this.getClass().getResourceAsStream(
+ "/docker/" + parameterizedArray.getScenario() + "/" +
parameterizedArray.getDatabaseType().getName().toLowerCase() +
"/proxy/conf/server.yaml")),
+ YamlProxyServerConfiguration.class);
return
YamlUsersConfigurationConverter.convertYamlUserConfiguration(getUsersFromConfiguration(configuration))
.stream()
.filter(each -> "root".equals(each.getUsername()))
@@ -79,7 +78,7 @@ public abstract class ShardingSphereAdapterContainer extends
ShardingSphereConta
* @return governance data source
*/
public abstract DataSource getGovernanceDataSource(String serverLists);
-
+
private Collection<String> getUsersFromConfiguration(final
YamlProxyServerConfiguration serverConfig) {
for (YamlRuleConfiguration config : serverConfig.getRules()) {
if (config instanceof YamlAuthorityRuleConfiguration) {