You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by pa...@apache.org on 2021/03/02 08:01:02 UTC
[shardingsphere] branch master updated: Optimize ScalingEntry
(#9562)
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 6e07d0e Optimize ScalingEntry (#9562)
6e07d0e is described below
commit 6e07d0e425d74a1e40fc68c595229ad4067fafb3
Author: 邱鹿 Lucas <lu...@163.com>
AuthorDate: Tue Mar 2 16:00:33 2021 +0800
Optimize ScalingEntry (#9562)
* Optimize ScalingEntry
* Optimize FixtureScalingEntry
Co-authored-by: qiulu3 <Lucas209910>
---
.../scaling/web/HttpServerHandlerTest.java | 2 +-
.../scaling/core/api/ScalingAPI.java | 2 +-
.../scaling/core/api/impl/ScalingAPIImpl.java | 8 +-
.../scaling/core/job/FinishedCheckJob.java | 2 +-
...istencyChecker.java => EnvironmentChecker.java} | 19 +--
...Factory.java => EnvironmentCheckerFactory.java} | 24 +++-
.../AbstractDataConsistencyChecker.java | 2 +-
.../DataConsistencyCheckResult.java | 2 +-
.../{ => consistency}/DataConsistencyChecker.java | 2 +-
.../source}/AbstractDataSourceChecker.java | 2 +-
.../source}/DataSourceChecker.java | 2 +-
.../job/position/PositionInitializerFactory.java | 2 +-
.../core/job/preparer/ScalingJobPreparer.java | 8 +-
.../preparer/checker/DataSourceCheckerFactory.java | 43 ------
.../scaling/core/spi/ScalingEntry.java | 18 +--
.../scaling/core/api/impl/ScalingAPIImplTest.java | 2 +-
.../executor/importer/AbstractSqlBuilderTest.java | 4 +-
.../fixture/FixtureDataConsistencyChecker.java | 6 +-
...eChecker.java => FixtureDataSourceChecker.java} | 4 +-
...Builder.java => FixtureEnvironmentChecker.java} | 21 ++-
...ixtureNopImporter.java => FixtureImporter.java} | 4 +-
...alDumper.java => FixtureIncrementalDumper.java} | 4 +-
...toryDumper.java => FixtureInventoryDumper.java} | 4 +-
.../core/fixture/FixtureRegistryRepository.java | 144 ---------------------
...alingSQLBuilder.java => FixtureSQLBuilder.java} | 4 +-
...2ScalingEntry.java => FixtureScalingEntry.java} | 24 ++--
.../scaling/core/job/FinishedCheckJobTest.java | 2 +-
.../check/AbstractDataConsistencyCheckerTest.java | 4 +-
.../AbstractDataSourceCheckerTest.java | 3 +-
.../scaling/core/spi/ScalingEntryLoaderTest.java | 4 +-
...re.governance.repository.api.RegistryRepository | 18 ---
...he.shardingsphere.scaling.core.spi.ScalingEntry | 2 +-
.../scaling/mysql/MySQLScalingEntry.java | 20 +--
...nlogDumper.java => MySQLIncrementalDumper.java} | 6 +-
.../{ => checker}/MySQLDataConsistencyChecker.java | 5 +-
.../{ => checker}/MySQLDataSourceChecker.java | 5 +-
.../checker/MySQLEnvironmentChecker.java} | 28 ++--
.../scaling/mysql/MySQLScalingEntryTest.java | 18 +--
.../component/MySQLDataSourceCheckerTest.java | 1 +
...erTest.java => MySQLIncrementalDumperTest.java} | 22 ++--
.../scaling/postgresql/PostgreSQLScalingEntry.java | 14 +-
.../PostgreSQLDataConsistencyChecker.java | 5 +-
.../{ => checker}/PostgreSQLDataSourceChecker.java | 5 +-
.../checker/PostgreSQLEnvironmentChecker.java} | 21 +--
.../postgresql/PostgreSQLScalingEntryTest.java | 14 +-
.../component/PostgreSQLDataSourceCheckerTest.java | 1 +
46 files changed, 168 insertions(+), 389 deletions(-)
diff --git a/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/java/org/apache/shardingsphere/scaling/web/HttpServerHandlerTest.java b/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/java/org/apache/shardingsphere/scaling/web/HttpServerHandlerTest.java
index 434b7c2..839c6a3 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/java/org/apache/shardingsphere/scaling/web/HttpServerHandlerTest.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-bootstrap/src/test/java/org/apache/shardingsphere/scaling/web/HttpServerHandlerTest.java
@@ -34,7 +34,7 @@ import org.apache.shardingsphere.scaling.core.api.JobInfo;
import org.apache.shardingsphere.scaling.core.api.ScalingAPI;
import org.apache.shardingsphere.scaling.core.config.JobConfiguration;
import org.apache.shardingsphere.scaling.core.job.JobContext;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyCheckResult;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyCheckResult;
import org.apache.shardingsphere.scaling.core.job.progress.JobProgress;
import org.apache.shardingsphere.scaling.core.util.ReflectionUtil;
import org.apache.shardingsphere.scaling.util.ServerConfigurationInitializer;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/ScalingAPI.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/ScalingAPI.java
index de78cf0..fb56f8d 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/ScalingAPI.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/ScalingAPI.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.scaling.core.api;
import org.apache.shardingsphere.scaling.core.config.JobConfiguration;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyCheckResult;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyCheckResult;
import org.apache.shardingsphere.scaling.core.job.progress.JobProgress;
import java.sql.SQLException;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/impl/ScalingAPIImpl.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/impl/ScalingAPIImpl.java
index ca68fb8..8c3ff12 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/impl/ScalingAPIImpl.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/api/impl/ScalingAPIImpl.java
@@ -28,9 +28,9 @@ import org.apache.shardingsphere.scaling.core.common.exception.ScalingJobNotFoun
import org.apache.shardingsphere.scaling.core.config.JobConfiguration;
import org.apache.shardingsphere.scaling.core.job.JobContext;
import org.apache.shardingsphere.scaling.core.job.ScalingJob;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyCheckResult;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyChecker;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyCheckerFactory;
+import org.apache.shardingsphere.scaling.core.job.check.EnvironmentCheckerFactory;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyCheckResult;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyChecker;
import org.apache.shardingsphere.scaling.core.job.environment.ScalingEnvironmentManager;
import org.apache.shardingsphere.scaling.core.job.progress.JobProgress;
import org.apache.shardingsphere.scaling.core.util.JobConfigurationUtil;
@@ -124,7 +124,7 @@ public final class ScalingAPIImpl implements ScalingAPI {
@Override
public Map<String, DataConsistencyCheckResult> dataConsistencyCheck(final long jobId) {
- DataConsistencyChecker dataConsistencyChecker = DataConsistencyCheckerFactory.newInstance(new JobContext(getJobConfig(jobId)));
+ DataConsistencyChecker dataConsistencyChecker = EnvironmentCheckerFactory.newInstance(new JobContext(getJobConfig(jobId)));
Map<String, DataConsistencyCheckResult> result = dataConsistencyChecker.countCheck();
if (result.values().stream().allMatch(DataConsistencyCheckResult::isCountValid)) {
Map<String, Boolean> dataCheckResult = dataConsistencyChecker.dataCheck();
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/FinishedCheckJob.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/FinishedCheckJob.java
index fa43389..450ff87 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/FinishedCheckJob.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/FinishedCheckJob.java
@@ -28,7 +28,7 @@ import org.apache.shardingsphere.scaling.core.api.ScalingAPIFactory;
import org.apache.shardingsphere.scaling.core.common.constant.ScalingConstant;
import org.apache.shardingsphere.scaling.core.config.JobConfiguration;
import org.apache.shardingsphere.scaling.core.config.WorkflowConfiguration;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyCheckResult;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyCheckResult;
import org.apache.shardingsphere.scaling.core.util.ScalingTaskUtil;
import org.apache.shardingsphere.scaling.core.util.ThreadUtil;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyChecker.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/EnvironmentChecker.java
similarity index 62%
copy from shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyChecker.java
copy to shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/EnvironmentChecker.java
index bf506ab..84e9434 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/EnvironmentChecker.java
@@ -17,24 +17,25 @@
package org.apache.shardingsphere.scaling.core.job.check;
-import java.util.Map;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyChecker;
+import org.apache.shardingsphere.scaling.core.job.check.source.DataSourceChecker;
/**
- * Data consistency checker interface.
+ * Environment checker.
*/
-public interface DataConsistencyChecker {
+public interface EnvironmentChecker {
/**
- * Check each table count is valid.
+ * Get data source checker type.
*
- * @return count check result
+ * @return data source checker type.
*/
- Map<String, DataConsistencyCheckResult> countCheck();
+ Class<? extends DataSourceChecker> getDataSourceCheckerClass();
/**
- * Check each table data is valid.
+ * Get data consistency checker type.
*
- * @return data is valid or not
+ * @return data consistency checker type.
*/
- Map<String, Boolean> dataCheck();
+ Class<? extends DataConsistencyChecker> getDataConsistencyCheckerClass();
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyCheckerFactory.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/EnvironmentCheckerFactory.java
similarity index 61%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyCheckerFactory.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/EnvironmentCheckerFactory.java
index 03a454a..3d5f659 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyCheckerFactory.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/EnvironmentCheckerFactory.java
@@ -17,18 +17,18 @@
package org.apache.shardingsphere.scaling.core.job.check;
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
import lombok.SneakyThrows;
import org.apache.shardingsphere.scaling.core.job.JobContext;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyChecker;
+import org.apache.shardingsphere.scaling.core.job.check.source.DataSourceChecker;
import org.apache.shardingsphere.scaling.core.spi.ScalingEntry;
import org.apache.shardingsphere.scaling.core.spi.ScalingEntryLoader;
/**
- * Data consistency checker factory.
+ * Environment checker factory.
*/
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class DataConsistencyCheckerFactory {
+public final class EnvironmentCheckerFactory {
+
/**
* Create data consistency checker instance.
@@ -39,6 +39,18 @@ public final class DataConsistencyCheckerFactory {
@SneakyThrows(ReflectiveOperationException.class)
public static DataConsistencyChecker newInstance(final JobContext jobContext) {
ScalingEntry scalingEntry = ScalingEntryLoader.getInstance(jobContext.getJobConfig().getHandleConfig().getDatabaseType());
- return scalingEntry.getDataConsistencyCheckerClass().getConstructor(JobContext.class).newInstance(jobContext);
+ return scalingEntry.getEnvironmentCheckerClass().getConstructor().newInstance().getDataConsistencyCheckerClass().getConstructor(JobContext.class).newInstance(jobContext);
+ }
+
+ /**
+ * Create data source checker instance.
+ *
+ * @param databaseType database type
+ * @return data source checker
+ */
+ @SneakyThrows(ReflectiveOperationException.class)
+ public static DataSourceChecker newInstance(final String databaseType) {
+ ScalingEntry scalingEntry = ScalingEntryLoader.getInstance(databaseType);
+ return scalingEntry.getEnvironmentCheckerClass().getConstructor().newInstance().getDataSourceCheckerClass().getConstructor().newInstance();
}
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/AbstractDataConsistencyChecker.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/consistency/AbstractDataConsistencyChecker.java
similarity index 98%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/AbstractDataConsistencyChecker.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/consistency/AbstractDataConsistencyChecker.java
index c83c94e..e2861a5 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/AbstractDataConsistencyChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/consistency/AbstractDataConsistencyChecker.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.core.job.check;
+package org.apache.shardingsphere.scaling.core.job.check.consistency;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyCheckResult.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/consistency/DataConsistencyCheckResult.java
similarity index 95%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyCheckResult.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/consistency/DataConsistencyCheckResult.java
index 40d293e..e039a4d 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyCheckResult.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/consistency/DataConsistencyCheckResult.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.core.job.check;
+package org.apache.shardingsphere.scaling.core.job.check.consistency;
import lombok.Getter;
import lombok.Setter;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyChecker.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/consistency/DataConsistencyChecker.java
similarity index 94%
copy from shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyChecker.java
copy to shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/consistency/DataConsistencyChecker.java
index bf506ab..758a243 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/consistency/DataConsistencyChecker.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.core.job.check;
+package org.apache.shardingsphere.scaling.core.job.check.consistency;
import java.util.Map;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/AbstractDataSourceChecker.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/source/AbstractDataSourceChecker.java
similarity index 97%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/AbstractDataSourceChecker.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/source/AbstractDataSourceChecker.java
index 052b108..47d15a4 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/AbstractDataSourceChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/source/AbstractDataSourceChecker.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.core.job.preparer.checker;
+package org.apache.shardingsphere.scaling.core.job.check.source;
import org.apache.shardingsphere.scaling.core.common.exception.PrepareFailedException;
import org.apache.shardingsphere.scaling.core.common.sqlbuilder.ScalingSQLBuilder;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/DataSourceChecker.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/source/DataSourceChecker.java
similarity index 96%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/DataSourceChecker.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/source/DataSourceChecker.java
index eec3083..fa2de9c 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/DataSourceChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/source/DataSourceChecker.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.core.job.preparer.checker;
+package org.apache.shardingsphere.scaling.core.job.check.source;
import javax.sql.DataSource;
import java.util.Collection;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/PositionInitializerFactory.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/PositionInitializerFactory.java
index 0bbf66f..55fd35d 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/PositionInitializerFactory.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/PositionInitializerFactory.java
@@ -36,6 +36,6 @@ public final class PositionInitializerFactory {
*/
@SneakyThrows(ReflectiveOperationException.class)
public static PositionInitializer newInstance(final String databaseType) {
- return ScalingEntryLoader.getInstance(databaseType).getPositionInitializer().newInstance();
+ return ScalingEntryLoader.getInstance(databaseType).getPositionInitializerClass().newInstance();
}
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/ScalingJobPreparer.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/ScalingJobPreparer.java
index 94fc1d9..9120a54 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/ScalingJobPreparer.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/ScalingJobPreparer.java
@@ -23,10 +23,10 @@ import org.apache.shardingsphere.scaling.core.common.exception.PrepareFailedExce
import org.apache.shardingsphere.scaling.core.config.TaskConfiguration;
import org.apache.shardingsphere.scaling.core.job.JobContext;
import org.apache.shardingsphere.scaling.core.job.JobStatus;
+import org.apache.shardingsphere.scaling.core.job.check.EnvironmentCheckerFactory;
+import org.apache.shardingsphere.scaling.core.job.check.source.DataSourceChecker;
import org.apache.shardingsphere.scaling.core.job.position.PositionInitializerFactory;
import org.apache.shardingsphere.scaling.core.job.position.ScalingPosition;
-import org.apache.shardingsphere.scaling.core.job.preparer.checker.DataSourceChecker;
-import org.apache.shardingsphere.scaling.core.job.preparer.checker.DataSourceCheckerFactory;
import org.apache.shardingsphere.scaling.core.job.preparer.splitter.InventoryTaskSplitter;
import org.apache.shardingsphere.scaling.core.job.task.ScalingTaskFactory;
import org.apache.shardingsphere.scaling.core.job.task.inventory.InventoryTask;
@@ -67,14 +67,14 @@ public final class ScalingJobPreparer {
}
private void checkSourceDataSources(final JobContext jobContext, final DataSourceManager dataSourceManager) {
- DataSourceChecker dataSourceChecker = DataSourceCheckerFactory.newInstance(jobContext.getJobConfig().getHandleConfig().getDatabaseType());
+ DataSourceChecker dataSourceChecker = EnvironmentCheckerFactory.newInstance(jobContext.getJobConfig().getHandleConfig().getDatabaseType());
dataSourceChecker.checkConnection(dataSourceManager.getCachedDataSources().values());
dataSourceChecker.checkPrivilege(dataSourceManager.getSourceDataSources().values());
dataSourceChecker.checkVariable(dataSourceManager.getSourceDataSources().values());
}
private void checkTargetDataSources(final JobContext jobContext, final DataSourceManager dataSourceManager) {
- DataSourceChecker dataSourceChecker = DataSourceCheckerFactory.newInstance(jobContext.getJobConfig().getHandleConfig().getDatabaseType());
+ DataSourceChecker dataSourceChecker = EnvironmentCheckerFactory.newInstance(jobContext.getJobConfig().getHandleConfig().getDatabaseType());
dataSourceChecker.checkTargetTable(dataSourceManager.getTargetDataSources().values(), jobContext.getTaskConfigs().iterator().next().getImporterConfig().getShardingColumnsMap().keySet());
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/DataSourceCheckerFactory.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/DataSourceCheckerFactory.java
deleted file mode 100644
index 679506b..0000000
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/DataSourceCheckerFactory.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.scaling.core.job.preparer.checker;
-
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
-import lombok.SneakyThrows;
-import org.apache.shardingsphere.scaling.core.spi.ScalingEntry;
-import org.apache.shardingsphere.scaling.core.spi.ScalingEntryLoader;
-
-/**
- * Data source checker factory.
- */
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class DataSourceCheckerFactory {
-
- /**
- * New instance of data source checker.
- *
- * @param databaseType database type
- * @return data source checker
- */
- @SneakyThrows(ReflectiveOperationException.class)
- public static DataSourceChecker newInstance(final String databaseType) {
- ScalingEntry scalingEntry = ScalingEntryLoader.getInstance(databaseType);
- return scalingEntry.getDataSourceCheckerClass().getConstructor().newInstance();
- }
-}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/spi/ScalingEntry.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/spi/ScalingEntry.java
index fdc5087..448ebc0 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/spi/ScalingEntry.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/spi/ScalingEntry.java
@@ -22,9 +22,8 @@ import org.apache.shardingsphere.scaling.core.common.sqlbuilder.ScalingSQLBuilde
import org.apache.shardingsphere.scaling.core.executor.dumper.IncrementalDumper;
import org.apache.shardingsphere.scaling.core.executor.dumper.InventoryDumper;
import org.apache.shardingsphere.scaling.core.executor.importer.Importer;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyChecker;
+import org.apache.shardingsphere.scaling.core.job.check.EnvironmentChecker;
import org.apache.shardingsphere.scaling.core.job.position.PositionInitializer;
-import org.apache.shardingsphere.scaling.core.job.preparer.checker.DataSourceChecker;
/**
* Scaling entry.
@@ -50,7 +49,7 @@ public interface ScalingEntry extends DatabaseTypeAwareSPI {
*
* @return position initializer type
*/
- Class<? extends PositionInitializer> getPositionInitializer();
+ Class<? extends PositionInitializer> getPositionInitializerClass();
/**
* Get importer type.
@@ -60,18 +59,11 @@ public interface ScalingEntry extends DatabaseTypeAwareSPI {
Class<? extends Importer> getImporterClass();
/**
- * Get data source checker.
+ * Get environment checker type.
*
- * @return data source checker type
+ * @return environment checker type
*/
- Class<? extends DataSourceChecker> getDataSourceCheckerClass();
-
- /**
- * Get data consistency checker.
- *
- * @return data consistency checker type
- */
- Class<? extends DataConsistencyChecker> getDataConsistencyCheckerClass();
+ Class<? extends EnvironmentChecker> getEnvironmentCheckerClass();
/**
* Get SQL builder class.
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 d932eb2..5c5f281 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
@@ -28,7 +28,7 @@ import org.apache.shardingsphere.scaling.core.config.RuleConfiguration;
import org.apache.shardingsphere.scaling.core.config.ScalingContext;
import org.apache.shardingsphere.scaling.core.config.ServerConfiguration;
import org.apache.shardingsphere.scaling.core.fixture.EmbedTestingServer;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyCheckResult;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyCheckResult;
import org.apache.shardingsphere.scaling.core.job.progress.JobProgress;
import org.apache.shardingsphere.scaling.core.util.ReflectionUtil;
import org.apache.shardingsphere.scaling.core.util.ResourceUtil;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/executor/importer/AbstractSqlBuilderTest.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/executor/importer/AbstractSqlBuilderTest.java
index 5949c45..aca5c0c 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/executor/importer/AbstractSqlBuilderTest.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/executor/importer/AbstractSqlBuilderTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.scaling.core.common.record.Column;
import org.apache.shardingsphere.scaling.core.common.record.DataRecord;
import org.apache.shardingsphere.scaling.core.common.record.RecordUtil;
import org.apache.shardingsphere.scaling.core.common.sqlbuilder.ScalingSQLBuilder;
-import org.apache.shardingsphere.scaling.core.fixture.FixtureScalingSQLBuilder;
+import org.apache.shardingsphere.scaling.core.fixture.FixtureSQLBuilder;
import org.apache.shardingsphere.scaling.core.job.position.PlaceholderPosition;
import org.junit.Test;
@@ -34,7 +34,7 @@ import static org.junit.Assert.assertThat;
public final class AbstractSqlBuilderTest {
- private final ScalingSQLBuilder scalingSqlBuilder = new FixtureScalingSQLBuilder(Maps.newHashMap());
+ private final ScalingSQLBuilder scalingSqlBuilder = new FixtureSQLBuilder(Maps.newHashMap());
@Test
public void assertBuildInsertSQL() {
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureDataConsistencyChecker.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureDataConsistencyChecker.java
index e1474aa..232226c 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureDataConsistencyChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureDataConsistencyChecker.java
@@ -20,8 +20,8 @@ package org.apache.shardingsphere.scaling.core.fixture;
import com.google.common.collect.Maps;
import org.apache.shardingsphere.scaling.core.common.sqlbuilder.ScalingSQLBuilder;
import org.apache.shardingsphere.scaling.core.job.JobContext;
-import org.apache.shardingsphere.scaling.core.job.check.AbstractDataConsistencyChecker;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyCheckResult;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.AbstractDataConsistencyChecker;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyCheckResult;
import java.util.Collections;
import java.util.Map;
@@ -44,6 +44,6 @@ public final class FixtureDataConsistencyChecker extends AbstractDataConsistency
@Override
protected ScalingSQLBuilder getSqlBuilder() {
- return new FixtureScalingSQLBuilder(Maps.newHashMap());
+ return new FixtureSQLBuilder(Maps.newHashMap());
}
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2DataSourceChecker.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureDataSourceChecker.java
similarity index 89%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2DataSourceChecker.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureDataSourceChecker.java
index fae4f29..d9c1954 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2DataSourceChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureDataSourceChecker.java
@@ -17,12 +17,12 @@
package org.apache.shardingsphere.scaling.core.fixture;
-import org.apache.shardingsphere.scaling.core.job.preparer.checker.DataSourceChecker;
+import org.apache.shardingsphere.scaling.core.job.check.source.DataSourceChecker;
import javax.sql.DataSource;
import java.util.Collection;
-public final class FixtureH2DataSourceChecker implements DataSourceChecker {
+public final class FixtureDataSourceChecker implements DataSourceChecker {
@Override
public void checkConnection(final Collection<? extends DataSource> dataSources) {
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingSQLBuilder.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureEnvironmentChecker.java
similarity index 60%
copy from shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingSQLBuilder.java
copy to shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureEnvironmentChecker.java
index 9c59296..0a8066e 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingSQLBuilder.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureEnvironmentChecker.java
@@ -17,24 +17,19 @@
package org.apache.shardingsphere.scaling.core.fixture;
-import org.apache.shardingsphere.scaling.core.common.sqlbuilder.AbstractScalingSQLBuilder;
+import org.apache.shardingsphere.scaling.core.job.check.EnvironmentChecker;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyChecker;
+import org.apache.shardingsphere.scaling.core.job.check.source.DataSourceChecker;
-import java.util.Map;
-import java.util.Set;
-
-public final class FixtureScalingSQLBuilder extends AbstractScalingSQLBuilder {
-
- public FixtureScalingSQLBuilder(final Map<String, Set<String>> shardingColumnsMap) {
- super(shardingColumnsMap);
- }
+public final class FixtureEnvironmentChecker implements EnvironmentChecker {
@Override
- protected String getLeftIdentifierQuoteString() {
- return "`";
+ public Class<? extends DataSourceChecker> getDataSourceCheckerClass() {
+ return FixtureDataSourceChecker.class;
}
@Override
- protected String getRightIdentifierQuoteString() {
- return "`";
+ public Class<? extends DataConsistencyChecker> getDataConsistencyCheckerClass() {
+ return FixtureDataConsistencyChecker.class;
}
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureNopImporter.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureImporter.java
similarity index 89%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureNopImporter.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureImporter.java
index 3d4d1a6..ed32b4a 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureNopImporter.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureImporter.java
@@ -22,9 +22,9 @@ import org.apache.shardingsphere.scaling.core.common.datasource.DataSourceManage
import org.apache.shardingsphere.scaling.core.config.ImporterConfiguration;
import org.apache.shardingsphere.scaling.core.executor.importer.Importer;
-public final class FixtureNopImporter implements Importer {
+public final class FixtureImporter implements Importer {
- public FixtureNopImporter(final ImporterConfiguration importerConfig, final DataSourceManager dataSourceManager) {
+ public FixtureImporter(final ImporterConfiguration importerConfig, final DataSourceManager dataSourceManager) {
}
@Override
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2IncrementalDumper.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureIncrementalDumper.java
similarity index 87%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2IncrementalDumper.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureIncrementalDumper.java
index f872216..47a5ed1 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2IncrementalDumper.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureIncrementalDumper.java
@@ -22,9 +22,9 @@ import org.apache.shardingsphere.scaling.core.config.DumperConfiguration;
import org.apache.shardingsphere.scaling.core.executor.dumper.IncrementalDumper;
import org.apache.shardingsphere.scaling.core.job.position.ScalingPosition;
-public final class FixtureH2IncrementalDumper implements IncrementalDumper {
+public final class FixtureIncrementalDumper implements IncrementalDumper {
- public FixtureH2IncrementalDumper(final DumperConfiguration dumperConfig, final ScalingPosition<?> position) {
+ public FixtureIncrementalDumper(final DumperConfiguration dumperConfig, final ScalingPosition<?> position) {
}
@Override
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2InventoryDumper.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureInventoryDumper.java
similarity index 87%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2InventoryDumper.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureInventoryDumper.java
index e7c9f68..d653080 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2InventoryDumper.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureInventoryDumper.java
@@ -25,9 +25,9 @@ import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
-public final class FixtureH2InventoryDumper extends AbstractInventoryDumper {
+public final class FixtureInventoryDumper extends AbstractInventoryDumper {
- public FixtureH2InventoryDumper(final InventoryDumperConfiguration dumperConfig, final DataSourceManager dataSourceManager) {
+ public FixtureInventoryDumper(final InventoryDumperConfiguration dumperConfig, final DataSourceManager dataSourceManager) {
super(dumperConfig, dataSourceManager);
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureRegistryRepository.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureRegistryRepository.java
deleted file mode 100644
index bab5023..0000000
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureRegistryRepository.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.scaling.core.fixture;
-
-import com.google.common.collect.Maps;
-import lombok.Getter;
-import lombok.Setter;
-import org.apache.shardingsphere.governance.repository.api.ConfigurationRepository;
-import org.apache.shardingsphere.governance.repository.api.RegistryRepository;
-import org.apache.shardingsphere.governance.repository.api.config.GovernanceCenterConfiguration;
-import org.apache.shardingsphere.governance.repository.api.listener.DataChangedEventListener;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.TimeUnit;
-
-public final class FixtureRegistryRepository implements RegistryRepository, ConfigurationRepository {
-
- private static final Node REGISTRY_DATA = new Node();
-
- @Override
- public void init(final String name, final GovernanceCenterConfiguration config) {
- }
-
- @Override
- public String get(final String key) {
- String[] paths = key.split("/");
- Node temp = REGISTRY_DATA;
- for (String path : paths) {
- if (null == temp) {
- return null;
- }
- temp = temp.get(path);
- }
- return null == temp ? null : temp.getValue();
- }
-
- @Override
- public List<String> getChildrenKeys(final String key) {
- String[] paths = key.split("/");
- Node temp = REGISTRY_DATA;
- for (String path : paths) {
- if (null == temp) {
- return Collections.emptyList();
- }
- temp = temp.get(path);
- }
- return null == temp ? Collections.emptyList() : new ArrayList<>(temp.getChildren().keySet());
- }
-
- @Override
- public void persist(final String key, final String value) {
- String[] paths = key.split("/");
- Node temp = REGISTRY_DATA;
- for (int i = 0; i < paths.length; i++) {
- if (i != paths.length - 1) {
- temp.add(paths[i]);
- } else {
- temp.put(paths[i], value);
- }
- temp = temp.get(paths[i]);
- }
- }
-
- @Override
- public void persistEphemeral(final String key, final String value) {
- persist(key, value);
- }
-
- @Override
- public boolean tryLock(final String key, final long time, final TimeUnit unit) {
- return false;
- }
-
- @Override
- public void releaseLock(final String key) {
- }
-
- @Override
- public void delete(final String key) {
- }
-
- @Override
- public void watch(final String key, final DataChangedEventListener listener) {
- }
-
- @Override
- public void close() {
- REGISTRY_DATA.clear();
- }
-
- @Override
- public String getType() {
- return "REG_FIXTURE";
- }
-
- @Getter
- @Setter
- private static class Node {
-
- private String value;
-
- private Map<String, Node> children = Maps.newHashMap();
-
- public void add(final String key) {
- if (!children.containsKey(key)) {
- children.put(key, new Node());
- }
- }
-
- public void put(final String key, final String value) {
- if (!children.containsKey(key)) {
- children.put(key, new Node());
- }
- children.get(key).setValue(value);
- }
-
- public Node get(final String key) {
- return children.get(key);
- }
-
- public void clear() {
- value = null;
- children.clear();
- }
- }
-}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingSQLBuilder.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureSQLBuilder.java
similarity index 88%
copy from shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingSQLBuilder.java
copy to shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureSQLBuilder.java
index 9c59296..29d8ae0 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingSQLBuilder.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureSQLBuilder.java
@@ -22,9 +22,9 @@ import org.apache.shardingsphere.scaling.core.common.sqlbuilder.AbstractScalingS
import java.util.Map;
import java.util.Set;
-public final class FixtureScalingSQLBuilder extends AbstractScalingSQLBuilder {
+public final class FixtureSQLBuilder extends AbstractScalingSQLBuilder {
- public FixtureScalingSQLBuilder(final Map<String, Set<String>> shardingColumnsMap) {
+ public FixtureSQLBuilder(final Map<String, Set<String>> shardingColumnsMap) {
super(shardingColumnsMap);
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2ScalingEntry.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingEntry.java
similarity index 73%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2ScalingEntry.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingEntry.java
index 478f9aa..f1e7315 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureH2ScalingEntry.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingEntry.java
@@ -21,46 +21,40 @@ import org.apache.shardingsphere.scaling.core.common.sqlbuilder.ScalingSQLBuilde
import org.apache.shardingsphere.scaling.core.executor.dumper.IncrementalDumper;
import org.apache.shardingsphere.scaling.core.executor.dumper.InventoryDumper;
import org.apache.shardingsphere.scaling.core.executor.importer.Importer;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyChecker;
+import org.apache.shardingsphere.scaling.core.job.check.EnvironmentChecker;
import org.apache.shardingsphere.scaling.core.job.position.PositionInitializer;
-import org.apache.shardingsphere.scaling.core.job.preparer.checker.DataSourceChecker;
import org.apache.shardingsphere.scaling.core.spi.ScalingEntry;
-public final class FixtureH2ScalingEntry implements ScalingEntry {
+public final class FixtureScalingEntry implements ScalingEntry {
@Override
public Class<? extends InventoryDumper> getInventoryDumperClass() {
- return FixtureH2InventoryDumper.class;
+ return FixtureInventoryDumper.class;
}
@Override
public Class<? extends IncrementalDumper> getIncrementalDumperClass() {
- return FixtureH2IncrementalDumper.class;
+ return FixtureIncrementalDumper.class;
}
@Override
- public Class<? extends PositionInitializer> getPositionInitializer() {
+ public Class<? extends PositionInitializer> getPositionInitializerClass() {
return FixturePositionInitializer.class;
}
@Override
public Class<? extends Importer> getImporterClass() {
- return FixtureNopImporter.class;
+ return FixtureImporter.class;
}
@Override
- public Class<? extends DataSourceChecker> getDataSourceCheckerClass() {
- return FixtureH2DataSourceChecker.class;
- }
-
- @Override
- public Class<? extends DataConsistencyChecker> getDataConsistencyCheckerClass() {
- return FixtureDataConsistencyChecker.class;
+ public Class<? extends EnvironmentChecker> getEnvironmentCheckerClass() {
+ return FixtureEnvironmentChecker.class;
}
@Override
public Class<? extends ScalingSQLBuilder> getSQLBuilderClass() {
- return FixtureScalingSQLBuilder.class;
+ return FixtureSQLBuilder.class;
}
@Override
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 d03f30e..799ff5a 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
@@ -30,7 +30,7 @@ import org.apache.shardingsphere.scaling.core.config.ScalingContext;
import org.apache.shardingsphere.scaling.core.config.ServerConfiguration;
import org.apache.shardingsphere.scaling.core.config.WorkflowConfiguration;
import org.apache.shardingsphere.scaling.core.fixture.EmbedTestingServer;
-import org.apache.shardingsphere.scaling.core.job.check.DataConsistencyCheckResult;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyCheckResult;
import org.apache.shardingsphere.scaling.core.util.ReflectionUtil;
import org.apache.shardingsphere.scaling.core.util.ResourceUtil;
import org.junit.AfterClass;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/check/AbstractDataConsistencyCheckerTest.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/check/AbstractDataConsistencyCheckerTest.java
index b55466d..09ab29a 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/check/AbstractDataConsistencyCheckerTest.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/check/AbstractDataConsistencyCheckerTest.java
@@ -21,6 +21,8 @@ import lombok.SneakyThrows;
import org.apache.shardingsphere.scaling.core.common.datasource.DataSourceManager;
import org.apache.shardingsphere.scaling.core.config.datasource.ScalingDataSourceConfiguration;
import org.apache.shardingsphere.scaling.core.job.JobContext;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyCheckResult;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.DataConsistencyChecker;
import org.apache.shardingsphere.scaling.core.util.ResourceUtil;
import org.junit.Test;
@@ -39,7 +41,7 @@ public final class AbstractDataConsistencyCheckerTest {
@Test
public void assertCountCheck() {
JobContext jobContext = new JobContext(ResourceUtil.mockJobConfig());
- DataConsistencyChecker dataConsistencyChecker = DataConsistencyCheckerFactory.newInstance(jobContext);
+ DataConsistencyChecker dataConsistencyChecker = EnvironmentCheckerFactory.newInstance(jobContext);
initTableData(jobContext.getTaskConfigs().get(0).getDumperConfig().getDataSourceConfig());
initTableData(jobContext.getTaskConfigs().get(0).getImporterConfig().getDataSourceConfig());
Map<String, DataConsistencyCheckResult> resultMap = dataConsistencyChecker.countCheck();
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/AbstractDataSourceCheckerTest.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/check/AbstractDataSourceCheckerTest.java
similarity index 94%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/AbstractDataSourceCheckerTest.java
rename to shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/check/AbstractDataSourceCheckerTest.java
index 623a218..1325a81 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/preparer/checker/AbstractDataSourceCheckerTest.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/job/check/AbstractDataSourceCheckerTest.java
@@ -15,10 +15,11 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.core.job.preparer.checker;
+package org.apache.shardingsphere.scaling.core.job.check;
import org.apache.shardingsphere.scaling.core.common.exception.PrepareFailedException;
import org.apache.shardingsphere.scaling.core.common.sqlbuilder.ScalingSQLBuilder;
+import org.apache.shardingsphere.scaling.core.job.check.source.AbstractDataSourceChecker;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/spi/ScalingEntryLoaderTest.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/spi/ScalingEntryLoaderTest.java
index 70aecf4..cba302a 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/spi/ScalingEntryLoaderTest.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/spi/ScalingEntryLoaderTest.java
@@ -17,7 +17,7 @@
package org.apache.shardingsphere.scaling.core.spi;
-import org.apache.shardingsphere.scaling.core.fixture.FixtureH2ScalingEntry;
+import org.apache.shardingsphere.scaling.core.fixture.FixtureScalingEntry;
import org.junit.Test;
import static org.junit.Assert.assertTrue;
@@ -27,7 +27,7 @@ public final class ScalingEntryLoaderTest {
@Test
public void assertGetFixtureInstance() {
ScalingEntry actual = ScalingEntryLoader.getInstance("H2");
- assertTrue(actual instanceof FixtureH2ScalingEntry);
+ assertTrue(actual instanceof FixtureScalingEntry);
}
@Test(expected = UnsupportedOperationException.class)
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/resources/META-INF/services/org.apache.shardingsphere.governance.repository.api.RegistryRepository b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/resources/META-INF/services/org.apache.shardingsphere.governance.repository.api.RegistryRepository
deleted file mode 100644
index df0fa47..0000000
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/resources/META-INF/services/org.apache.shardingsphere.governance.repository.api.RegistryRepository
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-org.apache.shardingsphere.scaling.core.fixture.FixtureRegistryRepository
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/resources/META-INF/services/org.apache.shardingsphere.scaling.core.spi.ScalingEntry b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/resources/META-INF/services/org.apache.shardingsphere.scaling.core.spi.ScalingEntry
index 281bbdb..bb0a722 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/resources/META-INF/services/org.apache.shardingsphere.scaling.core.spi.ScalingEntry
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/test/resources/META-INF/services/org.apache.shardingsphere.scaling.core.spi.ScalingEntry
@@ -15,4 +15,4 @@
# limitations under the License.
#
-org.apache.shardingsphere.scaling.core.fixture.FixtureH2ScalingEntry
+org.apache.shardingsphere.scaling.core.fixture.FixtureScalingEntry
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/MySQLScalingEntry.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/MySQLScalingEntry.java
index e7afc30..495916d 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/MySQLScalingEntry.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/MySQLScalingEntry.java
@@ -18,13 +18,12 @@
package org.apache.shardingsphere.scaling.mysql;
import org.apache.shardingsphere.scaling.core.spi.ScalingEntry;
-import org.apache.shardingsphere.scaling.mysql.component.MySQLBinlogDumper;
-import org.apache.shardingsphere.scaling.mysql.component.MySQLDataConsistencyChecker;
-import org.apache.shardingsphere.scaling.mysql.component.MySQLDataSourceChecker;
import org.apache.shardingsphere.scaling.mysql.component.MySQLImporter;
+import org.apache.shardingsphere.scaling.mysql.component.MySQLIncrementalDumper;
import org.apache.shardingsphere.scaling.mysql.component.MySQLInventoryDumper;
import org.apache.shardingsphere.scaling.mysql.component.MySQLPositionInitializer;
import org.apache.shardingsphere.scaling.mysql.component.MySQLScalingSQLBuilder;
+import org.apache.shardingsphere.scaling.mysql.component.checker.MySQLEnvironmentChecker;
/**
* MySQL scaling entry.
@@ -37,12 +36,12 @@ public final class MySQLScalingEntry implements ScalingEntry {
}
@Override
- public Class<MySQLBinlogDumper> getIncrementalDumperClass() {
- return MySQLBinlogDumper.class;
+ public Class<MySQLIncrementalDumper> getIncrementalDumperClass() {
+ return MySQLIncrementalDumper.class;
}
@Override
- public Class<MySQLPositionInitializer> getPositionInitializer() {
+ public Class<MySQLPositionInitializer> getPositionInitializerClass() {
return MySQLPositionInitializer.class;
}
@@ -52,13 +51,8 @@ public final class MySQLScalingEntry implements ScalingEntry {
}
@Override
- public Class<MySQLDataSourceChecker> getDataSourceCheckerClass() {
- return MySQLDataSourceChecker.class;
- }
-
- @Override
- public Class<MySQLDataConsistencyChecker> getDataConsistencyCheckerClass() {
- return MySQLDataConsistencyChecker.class;
+ public Class<MySQLEnvironmentChecker> getEnvironmentCheckerClass() {
+ return MySQLEnvironmentChecker.class;
}
@Override
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLBinlogDumper.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLIncrementalDumper.java
similarity index 97%
rename from shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLBinlogDumper.java
rename to shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLIncrementalDumper.java
index 075440f..8a0a9b1 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLBinlogDumper.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLIncrementalDumper.java
@@ -54,10 +54,10 @@ import java.util.Objects;
import java.util.Random;
/**
- * MySQL binlog dumper.
+ * MySQL incremental dumper.
*/
@Slf4j
-public final class MySQLBinlogDumper extends AbstractScalingExecutor implements IncrementalDumper {
+public final class MySQLIncrementalDumper extends AbstractScalingExecutor implements IncrementalDumper {
private final BinlogPosition binlogPosition;
@@ -70,7 +70,7 @@ public final class MySQLBinlogDumper extends AbstractScalingExecutor implements
@Setter
private Channel channel;
- public MySQLBinlogDumper(final DumperConfiguration dumperConfig, final ScalingPosition<BinlogPosition> binlogPosition) {
+ public MySQLIncrementalDumper(final DumperConfiguration dumperConfig, final ScalingPosition<BinlogPosition> binlogPosition) {
this.binlogPosition = (BinlogPosition) binlogPosition;
this.dumperConfig = dumperConfig;
Preconditions.checkArgument(dumperConfig.getDataSourceConfig() instanceof StandardJDBCDataSourceConfiguration, "MySQLBinlogDumper only support StandardJDBCDataSourceConfiguration");
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLDataConsistencyChecker.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/checker/MySQLDataConsistencyChecker.java
similarity index 94%
rename from shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLDataConsistencyChecker.java
rename to shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/checker/MySQLDataConsistencyChecker.java
index 6c325a2..82f7d8a 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLDataConsistencyChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/checker/MySQLDataConsistencyChecker.java
@@ -15,13 +15,14 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.mysql.component;
+package org.apache.shardingsphere.scaling.mysql.component.checker;
import com.google.common.collect.Maps;
import org.apache.shardingsphere.scaling.core.common.datasource.DataSourceWrapper;
import org.apache.shardingsphere.scaling.core.common.exception.DataCheckFailException;
import org.apache.shardingsphere.scaling.core.job.JobContext;
-import org.apache.shardingsphere.scaling.core.job.check.AbstractDataConsistencyChecker;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.AbstractDataConsistencyChecker;
+import org.apache.shardingsphere.scaling.mysql.component.MySQLScalingSQLBuilder;
import javax.sql.DataSource;
import java.sql.Connection;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLDataSourceChecker.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/checker/MySQLDataSourceChecker.java
similarity index 95%
rename from shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLDataSourceChecker.java
rename to shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/checker/MySQLDataSourceChecker.java
index ff6a24b..7b1552b 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/MySQLDataSourceChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/checker/MySQLDataSourceChecker.java
@@ -15,11 +15,12 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.mysql.component;
+package org.apache.shardingsphere.scaling.mysql.component.checker;
import com.google.common.collect.Maps;
import org.apache.shardingsphere.scaling.core.common.exception.PrepareFailedException;
-import org.apache.shardingsphere.scaling.core.job.preparer.checker.AbstractDataSourceChecker;
+import org.apache.shardingsphere.scaling.core.job.check.source.AbstractDataSourceChecker;
+import org.apache.shardingsphere.scaling.mysql.component.MySQLScalingSQLBuilder;
import javax.sql.DataSource;
import java.sql.Connection;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyChecker.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/checker/MySQLEnvironmentChecker.java
similarity index 60%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyChecker.java
rename to shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/checker/MySQLEnvironmentChecker.java
index bf506ab..ce34ebf 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/check/DataConsistencyChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/component/checker/MySQLEnvironmentChecker.java
@@ -15,26 +15,22 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.core.job.check;
+package org.apache.shardingsphere.scaling.mysql.component.checker;
-import java.util.Map;
+import org.apache.shardingsphere.scaling.core.job.check.EnvironmentChecker;
/**
- * Data consistency checker interface.
+ * MySQL environment checker.
*/
-public interface DataConsistencyChecker {
+public final class MySQLEnvironmentChecker implements EnvironmentChecker {
- /**
- * Check each table count is valid.
- *
- * @return count check result
- */
- Map<String, DataConsistencyCheckResult> countCheck();
+ @Override
+ public Class<MySQLDataSourceChecker> getDataSourceCheckerClass() {
+ return MySQLDataSourceChecker.class;
+ }
- /**
- * Check each table data is valid.
- *
- * @return data is valid or not
- */
- Map<String, Boolean> dataCheck();
+ @Override
+ public Class<MySQLDataConsistencyChecker> getDataConsistencyCheckerClass() {
+ return MySQLDataConsistencyChecker.class;
+ }
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/MySQLScalingEntryTest.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/MySQLScalingEntryTest.java
index 3249dcf..d5297e1 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/MySQLScalingEntryTest.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/MySQLScalingEntryTest.java
@@ -19,12 +19,13 @@ package org.apache.shardingsphere.scaling.mysql;
import org.apache.shardingsphere.scaling.core.spi.ScalingEntry;
import org.apache.shardingsphere.scaling.core.spi.ScalingEntryLoader;
-import org.apache.shardingsphere.scaling.mysql.component.MySQLBinlogDumper;
-import org.apache.shardingsphere.scaling.mysql.component.MySQLDataConsistencyChecker;
-import org.apache.shardingsphere.scaling.mysql.component.MySQLDataSourceChecker;
import org.apache.shardingsphere.scaling.mysql.component.MySQLImporter;
+import org.apache.shardingsphere.scaling.mysql.component.MySQLIncrementalDumper;
import org.apache.shardingsphere.scaling.mysql.component.MySQLInventoryDumper;
import org.apache.shardingsphere.scaling.mysql.component.MySQLPositionInitializer;
+import org.apache.shardingsphere.scaling.mysql.component.checker.MySQLDataConsistencyChecker;
+import org.apache.shardingsphere.scaling.mysql.component.checker.MySQLDataSourceChecker;
+import org.apache.shardingsphere.scaling.mysql.component.checker.MySQLEnvironmentChecker;
import org.junit.Test;
import static org.hamcrest.CoreMatchers.equalTo;
@@ -34,14 +35,15 @@ import static org.junit.Assert.assertTrue;
public final class MySQLScalingEntryTest {
@Test
- public void assertGetScalingEntryByDatabaseType() {
+ public void assertGetScalingEntryByDatabaseType() throws IllegalAccessException, InstantiationException {
ScalingEntry scalingEntry = ScalingEntryLoader.getInstance("MySQL");
assertTrue(scalingEntry instanceof MySQLScalingEntry);
- assertThat(scalingEntry.getPositionInitializer(), equalTo(MySQLPositionInitializer.class));
- assertThat(scalingEntry.getDataSourceCheckerClass(), equalTo(MySQLDataSourceChecker.class));
+ assertThat(scalingEntry.getPositionInitializerClass(), equalTo(MySQLPositionInitializer.class));
+ assertThat(scalingEntry.getEnvironmentCheckerClass(), equalTo(MySQLEnvironmentChecker.class));
+ assertThat(scalingEntry.getEnvironmentCheckerClass().newInstance().getDataSourceCheckerClass(), equalTo(MySQLDataSourceChecker.class));
+ assertThat(scalingEntry.getEnvironmentCheckerClass().newInstance().getDataConsistencyCheckerClass(), equalTo(MySQLDataConsistencyChecker.class));
assertThat(scalingEntry.getImporterClass(), equalTo(MySQLImporter.class));
assertThat(scalingEntry.getInventoryDumperClass(), equalTo(MySQLInventoryDumper.class));
- assertThat(scalingEntry.getIncrementalDumperClass(), equalTo(MySQLBinlogDumper.class));
- assertThat(scalingEntry.getDataConsistencyCheckerClass(), equalTo(MySQLDataConsistencyChecker.class));
+ assertThat(scalingEntry.getIncrementalDumperClass(), equalTo(MySQLIncrementalDumper.class));
}
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/component/MySQLDataSourceCheckerTest.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/component/MySQLDataSourceCheckerTest.java
index 7a0c75a..45d086b 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/component/MySQLDataSourceCheckerTest.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/component/MySQLDataSourceCheckerTest.java
@@ -18,6 +18,7 @@
package org.apache.shardingsphere.scaling.mysql.component;
import org.apache.shardingsphere.scaling.core.common.exception.PrepareFailedException;
+import org.apache.shardingsphere.scaling.mysql.component.checker.MySQLDataSourceChecker;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/component/MySQLBinlogDumperTest.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/component/MySQLIncrementalDumperTest.java
similarity index 95%
rename from shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/component/MySQLBinlogDumperTest.java
rename to shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/component/MySQLIncrementalDumperTest.java
index 6c72173..8c029e7 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/component/MySQLBinlogDumperTest.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/component/MySQLIncrementalDumperTest.java
@@ -19,17 +19,17 @@ package org.apache.shardingsphere.scaling.mysql.component;
import lombok.SneakyThrows;
import org.apache.commons.collections4.map.HashedMap;
-import org.apache.shardingsphere.scaling.core.config.DumperConfiguration;
-import org.apache.shardingsphere.scaling.core.config.datasource.StandardJDBCDataSourceConfiguration;
-import org.apache.shardingsphere.scaling.core.config.ScalingContext;
-import org.apache.shardingsphere.scaling.core.config.ServerConfiguration;
+import org.apache.shardingsphere.scaling.core.common.channel.MemoryChannel;
import org.apache.shardingsphere.scaling.core.common.constant.ScalingConstant;
import org.apache.shardingsphere.scaling.core.common.datasource.DataSourceManager;
-import org.apache.shardingsphere.scaling.core.common.channel.MemoryChannel;
+import org.apache.shardingsphere.scaling.core.common.datasource.JdbcUri;
import org.apache.shardingsphere.scaling.core.common.record.DataRecord;
import org.apache.shardingsphere.scaling.core.common.record.PlaceholderRecord;
import org.apache.shardingsphere.scaling.core.common.record.Record;
-import org.apache.shardingsphere.scaling.core.common.datasource.JdbcUri;
+import org.apache.shardingsphere.scaling.core.config.DumperConfiguration;
+import org.apache.shardingsphere.scaling.core.config.ScalingContext;
+import org.apache.shardingsphere.scaling.core.config.ServerConfiguration;
+import org.apache.shardingsphere.scaling.core.config.datasource.StandardJDBCDataSourceConfiguration;
import org.apache.shardingsphere.scaling.core.util.ReflectionUtil;
import org.apache.shardingsphere.scaling.mysql.binlog.BinlogPosition;
import org.apache.shardingsphere.scaling.mysql.binlog.event.AbstractBinlogEvent;
@@ -53,11 +53,11 @@ import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
import static org.junit.Assert.assertTrue;
-public final class MySQLBinlogDumperTest {
+public final class MySQLIncrementalDumperTest {
private static final String URL = "jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=false;MODE=MySQL";
- private MySQLBinlogDumper mysqlBinlogDumper;
+ private MySQLIncrementalDumper incrementalDumper;
private MemoryChannel channel;
@@ -68,8 +68,8 @@ public final class MySQLBinlogDumperTest {
initTableData(dumperConfig);
channel = new MemoryChannel(records -> {
});
- mysqlBinlogDumper = new MySQLBinlogDumper(dumperConfig, new BinlogPosition("binlog-000001", 4L));
- mysqlBinlogDumper.setChannel(channel);
+ incrementalDumper = new MySQLIncrementalDumper(dumperConfig, new BinlogPosition("binlog-000001", 4L));
+ incrementalDumper.setChannel(channel);
}
private DumperConfiguration mockDumperConfiguration() {
@@ -160,6 +160,6 @@ public final class MySQLBinlogDumperTest {
@SneakyThrows({NoSuchMethodException.class, ReflectiveOperationException.class})
private void invokeHandleEvent(final JdbcUri uri, final AbstractBinlogEvent event) {
- ReflectionUtil.invokeMethod(mysqlBinlogDumper, "handleEvent", new Class[]{JdbcUri.class, AbstractBinlogEvent.class}, new Object[]{uri, event});
+ ReflectionUtil.invokeMethod(incrementalDumper, "handleEvent", new Class[]{JdbcUri.class, AbstractBinlogEvent.class}, new Object[]{uri, event});
}
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/PostgreSQLScalingEntry.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/PostgreSQLScalingEntry.java
index 90b5a4d..68d9e59 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/PostgreSQLScalingEntry.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/PostgreSQLScalingEntry.java
@@ -18,13 +18,12 @@
package org.apache.shardingsphere.scaling.postgresql;
import org.apache.shardingsphere.scaling.core.spi.ScalingEntry;
-import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLDataConsistencyChecker;
-import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLDataSourceChecker;
import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLImporter;
import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLInventoryDumper;
import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLPositionInitializer;
import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLScalingSQLBuilder;
import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLWalDumper;
+import org.apache.shardingsphere.scaling.postgresql.component.checker.PostgreSQLEnvironmentChecker;
/**
* PostgreSQL scaling entry.
@@ -42,7 +41,7 @@ public final class PostgreSQLScalingEntry implements ScalingEntry {
}
@Override
- public Class<PostgreSQLPositionInitializer> getPositionInitializer() {
+ public Class<PostgreSQLPositionInitializer> getPositionInitializerClass() {
return PostgreSQLPositionInitializer.class;
}
@@ -52,13 +51,8 @@ public final class PostgreSQLScalingEntry implements ScalingEntry {
}
@Override
- public Class<PostgreSQLDataSourceChecker> getDataSourceCheckerClass() {
- return PostgreSQLDataSourceChecker.class;
- }
-
- @Override
- public Class<PostgreSQLDataConsistencyChecker> getDataConsistencyCheckerClass() {
- return PostgreSQLDataConsistencyChecker.class;
+ public Class<PostgreSQLEnvironmentChecker> getEnvironmentCheckerClass() {
+ return PostgreSQLEnvironmentChecker.class;
}
@Override
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/PostgreSQLDataConsistencyChecker.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/checker/PostgreSQLDataConsistencyChecker.java
similarity index 85%
rename from shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/PostgreSQLDataConsistencyChecker.java
rename to shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/checker/PostgreSQLDataConsistencyChecker.java
index 1758448..6e14615 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/PostgreSQLDataConsistencyChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/checker/PostgreSQLDataConsistencyChecker.java
@@ -15,12 +15,13 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.postgresql.component;
+package org.apache.shardingsphere.scaling.postgresql.component.checker;
import com.google.common.collect.Maps;
import org.apache.shardingsphere.scaling.core.common.sqlbuilder.ScalingSQLBuilder;
import org.apache.shardingsphere.scaling.core.job.JobContext;
-import org.apache.shardingsphere.scaling.core.job.check.AbstractDataConsistencyChecker;
+import org.apache.shardingsphere.scaling.core.job.check.consistency.AbstractDataConsistencyChecker;
+import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLScalingSQLBuilder;
import java.util.Collections;
import java.util.Map;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/PostgreSQLDataSourceChecker.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/checker/PostgreSQLDataSourceChecker.java
similarity index 90%
rename from shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/PostgreSQLDataSourceChecker.java
rename to shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/checker/PostgreSQLDataSourceChecker.java
index 4f88642..00accd5 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/PostgreSQLDataSourceChecker.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/checker/PostgreSQLDataSourceChecker.java
@@ -15,12 +15,13 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.postgresql.component;
+package org.apache.shardingsphere.scaling.postgresql.component.checker;
import com.google.common.collect.Maps;
import org.apache.shardingsphere.scaling.core.common.exception.PrepareFailedException;
import org.apache.shardingsphere.scaling.core.common.sqlbuilder.ScalingSQLBuilder;
-import org.apache.shardingsphere.scaling.core.job.preparer.checker.AbstractDataSourceChecker;
+import org.apache.shardingsphere.scaling.core.job.check.source.AbstractDataSourceChecker;
+import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLScalingSQLBuilder;
import javax.sql.DataSource;
import java.sql.Connection;
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingSQLBuilder.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/checker/PostgreSQLEnvironmentChecker.java
similarity index 60%
rename from shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingSQLBuilder.java
rename to shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/checker/PostgreSQLEnvironmentChecker.java
index 9c59296..a75d9ea 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/test/java/org/apache/shardingsphere/scaling/core/fixture/FixtureScalingSQLBuilder.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/main/java/org/apache/shardingsphere/scaling/postgresql/component/checker/PostgreSQLEnvironmentChecker.java
@@ -15,26 +15,19 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.scaling.core.fixture;
+package org.apache.shardingsphere.scaling.postgresql.component.checker;
-import org.apache.shardingsphere.scaling.core.common.sqlbuilder.AbstractScalingSQLBuilder;
+import org.apache.shardingsphere.scaling.core.job.check.EnvironmentChecker;
-import java.util.Map;
-import java.util.Set;
-
-public final class FixtureScalingSQLBuilder extends AbstractScalingSQLBuilder {
-
- public FixtureScalingSQLBuilder(final Map<String, Set<String>> shardingColumnsMap) {
- super(shardingColumnsMap);
- }
+public final class PostgreSQLEnvironmentChecker implements EnvironmentChecker {
@Override
- protected String getLeftIdentifierQuoteString() {
- return "`";
+ public Class<PostgreSQLDataSourceChecker> getDataSourceCheckerClass() {
+ return PostgreSQLDataSourceChecker.class;
}
@Override
- protected String getRightIdentifierQuoteString() {
- return "`";
+ public Class<PostgreSQLDataConsistencyChecker> getDataConsistencyCheckerClass() {
+ return PostgreSQLDataConsistencyChecker.class;
}
}
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/test/java/org/apache/shardingsphere/scaling/postgresql/PostgreSQLScalingEntryTest.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/test/java/org/apache/shardingsphere/scaling/postgresql/PostgreSQLScalingEntryTest.java
index 62270bc..430b490 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/test/java/org/apache/shardingsphere/scaling/postgresql/PostgreSQLScalingEntryTest.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/test/java/org/apache/shardingsphere/scaling/postgresql/PostgreSQLScalingEntryTest.java
@@ -19,12 +19,13 @@ package org.apache.shardingsphere.scaling.postgresql;
import org.apache.shardingsphere.scaling.core.spi.ScalingEntry;
import org.apache.shardingsphere.scaling.core.spi.ScalingEntryLoader;
-import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLDataConsistencyChecker;
-import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLDataSourceChecker;
import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLImporter;
import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLInventoryDumper;
import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLPositionInitializer;
import org.apache.shardingsphere.scaling.postgresql.component.PostgreSQLWalDumper;
+import org.apache.shardingsphere.scaling.postgresql.component.checker.PostgreSQLDataConsistencyChecker;
+import org.apache.shardingsphere.scaling.postgresql.component.checker.PostgreSQLDataSourceChecker;
+import org.apache.shardingsphere.scaling.postgresql.component.checker.PostgreSQLEnvironmentChecker;
import org.junit.Test;
import static org.hamcrest.CoreMatchers.equalTo;
@@ -34,12 +35,13 @@ import static org.junit.Assert.assertTrue;
public final class PostgreSQLScalingEntryTest {
@Test
- public void assertGetScalingEntryByDatabaseType() {
+ public void assertGetScalingEntryByDatabaseType() throws IllegalAccessException, InstantiationException {
ScalingEntry scalingEntry = ScalingEntryLoader.getInstance("PostgreSQL");
assertTrue(scalingEntry instanceof PostgreSQLScalingEntry);
- assertThat(scalingEntry.getPositionInitializer(), equalTo(PostgreSQLPositionInitializer.class));
- assertThat(scalingEntry.getDataSourceCheckerClass(), equalTo(PostgreSQLDataSourceChecker.class));
- assertThat(scalingEntry.getDataConsistencyCheckerClass(), equalTo(PostgreSQLDataConsistencyChecker.class));
+ assertThat(scalingEntry.getPositionInitializerClass(), equalTo(PostgreSQLPositionInitializer.class));
+ assertThat(scalingEntry.getEnvironmentCheckerClass(), equalTo(PostgreSQLEnvironmentChecker.class));
+ assertThat(scalingEntry.getEnvironmentCheckerClass().newInstance().getDataSourceCheckerClass(), equalTo(PostgreSQLDataSourceChecker.class));
+ assertThat(scalingEntry.getEnvironmentCheckerClass().newInstance().getDataConsistencyCheckerClass(), equalTo(PostgreSQLDataConsistencyChecker.class));
assertThat(scalingEntry.getImporterClass(), equalTo(PostgreSQLImporter.class));
assertThat(scalingEntry.getInventoryDumperClass(), equalTo(PostgreSQLInventoryDumper.class));
assertThat(scalingEntry.getIncrementalDumperClass(), equalTo(PostgreSQLWalDumper.class));
diff --git a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/test/java/org/apache/shardingsphere/scaling/postgresql/component/PostgreSQLDataSourceCheckerTest.java b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/test/java/org/apache/shardingsphere/scaling/postgresql/component/PostgreSQLDataSourceCheckerTest.java
index e2b7380..cfdbc0f 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/test/java/org/apache/shardingsphere/scaling/postgresql/component/PostgreSQLDataSourceCheckerTest.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-dialect/shardingsphere-scaling-postgresql/src/test/java/org/apache/shardingsphere/scaling/postgresql/component/PostgreSQLDataSourceCheckerTest.java
@@ -18,6 +18,7 @@
package org.apache.shardingsphere.scaling.postgresql.component;
import org.apache.shardingsphere.scaling.core.common.exception.PrepareFailedException;
+import org.apache.shardingsphere.scaling.postgresql.component.checker.PostgreSQLDataSourceChecker;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;