This is an automated email from the ASF dual-hosted git repository.
zhangliang 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 acfb90b021f Move ShardingSphereStatisticsFactory to common module
(#34386)
acfb90b021f is described below
commit acfb90b021fe5c9a4b7b06d9067b93518b6793c4
Author: Liang Zhang <[email protected]>
AuthorDate: Sat Jan 18 00:51:48 2025 +0800
Move ShardingSphereStatisticsFactory to common module (#34386)
* Move ShardingSphereStatisticsFactory to common module
---
.../impl/proxy/ProxyMetaDataInfoExporterTest.java | 6 +++---
.../exporter/impl/proxy/ProxyStateExporterTest.java | 5 ++---
.../PrometheusPluginLifecycleServiceTest.java | 5 ++---
.../builder}/ShardingSphereStatisticsFactory.java | 17 ++++++-----------
.../mode/metadata/MetaDataContextManager.java | 3 ++-
.../shardingsphere/mode/metadata/MetaDataContexts.java | 3 ++-
.../mode/metadata/MetaDataContextsFactory.java | 7 ++++---
.../persist/data/ShardingSphereDataPersistService.java | 9 ++++-----
.../mode/metadata/MetaDataContextsTest.java | 11 +++--------
.../data/ShardingSphereDataPersistServiceTest.java | 4 ++--
.../backend/connector/DatabaseConnectorFactoryTest.java | 6 +++---
.../connector/ProxyDatabaseConnectionManagerTest.java | 6 +++---
.../proxy/backend/connector/ProxySQLExecutorTest.java | 8 ++++----
.../connector/StandardDatabaseConnectorTest.java | 12 +++---------
.../jdbc/datasource/JDBCBackendDataSourceTest.java | 6 +++---
.../backend/context/BackendExecutorContextTest.java | 5 ++---
.../proxy/backend/context/ProxyContextTest.java | 10 +++++-----
.../admin/DatabaseAdminQueryBackendHandlerTest.java | 6 +++---
.../executor/DefaultDatabaseMetaDataExecutorTest.java | 6 +++---
.../data/impl/UnicastDatabaseBackendHandlerTest.java | 6 +++---
.../DatabaseOperateBackendHandlerFactoryTest.java | 10 ++++------
.../handler/distsql/DistSQLQueryBackendHandlerTest.java | 5 ++---
.../ral/queryable/ExportMetaDataExecutorTest.java | 8 ++++----
.../ral/queryable/ExportStorageNodesExecutorTest.java | 8 ++++----
.../ral/updatable/ImportMetaDataExecutorTest.java | 6 +++---
.../ral/updatable/SetDistVariableExecutorTest.java | 5 ++---
.../handler/admin/MySQLAdminExecutorCreatorTest.java | 6 +++---
.../admin/executor/ShowCreateDatabaseExecutorTest.java | 13 +++----------
.../admin/executor/ShowCurrentUserExecutorTest.java | 6 +++---
.../admin/executor/ShowDatabasesExecutorTest.java | 9 +++------
.../admin/executor/ShowFunctionStatusExecutorTest.java | 10 +++-------
.../admin/executor/ShowProcedureStatusExecutorTest.java | 10 +++-------
.../handler/admin/executor/ShowTablesExecutorTest.java | 12 +++---------
.../handler/admin/executor/UseDatabaseExecutorTest.java | 6 +++---
.../SelectInformationSchemataExecutorTest.java | 11 +++--------
.../protocol/FrontDatabaseProtocolTypeFactoryTest.java | 13 +++----------
.../proxy/frontend/state/impl/OKProxyStateTest.java | 7 +++----
.../authentication/MySQLAuthenticationEngineTest.java | 8 +++-----
.../OpenGaussAuthenticationEngineTest.java | 5 ++---
.../PostgreSQLAuthenticationEngineTest.java | 5 ++---
.../command/PostgreSQLCommandExecuteEngineTest.java | 8 +++-----
.../data/pipeline/core/util/PipelineContextUtils.java | 4 ++--
42 files changed, 126 insertions(+), 190 deletions(-)
diff --git
a/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyMetaDataInfoExporterTest.java
b/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyMetaDataInfoExporterTest.java
index 51f220a60c9..6505d58591d 100644
---
a/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyMetaDataInfoExporterTest.java
+++
b/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyMetaDataInfoExporterTest.java
@@ -27,11 +27,11 @@ import
org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import
org.apache.shardingsphere.infra.metadata.database.resource.unit.StorageUnit;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.test.mock.AutoMockExtension;
import org.apache.shardingsphere.test.mock.StaticMockSettings;
@@ -82,7 +82,7 @@ class ProxyMetaDataInfoExporterTest {
when(database.getProtocolType()).thenReturn(TypedSPILoader.getService(DatabaseType.class,
"FIXTURE"));
ShardingSphereMetaData metaData = mock(ShardingSphereMetaData.class);
when(metaData.getAllDatabases()).thenReturn(Collections.singleton(database));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
diff --git
a/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyStateExporterTest.java
b/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyStateExporterTest.java
index b672d9c43c4..040e560644b 100644
---
a/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyStateExporterTest.java
+++
b/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/exporter/impl/proxy/ProxyStateExporterTest.java
@@ -23,11 +23,10 @@ import
org.apache.shardingsphere.agent.plugin.metrics.core.config.MetricCollecto
import
org.apache.shardingsphere.agent.plugin.metrics.core.config.MetricConfiguration;
import
org.apache.shardingsphere.agent.plugin.metrics.core.fixture.collector.MetricsCollectorFixture;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
import org.apache.shardingsphere.infra.state.instance.InstanceStateContext;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.test.mock.AutoMockExtension;
import org.apache.shardingsphere.test.mock.StaticMockSettings;
@@ -74,7 +73,7 @@ class ProxyStateExporterTest {
private ContextManager mockContextManager() {
ShardingSphereMetaData metaData = new ShardingSphereMetaData();
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData, new
ShardingSphereStatistics());
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
diff --git
a/agent/plugins/metrics/type/prometheus/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/PrometheusPluginLifecycleServiceTest.java
b/agent/plugins/metrics/type/prometheus/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/PrometheusPluginLifecycleServiceTest.java
index 981701cafa1..00202f68df4 100644
---
a/agent/plugins/metrics/type/prometheus/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/PrometheusPluginLifecycleServiceTest.java
+++
b/agent/plugins/metrics/type/prometheus/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/prometheus/PrometheusPluginLifecycleServiceTest.java
@@ -24,12 +24,11 @@ import
org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
import org.apache.shardingsphere.infra.instance.metadata.InstanceMetaData;
import org.apache.shardingsphere.infra.lock.LockContext;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
import org.apache.shardingsphere.mode.manager.ContextManager;
import
org.apache.shardingsphere.mode.manager.standalone.workerid.StandaloneWorkerIdGenerator;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.test.mock.AutoMockExtension;
@@ -71,7 +70,7 @@ class PrometheusPluginLifecycleServiceTest {
private ContextManager mockContextManager() {
ShardingSphereMetaData metaData = new ShardingSphereMetaData();
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData, new
ShardingSphereStatistics());
ComputeNodeInstanceContext computeNodeInstanceContext = new
ComputeNodeInstanceContext(
new ComputeNodeInstance(mock(InstanceMetaData.class)), new
ModeConfiguration("Standalone", null), new EventBusContext());
computeNodeInstanceContext.init(new StandaloneWorkerIdGenerator(),
mock(LockContext.class));
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/ShardingSphereStatisticsFactory.java
b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/statistics/builder/ShardingSphereStatisticsFactory.java
similarity index 82%
rename from
mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/ShardingSphereStatisticsFactory.java
rename to
infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/statistics/builder/ShardingSphereStatisticsFactory.java
index c8429aa0bbb..2fb514517ca 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/ShardingSphereStatisticsFactory.java
+++
b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/statistics/builder/ShardingSphereStatisticsFactory.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.mode.metadata;
+package org.apache.shardingsphere.infra.metadata.statistics.builder;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
@@ -27,10 +27,7 @@ import
org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereDatabaseData;
import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
-import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereDefaultStatisticsBuilder;
-import
org.apache.shardingsphere.infra.metadata.statistics.builder.DialectStatisticsAppender;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import java.util.Collection;
import java.util.Optional;
@@ -45,19 +42,17 @@ public final class ShardingSphereStatisticsFactory {
/**
* Create statistics.
*
- * @param persistService meta data persist service
* @param metaData meta data
+ * @param loadedStatistics loaded statistics
* @return created statistics
*/
- public static ShardingSphereStatistics create(final MetaDataPersistService
persistService, final ShardingSphereMetaData metaData) {
+ public static ShardingSphereStatistics create(final ShardingSphereMetaData
metaData, final ShardingSphereStatistics loadedStatistics) {
+ ShardingSphereStatistics result = new ShardingSphereStatistics();
if (metaData.getAllDatabases().isEmpty()) {
- return new ShardingSphereStatistics();
+ return result;
}
-
- ShardingSphereStatistics loadedStatistics =
persistService.getShardingSphereDataPersistService().load(metaData).orElse(new
ShardingSphereStatistics());
- Collection<ShardingSphereDatabase> unloadedDatabases =
metaData.getAllDatabases().stream().filter(each ->
!loadedStatistics.containsDatabase(each.getName())).collect(Collectors.toList());
- ShardingSphereStatistics result = new ShardingSphereStatistics();
Optional<DialectStatisticsAppender> dialectStatisticsAppender =
DatabaseTypedSPILoader.findService(DialectStatisticsAppender.class,
getDatabaseType(metaData));
+ Collection<ShardingSphereDatabase> unloadedDatabases =
metaData.getAllDatabases().stream().filter(each ->
!loadedStatistics.containsDatabase(each.getName())).collect(Collectors.toList());
for (ShardingSphereDatabase each : unloadedDatabases) {
ShardingSphereDatabaseData databaseData = new
ShardingSphereDefaultStatisticsBuilder().build(each);
dialectStatisticsAppender.ifPresent(optional ->
optional.append(databaseData, each));
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContextManager.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContextManager.java
index 431b2ad3a1c..081c6aba5ab 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContextManager.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContextManager.java
@@ -27,6 +27,7 @@ import
org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
import
org.apache.shardingsphere.infra.metadata.database.schema.manager.GenericSchemaManager;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.rule.builder.global.GlobalRulesBuilder;
import
org.apache.shardingsphere.mode.metadata.manager.DatabaseRuleConfigurationManager;
import
org.apache.shardingsphere.mode.metadata.manager.GlobalConfigurationManager;
@@ -152,7 +153,7 @@ public class MetaDataContextManager {
RuleMetaData changedGlobalMetaData = new
RuleMetaData(GlobalRulesBuilder.buildRules(globalRuleConfigs,
metaDataContexts.getMetaData().getAllDatabases(), props));
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
metaDataContexts.getMetaData().getAllDatabases(),
metaDataContexts.getMetaData().getGlobalResourceMetaData(),
changedGlobalMetaData, props);
- MetaDataContexts result = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData));
+ MetaDataContexts result = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData,
metaDataPersistService.getShardingSphereDataPersistService().load(metaData)));
switchingResource.closeStaleDataSources();
return result;
}
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContexts.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContexts.java
index 40017d41e87..7c0e7d315af 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContexts.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContexts.java
@@ -19,6 +19,7 @@ package org.apache.shardingsphere.mode.metadata;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import javax.annotation.concurrent.ThreadSafe;
@@ -75,6 +76,6 @@ public final class MetaDataContexts {
*/
public void update(final ShardingSphereMetaData metaData, final
MetaDataPersistService metaDataPersistService) {
this.metaData.set(metaData);
-
this.statistics.set(ShardingSphereStatisticsFactory.create(metaDataPersistService,
metaData));
+ this.statistics.set(ShardingSphereStatisticsFactory.create(metaData,
metaDataPersistService.getShardingSphereDataPersistService().load(metaData)));
}
}
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContextsFactory.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContextsFactory.java
index 303dea3fa06..fc3afde4e40 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContextsFactory.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/MetaDataContextsFactory.java
@@ -37,6 +37,7 @@ import
org.apache.shardingsphere.infra.metadata.database.resource.unit.StorageUn
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereDatabaseData;
import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereSchemaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.rule.builder.global.GlobalRulesBuilder;
import org.apache.shardingsphere.mode.manager.ContextManagerBuilderParameter;
import org.apache.shardingsphere.mode.metadata.factory.ExternalMetaDataFactory;
@@ -103,7 +104,7 @@ public final class MetaDataContextsFactory {
ResourceMetaData globalResourceMetaData = new
ResourceMetaData(param.getGlobalDataSources());
RuleMetaData globalRuleMetaData = new
RuleMetaData(GlobalRulesBuilder.buildRules(globalRuleConfigs,
databases.values(), props));
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(databases.values(), globalResourceMetaData,
globalRuleMetaData, props);
- return new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(persistService, metaData));
+ return new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData,
persistService.getShardingSphereDataPersistService().load(metaData)));
}
private static Collection<String> getDatabaseNames(final
ComputeNodeInstanceContext instanceContext,
@@ -182,7 +183,7 @@ public final class MetaDataContextsFactory {
GlobalRulesBuilder.buildRules(originalMetaDataContexts.getMetaData().getGlobalRuleMetaData().getConfigurations(),
clonedMetaData.getAllDatabases(), props));
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
clonedMetaData.getAllDatabases(),
originalMetaDataContexts.getMetaData().getGlobalResourceMetaData(),
changedGlobalMetaData, props);
- return new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(persistService, metaData));
+ return new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData,
persistService.getShardingSphereDataPersistService().load(metaData)));
}
/**
@@ -208,7 +209,7 @@ public final class MetaDataContextsFactory {
GlobalRulesBuilder.buildRules(originalMetaDataContexts.getMetaData().getGlobalRuleMetaData().getConfigurations(),
clonedMetaData.getAllDatabases(), props));
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
clonedMetaData.getAllDatabases(),
originalMetaDataContexts.getMetaData().getGlobalResourceMetaData(),
changedGlobalMetaData, props);
- return new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(persistService, metaData));
+ return new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData,
persistService.getShardingSphereDataPersistService().load(metaData)));
}
private static ShardingSphereMetaData cloneMetaData(final
ShardingSphereMetaData originalMetaData, final ShardingSphereDatabase
changedDatabase) {
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/data/ShardingSphereDataPersistService.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/data/ShardingSphereDataPersistService.java
index 2320abaf747..0e76eb367e1 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/data/ShardingSphereDataPersistService.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/data/ShardingSphereDataPersistService.java
@@ -25,13 +25,12 @@ import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereSchemaD
import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
import
org.apache.shardingsphere.infra.yaml.data.pojo.YamlShardingSphereRowData;
import
org.apache.shardingsphere.infra.yaml.data.swapper.YamlShardingSphereRowDataSwapper;
-import
org.apache.shardingsphere.mode.node.path.metadata.ShardingSphereDataNodePath;
import
org.apache.shardingsphere.mode.metadata.persist.service.metadata.table.TableRowDataPersistService;
+import
org.apache.shardingsphere.mode.node.path.metadata.ShardingSphereDataNodePath;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Optional;
import java.util.stream.Collectors;
/**
@@ -54,16 +53,16 @@ public final class ShardingSphereDataPersistService {
* @param metaData meta data
* @return statistics
*/
- public Optional<ShardingSphereStatistics> load(final
ShardingSphereMetaData metaData) {
+ public ShardingSphereStatistics load(final ShardingSphereMetaData
metaData) {
Collection<String> databaseNames =
repository.getChildrenKeys(ShardingSphereDataNodePath.getDatabasesRootPath());
if (databaseNames.isEmpty()) {
- return Optional.empty();
+ return new ShardingSphereStatistics();
}
ShardingSphereStatistics result = new ShardingSphereStatistics();
for (String each :
databaseNames.stream().filter(metaData::containsDatabase).collect(Collectors.toList()))
{
result.getDatabaseData().put(each,
load(metaData.getDatabase(each)));
}
- return Optional.of(result);
+ return result;
}
private ShardingSphereDatabaseData load(final ShardingSphereDatabase
database) {
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/MetaDataContextsTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/MetaDataContextsTest.java
index 66471c81f44..4efc6609bf7 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/MetaDataContextsTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/MetaDataContextsTest.java
@@ -21,20 +21,17 @@ import
org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.junit.jupiter.api.Test;
import java.util.Collections;
-import java.util.Optional;
import java.util.Properties;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
class MetaDataContextsTest {
@@ -42,8 +39,6 @@ class MetaDataContextsTest {
void assertGetDefaultMetaData() {
ShardingSphereDatabase database = new ShardingSphereDatabase("foo_db",
TypedSPILoader.getService(DatabaseType.class, "FIXTURE"), mock(), mock(),
Collections.emptyList());
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(Collections.singleton(database), mock(), mock(), new
ConfigurationProperties(new Properties()));
- MetaDataPersistService persistService =
mock(MetaDataPersistService.class, RETURNS_DEEP_STUBS);
-
when(persistService.getShardingSphereDataPersistService().load(any())).thenReturn(Optional.empty());
- assertThat(new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(persistService,
metaData)).getMetaData().getDatabase("foo_db"), is(database));
+ assertThat(new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics())).getMetaData().getDatabase("foo_db"), is(database));
}
}
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/data/ShardingSphereDataPersistServiceTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/data/ShardingSphereDataPersistServiceTest.java
index d7d0e443794..51727128ca6 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/data/ShardingSphereDataPersistServiceTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/data/ShardingSphereDataPersistServiceTest.java
@@ -62,7 +62,7 @@ class ShardingSphereDataPersistServiceTest {
@Test
void assertLoadWithEmptyDatabases() {
-
assertFalse(persistService.load(mock(ShardingSphereMetaData.class)).isPresent());
+
assertTrue(persistService.load(mock(ShardingSphereMetaData.class)).getDatabaseData().isEmpty());
}
@Test
@@ -70,7 +70,7 @@ class ShardingSphereDataPersistServiceTest {
when(repository.getChildrenKeys("/statistics/databases")).thenReturn(Arrays.asList("foo_db",
"bar_db"));
when(repository.getChildrenKeys("/statistics/databases/foo_db/schemas")).thenReturn(Collections.singletonList("foo_schema"));
when(repository.getChildrenKeys("/statistics/databases/foo_db/schemas/foo_schema/tables")).thenReturn(Collections.singletonList("foo_tbl"));
- assertTrue(persistService.load(mockMetaData()).isPresent());
+
assertFalse(persistService.load(mockMetaData()).getDatabaseData().isEmpty());
}
private ShardingSphereMetaData mockMetaData() {
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnectorFactoryTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnectorFactoryTest.java
index 800b7a0288c..6d4ea439f22 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnectorFactoryTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnectorFactoryTest.java
@@ -25,13 +25,13 @@ import
org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.session.connection.ConnectionContext;
import org.apache.shardingsphere.infra.session.query.QueryContext;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.test.mock.AutoMockExtension;
import org.apache.shardingsphere.test.mock.StaticMockSettings;
@@ -97,7 +97,7 @@ class DatabaseConnectorFactoryTest {
private ContextManager mockContextManager(final ShardingSphereDatabase
database) {
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
Collections.singleton(database), mock(ResourceMetaData.class),
mock(RuleMetaData.class), new ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
when(result.getDatabase("foo_db")).thenReturn(database);
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/ProxyDatabaseConnectionManagerTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/ProxyDatabaseConnectionManagerTest.java
index c7f20f68dba..7f42c84fa1a 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/ProxyDatabaseConnectionManagerTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/ProxyDatabaseConnectionManagerTest.java
@@ -27,11 +27,11 @@ import
org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import
org.apache.shardingsphere.proxy.backend.connector.jdbc.connection.ConnectionPostProcessor;
import
org.apache.shardingsphere.proxy.backend.connector.jdbc.datasource.JDBCBackendDataSource;
@@ -129,7 +129,7 @@ class ProxyDatabaseConnectionManagerTest {
ComputeNodeInstanceContext computeNodeInstanceContext =
mock(ComputeNodeInstanceContext.class);
when(computeNodeInstanceContext.getModeConfiguration()).thenReturn(mock(ModeConfiguration.class));
return new ContextManager(new MetaDataContexts(metaData,
-
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData)), computeNodeInstanceContext,
mock(PersistRepository.class));
+ ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics())), computeNodeInstanceContext,
mock(PersistRepository.class));
}
@AfterEach
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/ProxySQLExecutorTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/ProxySQLExecutorTest.java
index 7f2fffa06d1..842bcfca952 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/ProxySQLExecutorTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/ProxySQLExecutorTest.java
@@ -36,14 +36,14 @@ import
org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.route.context.RouteContext;
import org.apache.shardingsphere.infra.session.connection.ConnectionContext;
import org.apache.shardingsphere.infra.session.query.QueryContext;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
@@ -110,8 +110,8 @@ class ProxySQLExecutorTest {
when(metaData.getGlobalRuleMetaData()).thenReturn(new
RuleMetaData(Arrays.asList(mock(SQLFederationRule.class), transactionRule)));
ComputeNodeInstanceContext computeNodeInstanceContext =
mock(ComputeNodeInstanceContext.class);
when(computeNodeInstanceContext.getModeConfiguration()).thenReturn(mock(ModeConfiguration.class));
- ContextManager contextManager = new ContextManager(new
MetaDataContexts(metaData, ShardingSphereStatisticsFactory.create(
- mock(MetaDataPersistService.class, RETURNS_DEEP_STUBS),
metaData)), computeNodeInstanceContext, mock(PersistRepository.class,
RETURNS_DEEP_STUBS));
+ ContextManager contextManager = new ContextManager(new
MetaDataContexts(metaData,
+ ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics())), computeNodeInstanceContext,
mock(PersistRepository.class, RETURNS_DEEP_STUBS));
when(ProxyContext.getInstance().getContextManager()).thenReturn(contextManager);
}
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/StandardDatabaseConnectorTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/StandardDatabaseConnectorTest.java
index 2e6db872182..009eae0a99f 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/StandardDatabaseConnectorTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/StandardDatabaseConnectorTest.java
@@ -37,15 +37,14 @@ import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSp
import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereSchema;
import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereTable;
import
org.apache.shardingsphere.infra.metadata.database.schema.util.SystemSchemaUtils;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.rule.ShardingSphereRule;
import org.apache.shardingsphere.infra.session.connection.ConnectionContext;
import org.apache.shardingsphere.infra.session.query.QueryContext;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
-import
org.apache.shardingsphere.mode.metadata.persist.data.ShardingSphereDataPersistService;
import org.apache.shardingsphere.parser.config.SQLParserRuleConfiguration;
import org.apache.shardingsphere.parser.rule.SQLParserRule;
import
org.apache.shardingsphere.proxy.backend.connector.jdbc.fixture.QueryHeaderBuilderFixture;
@@ -84,7 +83,6 @@ import static org.hamcrest.MatcherAssert.assertThat;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.doThrow;
import static org.mockito.Mockito.mock;
@@ -119,13 +117,9 @@ class StandardDatabaseConnectorTest {
private ContextManager mockContextManager() {
RuleMetaData globalRuleMetaData = new RuleMetaData(Arrays.asList(new
SQLParserRule(new SQLParserRuleConfiguration(mock(CacheOption.class),
mock(CacheOption.class))), sqlFederationRule));
- MetaDataPersistService metaDataPersistService =
mock(MetaDataPersistService.class);
- ShardingSphereDataPersistService shardingSphereDataPersistService =
mock(ShardingSphereDataPersistService.class);
-
when(shardingSphereDataPersistService.load(any())).thenReturn(Optional.empty());
-
when(metaDataPersistService.getShardingSphereDataPersistService()).thenReturn(shardingSphereDataPersistService);
ShardingSphereDatabase database = mockDatabase();
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(Collections.singleton(database),
mock(ResourceMetaData.class), globalRuleMetaData, new
ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
when(result.getDatabase("foo_db")).thenReturn(database);
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/jdbc/datasource/JDBCBackendDataSourceTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/jdbc/datasource/JDBCBackendDataSourceTest.java
index ee1c9911a1a..92a95688b76 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/jdbc/datasource/JDBCBackendDataSourceTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/jdbc/datasource/JDBCBackendDataSourceTest.java
@@ -26,11 +26,11 @@ import
org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import
org.apache.shardingsphere.proxy.backend.connector.jdbc.datasource.fixture.CallTimeRecordDataSource;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.test.mock.AutoMockExtension;
@@ -86,7 +86,7 @@ class JDBCBackendDataSourceTest {
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(Collections.singleton(mockDatabase()),
mock(ResourceMetaData.class), new
RuleMetaData(Collections.singleton(mock(TransactionRule.class,
RETURNS_DEEP_STUBS))), new ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
}
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/context/BackendExecutorContextTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/context/BackendExecutorContextTest.java
index 8b526691739..95601cb9ec4 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/context/BackendExecutorContextTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/context/BackendExecutorContextTest.java
@@ -18,10 +18,9 @@
package org.apache.shardingsphere.proxy.backend.context;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.test.mock.AutoMockExtension;
import org.apache.shardingsphere.test.mock.StaticMockSettings;
import org.junit.jupiter.api.Test;
@@ -46,7 +45,7 @@ class BackendExecutorContextTest {
private ContextManager mockContextManager() {
ShardingSphereMetaData metaData = new ShardingSphereMetaData();
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData, new
ShardingSphereStatistics());
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/context/ProxyContextTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/context/ProxyContextTest.java
index d656b0c06db..0d91127aed2 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/context/ProxyContextTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/context/ProxyContextTest.java
@@ -24,11 +24,11 @@ import
org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import org.apache.shardingsphere.mode.state.ClusterState;
import org.junit.jupiter.api.AfterEach;
@@ -71,7 +71,7 @@ class ProxyContextTest {
@Test
void assertInit() {
ShardingSphereMetaData metaData = new ShardingSphereMetaData();
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData, new
ShardingSphereStatistics());
ProxyContext.init(new ContextManager(metaDataContexts,
mock(ComputeNodeInstanceContext.class, RETURNS_DEEP_STUBS),
mock(PersistRepository.class)));
assertThat(ProxyContext.getInstance().getContextManager().getStateContext(),
is(ProxyContext.getInstance().getContextManager().getStateContext()));
assertThat(ProxyContext.getInstance().getContextManager().getStateContext().getState(),
is(ClusterState.OK));
@@ -85,7 +85,7 @@ class ProxyContextTest {
ContextManager contextManager = mock(ContextManager.class,
RETURNS_DEEP_STUBS);
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
Collections.singleton(mockDatabase()),
mock(ResourceMetaData.class), mock(RuleMetaData.class), new
ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(contextManager.getMetaDataContexts()).thenReturn(metaDataContexts);
ProxyContext.init(contextManager);
assertTrue(ProxyContext.getInstance().databaseExists("db"));
@@ -97,7 +97,7 @@ class ProxyContextTest {
Collection<ShardingSphereDatabase> databases = createDatabases();
ContextManager contextManager = mock(ContextManager.class,
RETURNS_DEEP_STUBS);
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(databases, mock(), mock(), new
ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(contextManager.getMetaDataContexts()).thenReturn(metaDataContexts);
ProxyContext.init(contextManager);
assertThat(new
HashSet<>(ProxyContext.getInstance().getAllDatabaseNames()),
is(databases.stream().map(ShardingSphereDatabase::getName).collect(Collectors.toSet())));
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/admin/DatabaseAdminQueryBackendHandlerTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/admin/DatabaseAdminQueryBackendHandlerTest.java
index 744b5a4a9e6..3107c5d8c11 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/admin/DatabaseAdminQueryBackendHandlerTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/admin/DatabaseAdminQueryBackendHandlerTest.java
@@ -25,11 +25,11 @@ import
org.apache.shardingsphere.infra.merge.result.impl.local.LocalDataMergedRe
import
org.apache.shardingsphere.infra.merge.result.impl.local.LocalDataQueryResultRow;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import
org.apache.shardingsphere.proxy.backend.handler.admin.executor.DatabaseAdminQueryExecutor;
import
org.apache.shardingsphere.proxy.backend.response.header.query.QueryHeaderBuilder;
@@ -113,6 +113,6 @@ class DatabaseAdminQueryBackendHandlerTest {
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(Collections.singleton(database), mock(), mock(), new
ConfigurationProperties(new Properties()));
ComputeNodeInstanceContext computeNodeInstanceContext =
mock(ComputeNodeInstanceContext.class, RETURNS_DEEP_STUBS);
return new ContextManager(
- new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData)), computeNodeInstanceContext, mock());
+ new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics())), computeNodeInstanceContext, mock());
}
}
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/admin/executor/DefaultDatabaseMetaDataExecutorTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/admin/executor/DefaultDatabaseMetaDataExecutorTest.java
index 54877809caf..e9baf97fc6b 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/admin/executor/DefaultDatabaseMetaDataExecutorTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/admin/executor/DefaultDatabaseMetaDataExecutorTest.java
@@ -26,12 +26,12 @@ import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
import
org.apache.shardingsphere.infra.metadata.database.schema.util.SystemSchemaUtils;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.metadata.user.Grantee;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import
org.apache.shardingsphere.proxy.backend.handler.admin.executor.AbstractDatabaseMetaDataExecutor.DefaultDatabaseMetaDataExecutor;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
@@ -152,7 +152,7 @@ class DefaultDatabaseMetaDataExecutorTest {
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
Collections.singleton(database), mock(ResourceMetaData.class),
new RuleMetaData(Collections.singleton(authorityRule)), new
ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
when(result.getDatabase("auth_db")).thenReturn(database);
when(ProxyContext.getInstance().getAllDatabaseNames()).thenReturn(Collections.singleton("auth_db"));
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/data/impl/UnicastDatabaseBackendHandlerTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/data/impl/UnicastDatabaseBackendHandlerTest.java
index bc282e8f78a..2f374518b14 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/data/impl/UnicastDatabaseBackendHandlerTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/data/impl/UnicastDatabaseBackendHandlerTest.java
@@ -23,13 +23,13 @@ import
org.apache.shardingsphere.infra.hint.HintValueContext;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.session.connection.ConnectionContext;
import org.apache.shardingsphere.infra.session.query.QueryContext;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.connector.DatabaseConnector;
import
org.apache.shardingsphere.proxy.backend.connector.DatabaseConnectorFactory;
import
org.apache.shardingsphere.proxy.backend.connector.ProxyDatabaseConnectionManager;
@@ -134,7 +134,7 @@ class UnicastDatabaseBackendHandlerTest {
private ContextManager mockContextManager() {
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(createDatabases(), mock(), mock(), mock());
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
}
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/database/DatabaseOperateBackendHandlerFactoryTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/database/DatabaseOperateBackendHandlerFactoryTest.java
index 2964fe3bc19..cd0d07bb025 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/database/DatabaseOperateBackendHandlerFactoryTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/database/DatabaseOperateBackendHandlerFactoryTest.java
@@ -25,11 +25,11 @@ import
org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.response.header.ResponseHeader;
import
org.apache.shardingsphere.proxy.backend.response.header.update.UpdateResponseHeader;
@@ -81,7 +81,7 @@ class DatabaseOperateBackendHandlerFactoryTest {
when(connectionSession.getConnectionContext().getGrantee()).thenReturn(null);
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
Collections.singleton(mockDatabase()),
mock(ResourceMetaData.class), mock(RuleMetaData.class), new
ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(contextManager.getMetaDataContexts()).thenReturn(metaDataContexts);
when(ProxyContext.getInstance().getContextManager()).thenReturn(contextManager);
when(ProxyContext.getInstance().databaseExists("foo_db")).thenReturn(true);
@@ -155,9 +155,7 @@ class DatabaseOperateBackendHandlerFactoryTest {
private void setGovernanceMetaDataContexts(final boolean isGovernance) {
ShardingSphereMetaData metaData = new ShardingSphereMetaData();
- MetaDataContexts metaDataContexts = isGovernance
- ? mockMetaDataContexts()
- : new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData));
+ MetaDataContexts metaDataContexts = isGovernance ?
mockMetaDataContexts() : new MetaDataContexts(metaData, new
ShardingSphereStatistics());
when(contextManager.getMetaDataContexts()).thenReturn(metaDataContexts);
}
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/DistSQLQueryBackendHandlerTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/DistSQLQueryBackendHandlerTest.java
index 36dd74cdfe9..ebbc17ffbfa 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/DistSQLQueryBackendHandlerTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/DistSQLQueryBackendHandlerTest.java
@@ -31,12 +31,11 @@ import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSp
import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereIndex;
import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereSchema;
import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereTable;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
import
org.apache.shardingsphere.infra.spi.exception.ServiceProviderNotFoundException;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
@@ -71,7 +70,7 @@ class DistSQLQueryBackendHandlerTest {
@Test
void assertExecuteWithUnknownDatabase() {
ShardingSphereMetaData metaData = new ShardingSphereMetaData();
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData, new
ShardingSphereStatistics());
ConnectionSession connectionSession = mock(ConnectionSession.class,
RETURNS_DEEP_STUBS);
when(connectionSession.getUsedDatabaseName()).thenReturn("unknown");
ComputeNodeInstanceContext computeNodeInstanceContext =
mock(ComputeNodeInstanceContext.class);
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ExportMetaDataExecutorTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ExportMetaDataExecutorTest.java
index bd05f1696a3..3b595b773d6 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ExportMetaDataExecutorTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ExportMetaDataExecutorTest.java
@@ -39,6 +39,8 @@ import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import
org.apache.shardingsphere.infra.metadata.database.resource.unit.StorageUnit;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
import org.apache.shardingsphere.infra.util.json.JsonUtils;
@@ -47,8 +49,6 @@ import
org.apache.shardingsphere.infra.yaml.config.pojo.rule.YamlRuleConfigurati
import org.apache.shardingsphere.mode.manager.ContextManager;
import
org.apache.shardingsphere.mode.manager.standalone.workerid.StandaloneWorkerIdGenerator;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import
org.apache.shardingsphere.proxy.backend.config.yaml.YamlProxyDataSourceConfiguration;
import
org.apache.shardingsphere.proxy.backend.config.yaml.YamlProxyDatabaseConfiguration;
import
org.apache.shardingsphere.proxy.backend.config.yaml.YamlProxyServerConfiguration;
@@ -107,7 +107,7 @@ class ExportMetaDataExecutorTest {
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(Collections.singleton(database),
new ResourceMetaData(Collections.emptyMap()), new
RuleMetaData(Collections.singleton(new GlobalClockRule(new
DefaultGlobalClockRuleConfigurationBuilder().build()))),
new ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
}
@@ -138,7 +138,7 @@ class ExportMetaDataExecutorTest {
new RuleMetaData(Arrays.asList(new AuthorityRule(new
DefaultAuthorityRuleConfigurationBuilder().build()),
new GlobalClockRule(new
DefaultGlobalClockRuleConfigurationBuilder().build()))),
new ConfigurationProperties(PropertiesBuilder.build(new
Property(ConfigurationPropertyKey.SQL_SHOW.getKey(), "true"))));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
ComputeNodeInstanceContext computeNodeInstanceContext = new
ComputeNodeInstanceContext(
new ComputeNodeInstance(mock(InstanceMetaData.class)), new
ModeConfiguration("Standalone", null), new EventBusContext());
computeNodeInstanceContext.init(new StandaloneWorkerIdGenerator(),
mock(LockContext.class));
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ExportStorageNodesExecutorTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ExportStorageNodesExecutorTest.java
index 93e19382774..75d635c048c 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ExportStorageNodesExecutorTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ExportStorageNodesExecutorTest.java
@@ -31,11 +31,11 @@ import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import
org.apache.shardingsphere.infra.metadata.database.resource.unit.StorageUnit;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import
org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
@@ -114,7 +114,7 @@ class ExportStorageNodesExecutorTest {
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
Collections.emptyList(), new
ResourceMetaData(Collections.emptyMap()), new
RuleMetaData(Collections.emptyList()), new ConfigurationProperties(new
Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData, new
ShardingSphereStatistics());
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
}
@@ -153,7 +153,7 @@ class ExportStorageNodesExecutorTest {
new ResourceMetaData(Collections.emptyMap()),
new RuleMetaData(Collections.singleton(new AuthorityRule(new
DefaultAuthorityRuleConfigurationBuilder().build()))),
new ConfigurationProperties(PropertiesBuilder.build(new
Property(ConfigurationPropertyKey.SQL_SHOW.getKey(), "true"))));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
}
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/ImportMetaDataExecutorTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/ImportMetaDataExecutorTest.java
index 6ed80dbbb6d..dc2d36197be 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/ImportMetaDataExecutorTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/ImportMetaDataExecutorTest.java
@@ -39,13 +39,13 @@ import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import
org.apache.shardingsphere.infra.metadata.database.resource.unit.StorageUnit;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
import org.apache.shardingsphere.mode.manager.ContextManager;
import
org.apache.shardingsphere.mode.manager.standalone.workerid.StandaloneWorkerIdGenerator;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.test.fixture.jdbc.MockedDataSource;
import org.apache.shardingsphere.test.util.PropertiesBuilder;
import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
@@ -118,7 +118,7 @@ class ImportMetaDataExecutorTest {
new RuleMetaData(Arrays.asList(new AuthorityRule(new
DefaultAuthorityRuleConfigurationBuilder().build()),
new GlobalClockRule(new
DefaultGlobalClockRuleConfigurationBuilder().build()))),
new ConfigurationProperties(PropertiesBuilder.build(new
Property(ConfigurationPropertyKey.SQL_SHOW.getKey(), "true"))));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
ComputeNodeInstanceContext computeNodeInstanceContext = new
ComputeNodeInstanceContext(
new ComputeNodeInstance(mock(InstanceMetaData.class)), new
ModeConfiguration("Standalone", null), new EventBusContext());
computeNodeInstanceContext.init(new StandaloneWorkerIdGenerator(),
mock(LockContext.class));
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/SetDistVariableExecutorTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/SetDistVariableExecutorTest.java
index 283062dae33..61196c0b8e7 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/SetDistVariableExecutorTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/SetDistVariableExecutorTest.java
@@ -29,10 +29,10 @@ import
org.apache.shardingsphere.infra.instance.metadata.InstanceMetaData;
import org.apache.shardingsphere.infra.instance.workerid.WorkerIdGenerator;
import org.apache.shardingsphere.infra.lock.LockContext;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import
org.apache.shardingsphere.mode.metadata.persist.service.config.global.PropertiesPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
@@ -111,7 +111,6 @@ class SetDistVariableExecutorTest {
ComputeNodeInstanceContext computeNodeInstanceContext = new
ComputeNodeInstanceContext(
new ComputeNodeInstance(mock(InstanceMetaData.class)), new
ModeConfiguration("Standalone", null), new EventBusContext());
computeNodeInstanceContext.init(mock(WorkerIdGenerator.class),
mock(LockContext.class));
- ShardingSphereMetaData metaData = new ShardingSphereMetaData();
- return new ContextManager(new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData)),
computeNodeInstanceContext, mock());
+ return new ContextManager(new MetaDataContexts(new
ShardingSphereMetaData(), new ShardingSphereStatistics()),
computeNodeInstanceContext, mock());
}
}
diff --git
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/MySQLAdminExecutorCreatorTest.java
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/MySQLAdminExecutorCreatorTest.java
index 24ec6814073..64c8aacef60 100644
---
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/MySQLAdminExecutorCreatorTest.java
+++
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/MySQLAdminExecutorCreatorTest.java
@@ -24,11 +24,11 @@ import
org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import
org.apache.shardingsphere.proxy.backend.handler.admin.executor.AbstractDatabaseMetaDataExecutor.DefaultDatabaseMetaDataExecutor;
import
org.apache.shardingsphere.proxy.backend.handler.admin.executor.DatabaseAdminExecutor;
@@ -352,7 +352,7 @@ class MySQLAdminExecutorCreatorTest {
private void initProxyContext(final Collection<ShardingSphereDatabase>
databases) {
ContextManager contextManager = mock(ContextManager.class,
RETURNS_DEEP_STUBS);
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(databases, mock(ResourceMetaData.class),
mock(RuleMetaData.class), new ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(contextManager.getMetaDataContexts()).thenReturn(metaDataContexts);
when(ProxyContext.getInstance().getContextManager()).thenReturn(contextManager);
}
diff --git
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowCreateDatabaseExecutorTest.java
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowCreateDatabaseExecutorTest.java
index b8ed7a71804..300b23a94a6 100644
---
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowCreateDatabaseExecutorTest.java
+++
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowCreateDatabaseExecutorTest.java
@@ -20,12 +20,11 @@ package
org.apache.shardingsphere.proxy.backend.mysql.handler.admin.executor;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
-import
org.apache.shardingsphere.mode.metadata.persist.data.ShardingSphereDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import
org.apache.shardingsphere.sql.parser.statement.mysql.dal.MySQLShowCreateDatabaseStatement;
@@ -37,13 +36,11 @@ import org.junit.jupiter.api.extension.ExtendWith;
import java.sql.SQLException;
import java.util.Collection;
import java.util.Collections;
-import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -74,12 +71,8 @@ class ShowCreateDatabaseExecutorTest {
}
private ContextManager mockContextManager() {
- MetaDataPersistService metaDataPersistService =
mock(MetaDataPersistService.class);
- ShardingSphereDataPersistService shardingSphereDataPersistService =
mock(ShardingSphereDataPersistService.class);
-
when(shardingSphereDataPersistService.load(any())).thenReturn(Optional.empty());
-
when(metaDataPersistService.getShardingSphereDataPersistService()).thenReturn(shardingSphereDataPersistService);
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(createDatabases(), mock(), mock(), mock());
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
diff --git
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowCurrentUserExecutorTest.java
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowCurrentUserExecutorTest.java
index 0230aee23a9..0a4cfac7e55 100644
---
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowCurrentUserExecutorTest.java
+++
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowCurrentUserExecutorTest.java
@@ -22,12 +22,12 @@ import
org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.metadata.user.Grantee;
import org.apache.shardingsphere.infra.metadata.user.ShardingSphereUser;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import org.apache.shardingsphere.test.mock.AutoMockExtension;
@@ -67,7 +67,7 @@ class ShowCurrentUserExecutorTest {
private ContextManager mockContextManager() {
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(Collections.emptyList(), mock(ResourceMetaData.class),
mockRuleMetaData(), new ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
}
diff --git
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowDatabasesExecutorTest.java
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowDatabasesExecutorTest.java
index 0264470a4d2..118de9cc1c2 100644
---
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowDatabasesExecutorTest.java
+++
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowDatabasesExecutorTest.java
@@ -24,12 +24,12 @@ import
org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryRe
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.metadata.user.Grantee;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import
org.apache.shardingsphere.sql.parser.statement.core.segment.dal.ShowFilterSegment;
@@ -53,7 +53,6 @@ import java.util.stream.IntStream;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.mock;
@@ -182,10 +181,8 @@ class ShowDatabasesExecutorTest {
private ContextManager mockContextManager() {
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
RuleMetaData globalRuleMetaData = new
RuleMetaData(Collections.singleton(mockAuthorityRule()));
- MetaDataPersistService metaDataPersistService =
mock(MetaDataPersistService.class, RETURNS_DEEP_STUBS);
-
when(metaDataPersistService.getShardingSphereDataPersistService().load(any())).thenReturn(Optional.empty());
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(createDatabases(), mock(), globalRuleMetaData, mock());
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
}
diff --git
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowFunctionStatusExecutorTest.java
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowFunctionStatusExecutorTest.java
index 3b83d4c87dc..eee467a1237 100644
---
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowFunctionStatusExecutorTest.java
+++
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowFunctionStatusExecutorTest.java
@@ -20,11 +20,11 @@ package
org.apache.shardingsphere.proxy.backend.mysql.handler.admin.executor;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import
org.apache.shardingsphere.sql.parser.statement.mysql.dal.MySQLShowFunctionStatusStatement;
@@ -36,13 +36,11 @@ import org.junit.jupiter.api.extension.ExtendWith;
import java.sql.SQLException;
import java.util.Collection;
import java.util.Collections;
-import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -65,10 +63,8 @@ class ShowFunctionStatusExecutorTest {
}
private ContextManager mockContextManager() {
- MetaDataPersistService metaDataPersistService =
mock(MetaDataPersistService.class, RETURNS_DEEP_STUBS);
-
when(metaDataPersistService.getShardingSphereDataPersistService().load(any())).thenReturn(Optional.empty());
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(createDatabases(), mock(), mock(), mock());
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
diff --git
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcedureStatusExecutorTest.java
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcedureStatusExecutorTest.java
index d84ad71460b..db522d47519 100644
---
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcedureStatusExecutorTest.java
+++
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcedureStatusExecutorTest.java
@@ -20,11 +20,11 @@ package
org.apache.shardingsphere.proxy.backend.mysql.handler.admin.executor;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import
org.apache.shardingsphere.sql.parser.statement.mysql.dal.MySQLShowProcedureStatusStatement;
@@ -36,13 +36,11 @@ import org.junit.jupiter.api.extension.ExtendWith;
import java.sql.SQLException;
import java.util.Collection;
import java.util.Collections;
-import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -65,10 +63,8 @@ class ShowProcedureStatusExecutorTest {
}
private ContextManager mockContextManager() {
- MetaDataPersistService metaDataPersistService =
mock(MetaDataPersistService.class, RETURNS_DEEP_STUBS);
-
when(metaDataPersistService.getShardingSphereDataPersistService().load(any())).thenReturn(Optional.empty());
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(createDatabases(), mock(), mock(), mock());
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
diff --git
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowTablesExecutorTest.java
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowTablesExecutorTest.java
index 93bcc6c551e..ed3143367b8 100644
---
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowTablesExecutorTest.java
+++
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowTablesExecutorTest.java
@@ -28,12 +28,11 @@ import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaDa
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereSchema;
import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereTable;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
-import
org.apache.shardingsphere.mode.metadata.persist.data.ShardingSphereDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import
org.apache.shardingsphere.sql.parser.statement.core.segment.dal.FromDatabaseSegment;
@@ -60,7 +59,6 @@ import java.util.Properties;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.junit.jupiter.api.Assertions.assertFalse;
-import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -193,13 +191,9 @@ class ShowTablesExecutorTest {
}
private ContextManager mockContextManager(final
Collection<ShardingSphereDatabase> databases) {
- MetaDataPersistService metaDataPersistService =
mock(MetaDataPersistService.class);
- ShardingSphereDataPersistService shardingSphereDataPersistService =
mock(ShardingSphereDataPersistService.class);
-
when(shardingSphereDataPersistService.load(any())).thenReturn(Optional.empty());
-
when(metaDataPersistService.getShardingSphereDataPersistService()).thenReturn(shardingSphereDataPersistService);
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
databases, mock(ResourceMetaData.class), new
RuleMetaData(Collections.singleton(mock(AuthorityRule.class))), new
ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
when(result.getDatabase("db_0")).thenReturn(databases.iterator().next());
diff --git
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/UseDatabaseExecutorTest.java
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/UseDatabaseExecutorTest.java
index 48c589f5527..60dbeb7fe89 100644
---
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/UseDatabaseExecutorTest.java
+++
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/UseDatabaseExecutorTest.java
@@ -21,11 +21,11 @@ import
org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import
org.apache.shardingsphere.infra.exception.dialect.exception.syntax.database.UnknownDatabaseException;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import
org.apache.shardingsphere.sql.parser.statement.mysql.dal.MySQLUseStatement;
@@ -85,7 +85,7 @@ class UseDatabaseExecutorTest {
private ContextManager mockContextManager() {
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(createDatabases(), mock(), mock(), mock());
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
}
diff --git
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/information/SelectInformationSchemataExecutorTest.java
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/information/SelectInformationSchemataExecutorTest.java
index 38c83fa239c..e5693349449 100644
---
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/information/SelectInformationSchemataExecutorTest.java
+++
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/information/SelectInformationSchemataExecutorTest.java
@@ -27,13 +27,12 @@ import
org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.metadata.user.Grantee;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
-import
org.apache.shardingsphere.mode.metadata.persist.data.ShardingSphereDataPersistService;
import org.apache.shardingsphere.parser.rule.SQLParserRule;
import
org.apache.shardingsphere.parser.rule.builder.DefaultSQLParserRuleConfigurationBuilder;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
@@ -161,14 +160,10 @@ class SelectInformationSchemataExecutorTest {
AuthorityRule authorityRule = mock(AuthorityRule.class);
when(authorityRule.findPrivileges(grantee)).thenReturn(Optional.of(new
DatabasePermittedPrivileges(Collections.singleton("auth_db"))));
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
- MetaDataPersistService metaDataPersistService =
mock(MetaDataPersistService.class);
- ShardingSphereDataPersistService shardingSphereDataPersistService =
mock(ShardingSphereDataPersistService.class);
-
when(shardingSphereDataPersistService.load(any())).thenReturn(Optional.empty());
-
when(metaDataPersistService.getShardingSphereDataPersistService()).thenReturn(shardingSphereDataPersistService);
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
Arrays.stream(databases).collect(Collectors.toList()),
mock(ResourceMetaData.class), new
RuleMetaData(Collections.singleton(authorityRule)),
new ConfigurationProperties(new Properties()));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
for (ShardingSphereDatabase each : databases) {
when(result.getDatabase(each.getName())).thenReturn(each);
diff --git
a/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/protocol/FrontDatabaseProtocolTypeFactoryTest.java
b/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/protocol/FrontDatabaseProtocolTypeFactoryTest.java
index 3a86b91f0b9..bd5590fbfd0 100644
---
a/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/protocol/FrontDatabaseProtocolTypeFactoryTest.java
+++
b/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/protocol/FrontDatabaseProtocolTypeFactoryTest.java
@@ -24,12 +24,11 @@ import
org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
-import
org.apache.shardingsphere.mode.metadata.persist.data.ShardingSphereDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.test.mock.AutoMockExtension;
@@ -43,13 +42,11 @@ import org.mockito.quality.Strictness;
import java.util.Collection;
import java.util.Collections;
-import java.util.Optional;
import java.util.Properties;
import static org.hamcrest.CoreMatchers.instanceOf;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -92,12 +89,8 @@ class FrontDatabaseProtocolTypeFactoryTest {
}
private ContextManager mockContextManager(final
Collection<ShardingSphereDatabase> databases, final Properties props) {
- MetaDataPersistService metaDataPersistService =
mock(MetaDataPersistService.class);
- ShardingSphereDataPersistService shardingSphereDataPersistService =
mock(ShardingSphereDataPersistService.class);
-
when(shardingSphereDataPersistService.load(any())).thenReturn(Optional.empty());
-
when(metaDataPersistService.getShardingSphereDataPersistService()).thenReturn(shardingSphereDataPersistService);
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(databases, mock(), mock(), new
ConfigurationProperties(props));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
ComputeNodeInstanceContext computeNodeInstanceContext =
mock(ComputeNodeInstanceContext.class);
when(computeNodeInstanceContext.getModeConfiguration()).thenReturn(mock(ModeConfiguration.class));
return new ContextManager(metaDataContexts,
computeNodeInstanceContext, mock(PersistRepository.class));
diff --git
a/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyStateTest.java
b/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyStateTest.java
index 2bd82192206..1df8e69587a 100644
---
a/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyStateTest.java
+++
b/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyStateTest.java
@@ -27,11 +27,11 @@ import
org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
import org.apache.shardingsphere.proxy.frontend.command.CommandExecutorTask;
@@ -97,8 +97,7 @@ class OKProxyStateTest {
when(metaData.getGlobalRuleMetaData()).thenReturn(new
RuleMetaData(Collections.singletonList(transactionRule)));
ComputeNodeInstanceContext computeNodeInstanceContext =
mock(ComputeNodeInstanceContext.class);
when(computeNodeInstanceContext.getModeConfiguration()).thenReturn(mock(ModeConfiguration.class));
- return new ContextManager(
- new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class,
RETURNS_DEEP_STUBS), metaData)), computeNodeInstanceContext, mock());
+ return new ContextManager(new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics())), computeNodeInstanceContext, mock());
}
@SuppressWarnings({"unchecked", "SameParameterValue"})
diff --git
a/proxy/frontend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/authentication/MySQLAuthenticationEngineTest.java
b/proxy/frontend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/authentication/MySQLAuthenticationEngineTest.java
index 8c6d3477699..64be18b7f66 100644
---
a/proxy/frontend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/authentication/MySQLAuthenticationEngineTest.java
+++
b/proxy/frontend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/authentication/MySQLAuthenticationEngineTest.java
@@ -45,13 +45,13 @@ import
org.apache.shardingsphere.infra.exception.mysql.vendor.MySQLVendorError;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.metadata.user.Grantee;
import org.apache.shardingsphere.infra.metadata.user.ShardingSphereUser;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import
org.apache.shardingsphere.proxy.frontend.mysql.ssl.MySQLSSLRequestHandler;
import org.apache.shardingsphere.proxy.frontend.ssl.ProxySSLContext;
@@ -283,11 +283,9 @@ class MySQLAuthenticationEngineTest {
private ContextManager mockContextManager(final AuthorityRule rule) {
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
- MetaDataPersistService metaDataPersistService =
mock(MetaDataPersistService.class, RETURNS_DEEP_STUBS);
-
when(metaDataPersistService.getShardingSphereDataPersistService().load(any())).thenReturn(Optional.empty());
ShardingSphereDatabase database = new ShardingSphereDatabase("foo_db",
TypedSPILoader.getService(DatabaseType.class, "MySQL"), mock(), mock(),
Collections.emptyList());
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(Collections.singleton(database), mock(), new
RuleMetaData(Collections.singleton(rule)), mock());
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaDataPersistService, metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(metaData, new
ShardingSphereStatistics()));
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
}
diff --git
a/proxy/frontend/type/opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngineTest.java
b/proxy/frontend/type/opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngineTest.java
index 5358129a45f..60aa7f18c41 100644
---
a/proxy/frontend/type/opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngineTest.java
+++
b/proxy/frontend/type/opengauss/src/test/java/org/apache/shardingsphere/proxy/frontend/opengauss/authentication/OpenGaussAuthenticationEngineTest.java
@@ -40,10 +40,9 @@ import
org.apache.shardingsphere.infra.exception.postgresql.exception.protocol.P
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.frontend.ssl.ProxySSLContext;
import org.apache.shardingsphere.test.mock.AutoMockExtension;
@@ -134,7 +133,7 @@ class OpenGaussAuthenticationEngineTest {
private ContextManager mockContextManager() {
ShardingSphereMetaData metaData = new
ShardingSphereMetaData(Collections.emptyList(), mock(ResourceMetaData.class),
buildGlobalRuleMetaData(new UserConfiguration("root",
"sharding", "", null, false)), mock(ConfigurationProperties.class));
- MetaDataContexts metaDataContexts = new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData));
+ MetaDataContexts metaDataContexts = new MetaDataContexts(metaData, new
ShardingSphereStatistics());
ContextManager result = mock(ContextManager.class, RETURNS_DEEP_STUBS);
when(result.getMetaDataContexts()).thenReturn(metaDataContexts);
return result;
diff --git
a/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngineTest.java
b/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngineTest.java
index 869d59b068c..1cb279624ec 100644
---
a/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngineTest.java
+++
b/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/authentication/PostgreSQLAuthenticationEngineTest.java
@@ -43,10 +43,9 @@ import
org.apache.shardingsphere.infra.exception.postgresql.exception.protocol.P
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
import org.apache.shardingsphere.infra.metadata.database.rule.RuleMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import
org.apache.shardingsphere.proxy.frontend.postgresql.authentication.authenticator.impl.PostgreSQLMD5PasswordAuthenticator;
import org.apache.shardingsphere.proxy.frontend.ssl.ProxySSLContext;
@@ -201,7 +200,7 @@ class PostgreSQLAuthenticationEngineTest {
private MetaDataContexts getMetaDataContexts(final UserConfiguration
userConfig) {
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
Collections.emptyList(), mock(ResourceMetaData.class),
buildGlobalRuleMetaData(userConfig), new ConfigurationProperties(new
Properties()));
- return new MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData));
+ return new MetaDataContexts(metaData, new ShardingSphereStatistics());
}
private RuleMetaData buildGlobalRuleMetaData(final UserConfiguration
userConfig) {
diff --git
a/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecuteEngineTest.java
b/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecuteEngineTest.java
index 44658712137..5990f922d23 100644
---
a/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecuteEngineTest.java
+++
b/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/PostgreSQLCommandExecuteEngineTest.java
@@ -25,10 +25,9 @@ import
org.apache.shardingsphere.db.protocol.postgresql.packet.generic.PostgreSQ
import org.apache.shardingsphere.infra.config.mode.ModeConfiguration;
import org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
+import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
-import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import
org.apache.shardingsphere.proxy.backend.connector.ProxyDatabaseConnectionManager;
import
org.apache.shardingsphere.proxy.backend.connector.jdbc.connection.ConnectionResourceLock;
@@ -124,9 +123,8 @@ class PostgreSQLCommandExecuteEngineTest {
PostgreSQLCommandExecuteEngine commandExecuteEngine = new
PostgreSQLCommandExecuteEngine();
ComputeNodeInstanceContext computeNodeInstanceContext =
mock(ComputeNodeInstanceContext.class);
when(computeNodeInstanceContext.getModeConfiguration()).thenReturn(mock(ModeConfiguration.class));
- ShardingSphereMetaData metaData = new ShardingSphereMetaData();
- ContextManager contextManager = new ContextManager(new
MetaDataContexts(metaData,
ShardingSphereStatisticsFactory.create(mock(MetaDataPersistService.class),
metaData)),
- computeNodeInstanceContext, mock(PersistRepository.class));
+ ContextManager contextManager = new ContextManager(
+ new MetaDataContexts(new ShardingSphereMetaData(), new
ShardingSphereStatistics()), computeNodeInstanceContext,
mock(PersistRepository.class));
when(ProxyContext.getInstance().getContextManager()).thenReturn(contextManager);
commandExecuteEngine.writeQueryData(channelHandlerContext,
databaseConnectionManager, queryCommandExecutor, 0);
verify(connectionResourceLock).doAwait(channelHandlerContext);
diff --git
a/test/it/pipeline/src/test/java/org/apache/shardingsphere/test/it/data/pipeline/core/util/PipelineContextUtils.java
b/test/it/pipeline/src/test/java/org/apache/shardingsphere/test/it/data/pipeline/core/util/PipelineContextUtils.java
index b3040118409..c34b27ff648 100644
---
a/test/it/pipeline/src/test/java/org/apache/shardingsphere/test/it/data/pipeline/core/util/PipelineContextUtils.java
+++
b/test/it/pipeline/src/test/java/org/apache/shardingsphere/test/it/data/pipeline/core/util/PipelineContextUtils.java
@@ -56,6 +56,7 @@ import
org.apache.shardingsphere.infra.metadata.database.schema.QualifiedTable;
import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereColumn;
import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereTable;
import
org.apache.shardingsphere.infra.metadata.identifier.ShardingSphereIdentifier;
+import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.infra.yaml.config.pojo.YamlRootConfiguration;
import
org.apache.shardingsphere.infra.yaml.config.swapper.mode.YamlModeConfigurationSwapper;
@@ -63,7 +64,6 @@ import
org.apache.shardingsphere.infra.yaml.config.swapper.resource.YamlDataSour
import
org.apache.shardingsphere.infra.yaml.config.swapper.rule.YamlRuleConfigurationSwapperEngine;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
-import org.apache.shardingsphere.mode.metadata.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistService;
import
org.apache.shardingsphere.mode.repository.cluster.ClusterPersistRepository;
import
org.apache.shardingsphere.mode.repository.cluster.ClusterPersistRepositoryConfiguration;
@@ -145,7 +145,7 @@ public final class PipelineContextUtils {
new ShardingSphereColumn("status", Types.VARCHAR, false,
false, false, true, false, false)),
Collections.emptyList(), Collections.emptyList()));
tables.forEach(each ->
old.getMetaData().getDatabase("logic_db").getSchema("logic_db").putTable(each));
- return new MetaDataContexts(old.getMetaData(),
ShardingSphereStatisticsFactory.create(persistService, old.getMetaData()));
+ return new MetaDataContexts(old.getMetaData(),
ShardingSphereStatisticsFactory.create(old.getMetaData(),
persistService.getShardingSphereDataPersistService().load(old.getMetaData())));
}
/**