This is an automated email from the ASF dual-hosted git repository.
menghaoranss 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 283086a7acb Remove the useless PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED
config key (#38711)
283086a7acb is described below
commit 283086a7acb7154a69c00a8099c5ff42ed3ae04e
Author: Haoran Meng <[email protected]>
AuthorDate: Wed May 27 10:04:03 2026 +0800
Remove the useless PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED config key (#38711)
* Remove the useless PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED config key
* Fix show dist variables
---
.../config/props/ConfigurationPropertyKey.java | 5 --
.../config/props/ConfigurationPropertiesTest.java | 3 -
.../metadata/factory/MetaDataContextsFactory.java | 12 +--
...alConfigurationMetaDataContextsInitFactory.java | 13 +---
.../RegisterCenterMetaDataContextsInitFactory.java | 24 +-----
.../metadata/manager/MetaDataContextManager.java | 3 +-
.../metadata/persist/MetaDataPersistFacade.java | 8 +-
.../metadata/DatabaseMetaDataPersistFacade.java | 12 +--
.../service/SchemaMetaDataPersistService.java | 1 -
.../TableMetaDataPersistDisabledService.java | 77 ------------------
...rvice.java => TableMetaDataPersistService.java} | 44 +++++++++--
.../mode/persist/PersistServiceFacade.java | 4 +-
.../service/TableMetaDataPersistService.java | 75 ------------------
.../factory/MetaDataContextsFactoryTest.java | 29 +------
...nfigurationMetaDataContextsInitFactoryTest.java | 38 +--------
...isterCenterMetaDataContextsInitFactoryTest.java | 38 ---------
.../manager/MetaDataContextManagerTest.java | 2 -
.../DatabaseMetaDataPersistFacadeTest.java | 12 +--
.../service/SchemaMetaDataPersistServiceTest.java | 4 +-
.../TableMetaDataPersistDisabledServiceTest.java | 90 ----------------------
...t.java => TableMetaDataPersistServiceTest.java} | 6 +-
.../mode/persist/PersistServiceFacadeTest.java | 4 +-
.../ProxyDatabaseConnectionManagerTest.java | 1 -
.../backend/connector/ProxySQLExecutorTest.java | 1 -
.../variable/ShowDistVariablesExecutorTest.java | 2 +-
.../frontend/state/impl/OKProxyStateTest.java | 1 -
.../dataset/empty_rules/show_dist_variables.xml | 1 -
.../pipeline/core/util/PipelineContextUtils.java | 2 +-
28 files changed, 65 insertions(+), 447 deletions(-)
diff --git
a/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertyKey.java
b/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertyKey.java
index 3a040557ca6..57a17eb24cb 100644
---
a/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertyKey.java
+++
b/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertyKey.java
@@ -135,11 +135,6 @@ public enum ConfigurationPropertyKey implements
TypedPropertyKey {
*/
AGENT_PLUGINS_ENABLED("agent-plugins-enabled",
String.valueOf(Boolean.TRUE), boolean.class, false),
- /**
- * Persist schemas to repository.
- */
-
PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED("persist-schemas-to-repository-enabled",
String.valueOf(Boolean.TRUE), boolean.class, true),
-
/**
* Metadata identifier case sensitivity.
*/
diff --git
a/infra/common/src/test/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertiesTest.java
b/infra/common/src/test/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertiesTest.java
index 82f79902229..92667f64c95 100644
---
a/infra/common/src/test/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertiesTest.java
+++
b/infra/common/src/test/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertiesTest.java
@@ -55,7 +55,6 @@ class ConfigurationPropertiesTest {
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_FRONTEND_SSL_VERSION),
is("TLSv1.3"));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_FRONTEND_SSL_CIPHER),
is("ECDHE"));
assertTrue((Boolean)
actual.getValue(ConfigurationPropertyKey.AGENT_PLUGINS_ENABLED));
- assertTrue((Boolean)
actual.getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED));
assertThat(actual.getValue(ConfigurationPropertyKey.METADATA_IDENTIFIER_CASE_SENSITIVITY),
is(MetadataIdentifierCaseSensitivity.INSENSITIVE));
}
@@ -80,7 +79,6 @@ class ConfigurationPropertiesTest {
new
Property(ConfigurationPropertyKey.PROXY_FRONTEND_SSL_VERSION.getKey(),
"TLSv1.3"),
new
Property(ConfigurationPropertyKey.PROXY_FRONTEND_SSL_CIPHER.getKey(), "ECDHE"),
new
Property(ConfigurationPropertyKey.AGENT_PLUGINS_ENABLED.getKey(),
Boolean.TRUE.toString()),
- new
Property(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED.getKey(),
Boolean.TRUE.toString()),
new
Property(ConfigurationPropertyKey.METADATA_IDENTIFIER_CASE_SENSITIVITY.getKey(),
"insensitive"));
}
@@ -106,7 +104,6 @@ class ConfigurationPropertiesTest {
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_FRONTEND_SSL_VERSION),
is("TLSv1.2,TLSv1.3"));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_FRONTEND_SSL_CIPHER),
is(""));
assertTrue((Boolean)
actual.getValue(ConfigurationPropertyKey.AGENT_PLUGINS_ENABLED));
- assertTrue((Boolean)
actual.getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED));
assertThat(actual.getValue(ConfigurationPropertyKey.METADATA_IDENTIFIER_CASE_SENSITIVITY),
is(MetadataIdentifierCaseSensitivity.AUTO));
}
}
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/MetaDataContextsFactory.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/MetaDataContextsFactory.java
index f5e7b8671fd..f9edbb60785 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/MetaDataContextsFactory.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/MetaDataContextsFactory.java
@@ -22,7 +22,6 @@ import
org.apache.shardingsphere.database.connector.core.type.DatabaseType;
import org.apache.shardingsphere.infra.config.database.DatabaseConfiguration;
import
org.apache.shardingsphere.infra.config.database.impl.DataSourceProvidedDatabaseConfiguration;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import
org.apache.shardingsphere.infra.config.props.temporary.TemporaryConfigurationPropertyKey;
import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
import org.apache.shardingsphere.infra.database.DatabaseTypeEngine;
@@ -76,7 +75,7 @@ public final class MetaDataContextsFactory {
public MetaDataContexts create(final ContextManagerBuilderParameter param)
throws SQLException {
MetaDataContextsInitFactory initFactory =
containsRegisteredDatabases(persistFacade.getRepository())
? new
RegisterCenterMetaDataContextsInitFactory(persistFacade.getRepository(),
instanceContext)
- : new
LocalConfigurationMetaDataContextsInitFactory(persistFacade.getRepository(),
instanceContext, param.getProps());
+ : new
LocalConfigurationMetaDataContextsInitFactory(persistFacade.getRepository(),
instanceContext);
return initFactory.create(param);
}
@@ -147,15 +146,6 @@ public final class MetaDataContextsFactory {
ConfigurationProperties props =
originalMetaDataContext.getMetaData().getProps();
DatabaseType protocolType =
DatabaseTypeEngine.getProtocolType(databaseConfig, props);
Collection<ShardingSphereSchema> schemas =
persistFacade.getDatabaseMetaDataFacade().getSchema().load(databaseName,
protocolType);
- boolean persistSchemasEnabled =
props.getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED);
- if (!persistSchemasEnabled) {
- for (ShardingSphereSchema schema : schemas) {
- if
(originalMetaDataContext.getMetaData().getDatabase(databaseName).containsSchema(schema.getName()))
{
- ShardingSphereSchema originSchema =
originalMetaDataContext.getMetaData().getDatabase(databaseName).getSchema(schema.getName());
- originSchema.getAllTables().forEach(schema::putTable);
- }
- }
- }
return ShardingSphereDatabaseFactory.create(databaseName,
protocolType, databaseConfig, props, instanceContext, schemas);
}
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/init/type/LocalConfigurationMetaDataContextsInitFactory.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/init/type/LocalConfigurationMetaDataContextsInitFactory.java
index 53b557d4aef..7b3a8d8c525 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/init/type/LocalConfigurationMetaDataContextsInitFactory.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/init/type/LocalConfigurationMetaDataContextsInitFactory.java
@@ -20,7 +20,6 @@ package
org.apache.shardingsphere.mode.metadata.factory.init.type;
import org.apache.shardingsphere.database.connector.core.type.DatabaseType;
import org.apache.shardingsphere.infra.config.database.DatabaseConfiguration;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
import org.apache.shardingsphere.infra.database.DatabaseTypeEngine;
import org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
@@ -40,7 +39,6 @@ import java.util.Collection;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Map.Entry;
-import java.util.Properties;
import java.util.stream.Collectors;
/**
@@ -52,11 +50,8 @@ public final class
LocalConfigurationMetaDataContextsInitFactory extends MetaDat
private final ComputeNodeInstanceContext instanceContext;
- private final boolean persistSchemasEnabled;
-
- public LocalConfigurationMetaDataContextsInitFactory(final
PersistRepository repository, final ComputeNodeInstanceContext instanceContext,
final Properties props) {
- persistSchemasEnabled = new
ConfigurationProperties(props).getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED);
- persistFacade = new MetaDataPersistFacade(repository,
persistSchemasEnabled);
+ public LocalConfigurationMetaDataContextsInitFactory(final
PersistRepository repository, final ComputeNodeInstanceContext instanceContext)
{
+ persistFacade = new MetaDataPersistFacade(repository);
this.instanceContext = instanceContext;
}
@@ -87,9 +82,7 @@ public final class
LocalConfigurationMetaDataContextsInitFactory extends MetaDat
if (schema.isEmpty()) {
persistFacade.getDatabaseMetaDataFacade().getSchema().add(each.getName(),
schema.getName());
}
- if (persistSchemasEnabled) {
-
persistFacade.getDatabaseMetaDataFacade().getTable().persist(each.getName(),
schema.getName(), schema.getAllTables());
- }
+
persistFacade.getDatabaseMetaDataFacade().getTable().persist(each.getName(),
schema.getName(), schema.getAllTables());
}));
for (Entry<String, DatabaseStatistics> databaseStatisticsEntry :
metaDataContexts.getStatistics().getDatabaseStatisticsMap().entrySet()) {
for (Entry<String, SchemaStatistics> schemaStatisticsEntry :
databaseStatisticsEntry.getValue().getSchemaStatisticsMap().entrySet()) {
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/init/type/RegisterCenterMetaDataContextsInitFactory.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/init/type/RegisterCenterMetaDataContextsInitFactory.java
index 09136152cab..ef3e53a4066 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/init/type/RegisterCenterMetaDataContextsInitFactory.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/factory/init/type/RegisterCenterMetaDataContextsInitFactory.java
@@ -22,7 +22,6 @@ import
org.apache.shardingsphere.database.connector.core.type.DatabaseType;
import org.apache.shardingsphere.infra.config.database.DatabaseConfiguration;
import
org.apache.shardingsphere.infra.config.database.impl.DataSourceGeneratedDatabaseConfiguration;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import
org.apache.shardingsphere.infra.config.props.temporary.TemporaryConfigurationProperties;
import
org.apache.shardingsphere.infra.config.props.temporary.TemporaryConfigurationPropertyKey;
import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
@@ -38,8 +37,6 @@ import
org.apache.shardingsphere.mode.manager.builder.ContextManagerBuilderParam
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
import
org.apache.shardingsphere.mode.metadata.factory.init.MetaDataContextsInitFactory;
import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistFacade;
-import
org.apache.shardingsphere.mode.metadata.persist.config.global.PropertiesPersistService;
-import
org.apache.shardingsphere.mode.metadata.persist.version.VersionPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import javax.sql.DataSource;
@@ -59,12 +56,8 @@ public final class RegisterCenterMetaDataContextsInitFactory
extends MetaDataCon
private final ComputeNodeInstanceContext instanceContext;
- private final boolean persistSchemasEnabled;
-
public RegisterCenterMetaDataContextsInitFactory(final PersistRepository
repository, final ComputeNodeInstanceContext instanceContext) {
- persistSchemasEnabled = new ConfigurationProperties(new
PropertiesPersistService(repository, new
VersionPersistService(repository)).load())
-
.getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED);
- persistFacade = new MetaDataPersistFacade(repository,
persistSchemasEnabled);
+ persistFacade = new MetaDataPersistFacade(repository);
this.instanceContext = instanceContext;
}
@@ -79,20 +72,7 @@ public final class RegisterCenterMetaDataContextsInitFactory
extends MetaDataCon
ConfigurationProperties props = new
ConfigurationProperties(persistFacade.getPropsService().load());
DatabaseType protocolType =
DatabaseTypeEngine.getProtocolType(effectiveDatabaseConfigs, props);
Map<String, Collection<ShardingSphereSchema>> schemas =
loadSchemas(effectiveDatabaseConfigs.keySet(), protocolType);
- Collection<ShardingSphereDatabase> databases;
- if (persistSchemasEnabled) {
- // TODO merge schemas with local
- databases =
ShardingSphereDatabasesFactory.create(effectiveDatabaseConfigs, schemas, props,
instanceContext, protocolType);
- } else {
- databases =
ShardingSphereDatabasesFactory.create(effectiveDatabaseConfigs, props,
instanceContext, protocolType);
- databases.stream().filter(database ->
schemas.containsKey(database.getName()))
- .forEach(database ->
schemas.get(database.getName()).stream()
- .filter(schema ->
database.containsSchema(schema.getName()))
- .forEach(schema -> {
- ShardingSphereSchema targetSchema =
database.getSchema(schema.getName());
-
schema.getAllViews().forEach(targetSchema::putView);
- }));
- }
+ Collection<ShardingSphereDatabase> databases =
ShardingSphereDatabasesFactory.create(effectiveDatabaseConfigs, schemas, props,
instanceContext, protocolType);
return create(persistFacade.getGlobalRuleService().load(),
globalDataSources, databases, props, persistFacade);
}
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/manager/MetaDataContextManager.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/manager/MetaDataContextManager.java
index e6a2607b4fd..4cea4cb3b46 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/manager/MetaDataContextManager.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/manager/MetaDataContextManager.java
@@ -18,7 +18,6 @@
package org.apache.shardingsphere.mode.metadata.manager;
import lombok.Getter;
-import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
import
org.apache.shardingsphere.mode.metadata.manager.database.DatabaseMetaDataManager;
@@ -60,7 +59,7 @@ public class MetaDataContextManager {
public MetaDataContextManager(final MetaDataContexts metaDataContexts,
final ComputeNodeInstanceContext computeNodeInstanceContext, final
PersistRepository repository) {
this.metaDataContexts = metaDataContexts;
this.computeNodeInstanceContext = computeNodeInstanceContext;
- metaDataPersistFacade = new MetaDataPersistFacade(repository,
metaDataContexts.getMetaData().getProps().getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED));
+ metaDataPersistFacade = new MetaDataPersistFacade(repository);
resourceSwitchManager = new ResourceSwitchManager();
statisticsManager = new StatisticsManager(metaDataContexts);
storageUnitManager = new StorageUnitManager(metaDataContexts,
computeNodeInstanceContext, resourceSwitchManager, metaDataPersistFacade);
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/MetaDataPersistFacade.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/MetaDataPersistFacade.java
index a8e5dbf1dc6..b405aeed567 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/MetaDataPersistFacade.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/MetaDataPersistFacade.java
@@ -67,21 +67,17 @@ public final class MetaDataPersistFacade {
private final StatisticsPersistService statisticsService;
- public MetaDataPersistFacade(final PersistRepository repository, final
boolean persistSchemasEnabled) {
+ public MetaDataPersistFacade(final PersistRepository repository) {
this.repository = repository;
versionService = new VersionPersistService(repository);
dataSourceUnitService = new DataSourceUnitPersistService(repository);
- databaseMetaDataFacade = new DatabaseMetaDataPersistFacade(repository,
versionService, persistSchemasEnabled);
+ databaseMetaDataFacade = new DatabaseMetaDataPersistFacade(repository,
versionService);
databaseRuleService = new DatabaseRulePersistService(repository);
globalRuleService = new GlobalRulePersistService(repository,
versionService);
propsService = new PropertiesPersistService(repository,
versionService);
statisticsService = new StatisticsPersistService(repository);
}
- public MetaDataPersistFacade(final PersistRepository repository) {
- this(repository, true);
- }
-
/**
* Persist global rule configurations.
*
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/DatabaseMetaDataPersistFacade.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/DatabaseMetaDataPersistFacade.java
index 991ad7144db..8322b168074 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/DatabaseMetaDataPersistFacade.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/DatabaseMetaDataPersistFacade.java
@@ -30,11 +30,9 @@ import
org.apache.shardingsphere.mode.exception.LoadTableMetaDataFailedException
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.DatabaseMetaDataPersistService;
import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.SchemaMetaDataPersistService;
-import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.TableMetaDataPersistDisabledService;
-import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.TableMetaDataPersistEnabledService;
+import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.TableMetaDataPersistService;
import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.ViewMetaDataPersistService;
import
org.apache.shardingsphere.mode.metadata.persist.version.VersionPersistService;
-import
org.apache.shardingsphere.mode.persist.service.TableMetaDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import java.sql.SQLException;
@@ -57,13 +55,9 @@ public final class DatabaseMetaDataPersistFacade {
private final ViewMetaDataPersistService view;
- public DatabaseMetaDataPersistFacade(final PersistRepository repository,
final VersionPersistService versionPersistService, final boolean
persistSchemasEnabled) {
+ public DatabaseMetaDataPersistFacade(final PersistRepository repository,
final VersionPersistService versionPersistService) {
database = new DatabaseMetaDataPersistService(repository);
- if (persistSchemasEnabled) {
- table = new TableMetaDataPersistEnabledService(repository,
versionPersistService);
- } else {
- table = new TableMetaDataPersistDisabledService(repository);
- }
+ table = new TableMetaDataPersistService(repository,
versionPersistService);
view = new ViewMetaDataPersistService(repository,
versionPersistService);
schema = new SchemaMetaDataPersistService(repository, table, view);
}
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistService.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistService.java
index b218e0295e6..ae724ebd1e5 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistService.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistService.java
@@ -23,7 +23,6 @@ import
org.apache.shardingsphere.infra.metadata.database.schema.manager.GenericS
import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereSchema;
import
org.apache.shardingsphere.mode.node.path.engine.generator.NodePathGenerator;
import
org.apache.shardingsphere.mode.node.path.type.database.metadata.schema.SchemaMetaDataNodePath;
-import
org.apache.shardingsphere.mode.persist.service.TableMetaDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import java.util.Collection;
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistDisabledService.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistDisabledService.java
deleted file mode 100644
index c16486712b6..00000000000
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistDisabledService.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.mode.metadata.persist.metadata.service;
-
-import com.google.common.base.Joiner;
-import lombok.RequiredArgsConstructor;
-import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereTable;
-import org.apache.shardingsphere.infra.util.yaml.YamlEngine;
-import org.apache.shardingsphere.infra.yaml.schema.swapper.YamlTableSwapper;
-import
org.apache.shardingsphere.mode.node.path.engine.generator.NodePathGenerator;
-import
org.apache.shardingsphere.mode.node.path.type.global.state.coordinator.CoordinatorType;
-import
org.apache.shardingsphere.mode.node.path.type.global.state.coordinator.table.TableCoordinatorTypeNodePath;
-import
org.apache.shardingsphere.mode.persist.service.TableMetaDataPersistService;
-import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
-
-import java.util.Collection;
-import java.util.LinkedList;
-import java.util.Optional;
-
-/**
- * Table meta data persist service for disabled persist.
- */
-@RequiredArgsConstructor
-public final class TableMetaDataPersistDisabledService implements
TableMetaDataPersistService {
-
- private final PersistRepository repository;
-
- private final YamlTableSwapper swapper = new YamlTableSwapper();
-
- @Override
- public Collection<ShardingSphereTable> load(final String databaseName,
final String schemaName) {
- return new LinkedList<>();
- }
-
- @Override
- public Optional<ShardingSphereTable> load(final String databaseName, final
String schemaName, final String tableName) {
- return Optional.empty();
- }
-
- @Override
- public void persist(final String databaseName, final String schemaName,
final Collection<ShardingSphereTable> tables) {
- for (ShardingSphereTable each : tables) {
- TableCoordinatorTypeNodePath tableCoordinatorTypeNodePath = new
TableCoordinatorTypeNodePath(Joiner.on(".").join(databaseName, schemaName,
each.getName()), CoordinatorType.CREATE.name());
-
repository.persist(NodePathGenerator.toPath(tableCoordinatorTypeNodePath),
YamlEngine.marshal(swapper.swapToYamlConfiguration(each)));
-
repository.delete(NodePathGenerator.toPath(tableCoordinatorTypeNodePath.getTableCoordinatorPath()));
- }
- }
-
- @Override
- public void drop(final String databaseName, final String schemaName, final
String tableName) {
- TableCoordinatorTypeNodePath tableCoordinatorTypeNodePath = new
TableCoordinatorTypeNodePath(Joiner.on(".").join(databaseName, schemaName,
tableName), CoordinatorType.DROP.name());
-
repository.persist(NodePathGenerator.toPath(tableCoordinatorTypeNodePath),
tableName);
-
repository.delete(NodePathGenerator.toPath(tableCoordinatorTypeNodePath.getTableCoordinatorPath()));
- }
-
- @Override
- public void drop(final String databaseName, final String schemaName, final
Collection<ShardingSphereTable> tables) {
- for (ShardingSphereTable each : tables) {
- drop(databaseName, schemaName, each.getName());
- }
- }
-}
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistEnabledService.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistService.java
similarity index 82%
rename from
mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistEnabledService.java
rename to
mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistService.java
index 857c54abdb2..5a445996303 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistEnabledService.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistService.java
@@ -27,7 +27,6 @@ import
org.apache.shardingsphere.mode.metadata.persist.version.VersionPersistSer
import
org.apache.shardingsphere.mode.node.path.engine.generator.NodePathGenerator;
import
org.apache.shardingsphere.mode.node.path.type.database.metadata.schema.TableMetaDataNodePath;
import org.apache.shardingsphere.mode.node.path.version.VersionNodePath;
-import
org.apache.shardingsphere.mode.persist.service.TableMetaDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import java.util.Collection;
@@ -38,7 +37,7 @@ import java.util.stream.Collectors;
* Table meta data persist enabled service.
*/
@RequiredArgsConstructor
-public final class TableMetaDataPersistEnabledService implements
TableMetaDataPersistService {
+public final class TableMetaDataPersistService {
private final PersistRepository repository;
@@ -46,14 +45,27 @@ public final class TableMetaDataPersistEnabledService
implements TableMetaDataPe
private final YamlTableSwapper swapper = new YamlTableSwapper();
- @Override
+ /**
+ * Load table meta data.
+ *
+ * @param databaseName database name
+ * @param schemaName schema name
+ * @return table meta data
+ */
public Collection<ShardingSphereTable> load(final String databaseName,
final String schemaName) {
return repository.getChildrenKeys(NodePathGenerator.toPath(new
TableMetaDataNodePath(databaseName, schemaName, null))).stream()
.map(each -> loadByPath(databaseName, schemaName, each))
.filter(Optional::isPresent).map(Optional::get).collect(Collectors.toList());
}
- @Override
+ /**
+ * Load table meta data.
+ *
+ * @param databaseName database name
+ * @param schemaName schema name
+ * @param tableName table name
+ * @return table meta data
+ */
public Optional<ShardingSphereTable> load(final String databaseName, final
String schemaName, final String tableName) {
return loadByPath(databaseName, schemaName, tableName);
}
@@ -71,7 +83,13 @@ public final class TableMetaDataPersistEnabledService
implements TableMetaDataPe
return
Optional.of(swapper.swapToObject(YamlEngine.unmarshal(tableContent,
YamlShardingSphereTable.class)));
}
- @Override
+ /**
+ * Persist table meta data.
+ *
+ * @param databaseName database name
+ * @param schemaName schema name
+ * @param tables table meta data
+ */
public void persist(final String databaseName, final String schemaName,
final Collection<ShardingSphereTable> tables) {
for (ShardingSphereTable each : tables) {
VersionNodePath versionNodePath = new VersionNodePath(new
TableMetaDataNodePath(databaseName, schemaName, each.getName()));
@@ -79,12 +97,24 @@ public final class TableMetaDataPersistEnabledService
implements TableMetaDataPe
}
}
- @Override
+ /**
+ * Drop table meta data.
+ *
+ * @param databaseName database name
+ * @param schemaName schema name
+ * @param tableName table name
+ */
public void drop(final String databaseName, final String schemaName, final
String tableName) {
repository.delete(NodePathGenerator.toPath(new
TableMetaDataNodePath(databaseName, schemaName, tableName)));
}
- @Override
+ /**
+ * Drop table meta data.
+ *
+ * @param databaseName database name
+ * @param schemaName schema name
+ * @param tables table meta data
+ */
public void drop(final String databaseName, final String schemaName, final
Collection<ShardingSphereTable> tables) {
tables.forEach(each -> drop(databaseName, schemaName, each.getName()));
}
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/persist/PersistServiceFacade.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/persist/PersistServiceFacade.java
index 41ed3fb3792..b70a42bfa38 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/persist/PersistServiceFacade.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/persist/PersistServiceFacade.java
@@ -19,7 +19,6 @@ package org.apache.shardingsphere.mode.persist;
import lombok.Getter;
import org.apache.shardingsphere.infra.config.mode.ModeConfiguration;
-import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.metadata.manager.MetaDataContextManager;
import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistFacade;
@@ -47,8 +46,7 @@ public final class PersistServiceFacade implements
AutoCloseable {
public PersistServiceFacade(final PersistRepository repository, final
ModeConfiguration modeConfig, final MetaDataContextManager
metaDataContextManager) {
this.repository = repository;
- metaDataFacade = new MetaDataPersistFacade(repository,
-
metaDataContextManager.getMetaDataContexts().getMetaData().getProps().getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED));
+ metaDataFacade = new MetaDataPersistFacade(repository);
stateService = new StatePersistService(repository);
qualifiedDataSourceStateService = new
QualifiedDataSourceStatePersistService(repository);
modeFacade =
TypedSPILoader.getService(ModePersistServiceFacadeBuilder.class,
modeConfig.getType()).build(metaDataContextManager, repository);
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/persist/service/TableMetaDataPersistService.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/persist/service/TableMetaDataPersistService.java
deleted file mode 100644
index 01aa95cd3ce..00000000000
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/persist/service/TableMetaDataPersistService.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.mode.persist.service;
-
-import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereTable;
-
-import java.util.Collection;
-import java.util.Optional;
-
-/**
- * Table meta data persist service.
- */
-public interface TableMetaDataPersistService {
-
- /**
- * Load tables.
- *
- * @param databaseName to be loaded database name
- * @param schemaName to be loaded schema name
- * @return loaded tables
- */
- Collection<ShardingSphereTable> load(String databaseName, String
schemaName);
-
- /**
- * Load table.
- *
- * @param databaseName to be loaded database name
- * @param schemaName to be loaded schema name
- * @param tableName to be loaded table name
- * @return loaded table
- */
- Optional<ShardingSphereTable> load(String databaseName, String schemaName,
String tableName);
-
- /**
- * Persist tables.
- *
- * @param databaseName to be persisted database name
- * @param schemaName to be persisted schema name
- * @param tables to be persisted tables
- */
- void persist(String databaseName, String schemaName,
Collection<ShardingSphereTable> tables);
-
- /**
- * Drop table.
- *
- * @param databaseName database name
- * @param schemaName schema name
- * @param tableName to be dropped table name
- */
- void drop(String databaseName, String schemaName, String tableName);
-
- /**
- * Drop tables.
- *
- * @param databaseName database name
- * @param schemaName schema name
- * @param tables to be dropped tables
- */
- void drop(String databaseName, String schemaName,
Collection<ShardingSphereTable> tables);
-}
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/MetaDataContextsFactoryTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/MetaDataContextsFactoryTest.java
index f4bfc1847b2..545a7e650ff 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/MetaDataContextsFactoryTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/MetaDataContextsFactoryTest.java
@@ -22,7 +22,6 @@ import
org.apache.shardingsphere.database.connector.core.type.DatabaseTypeFactor
import org.apache.shardingsphere.infra.config.database.DatabaseConfiguration;
import
org.apache.shardingsphere.infra.config.database.impl.DataSourceProvidedDatabaseConfiguration;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import org.apache.shardingsphere.infra.database.DatabaseTypeEngine;
import
org.apache.shardingsphere.infra.datasource.pool.props.domain.DataSourcePoolProperties;
import org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
@@ -44,8 +43,6 @@ import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatist
import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.rule.builder.global.GlobalRulesBuilder;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
-import org.apache.shardingsphere.infra.util.props.PropertiesBuilder;
-import org.apache.shardingsphere.infra.util.props.PropertiesBuilder.Property;
import
org.apache.shardingsphere.mode.manager.builder.ContextManagerBuilderParameter;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
import
org.apache.shardingsphere.mode.metadata.manager.resource.SwitchingResource;
@@ -66,20 +63,18 @@ import org.mockito.quality.Strictness;
import javax.sql.DataSource;
import java.sql.SQLException;
-import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Properties;
-import static org.hamcrest.Matchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.isA;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.anyCollection;
-import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.anyMap;
@@ -196,33 +191,13 @@ class MetaDataContextsFactoryTest {
assertTrue(actualResourceMetaData.getStorageUnits().containsKey("foo_ds"));
}
- @Test
- void
assertCreateByAlterRuleLoadsSchemasFromRepositoryWhenPersistenceDisabled()
throws SQLException {
- Collection<ShardingSphereSchema> loadedSchemas =
Arrays.asList(createSchemaWithTable("foo_schema", "persisted_table"),
createSchemaWithTable("new_schema", "new_table"));
-
when(metaDataPersistFacade.getDatabaseMetaDataFacade().getSchema().load(eq("foo_db"),
any())).thenReturn(loadedSchemas);
- ShardingSphereSchema originSchema =
createSchemaWithTable("foo_schema", "origin_table");
- ShardingSphereDatabase database = new ShardingSphereDatabase("foo_db",
databaseType, createResourceMetaDataWithSingleUnit(),
- new RuleMetaData(Collections.emptyList()),
Collections.singleton(originSchema), new ConfigurationProperties(new
Properties()));
- ShardingSphereMetaData metaData = new ShardingSphereMetaData(
- Collections.singleton(database), new
ResourceMetaData(Collections.emptyMap(), Collections.emptyMap()), new
RuleMetaData(Collections.emptyList()),
- new ConfigurationProperties(PropertiesBuilder.build(new
Property(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED.getKey(),
Boolean.FALSE.toString()))));
- MetaDataContexts originalMetaDataContexts = new
MetaDataContexts(metaData, new ShardingSphereStatistics());
- MetaDataContexts actual = new
MetaDataContextsFactory(metaDataPersistFacade, mock())
- .createByAlterRule("foo_db", Collections.singleton(new
MockedRuleConfiguration("alter_rule")), originalMetaDataContexts);
- ShardingSphereSchema mergedSchema = loadedSchemas.stream().filter(each
->
"foo_schema".equals(each.getName())).findFirst().orElseThrow(IllegalStateException::new);
- assertThat(mergedSchema.getAllTables().size(), is(2));
- ShardingSphereSchema untouchedSchema =
loadedSchemas.stream().filter(each ->
"new_schema".equals(each.getName())).findFirst().orElseThrow(IllegalStateException::new);
- assertThat(untouchedSchema.getAllTables().size(), is(1));
- assertTrue(actual.getMetaData().containsDatabase("foo_db"));
- }
-
@Test
void assertCreateByAlterRuleKeepsPersistedSchemasWhenEnabled() throws
SQLException {
ShardingSphereDatabase database = new ShardingSphereDatabase(
"foo_db", databaseType,
createResourceMetaDataWithSingleUnit(), new
RuleMetaData(Collections.emptyList()), Collections.emptyList(), new
ConfigurationProperties(new Properties()));
ShardingSphereMetaData metaData = new ShardingSphereMetaData(
Collections.singleton(database), new
ResourceMetaData(Collections.emptyMap(), Collections.emptyMap()), new
RuleMetaData(Collections.emptyList()),
- new ConfigurationProperties(PropertiesBuilder.build(new
Property(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED.getKey(),
Boolean.TRUE.toString()))));
+ new ConfigurationProperties(new Properties()));
MetaDataContexts originalMetaDataContexts = new
MetaDataContexts(metaData, new ShardingSphereStatistics());
Collection<ShardingSphereSchema> loadedSchemas =
Collections.singleton(createSchemaWithTable("persisted_schema",
"persisted_table"));
when(metaDataPersistFacade.getDatabaseMetaDataFacade().getSchema().load("foo_db",
databaseType)).thenReturn(loadedSchemas);
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/init/type/LocalConfigurationMetaDataContextsInitFactoryTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/init/type/LocalConfigurationMetaDataContextsInitFactoryTest.java
index 5e7d8c5fc54..97dcaf3649b 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/init/type/LocalConfigurationMetaDataContextsInitFactoryTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/init/type/LocalConfigurationMetaDataContextsInitFactoryTest.java
@@ -20,7 +20,6 @@ package
org.apache.shardingsphere.mode.metadata.factory.init.type;
import org.apache.shardingsphere.database.connector.core.type.DatabaseType;
import org.apache.shardingsphere.infra.config.database.DatabaseConfiguration;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabasesFactory;
@@ -28,15 +27,12 @@ import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaDa
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.database.schema.model.ShardingSphereSchema;
-import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereTable;
import org.apache.shardingsphere.infra.metadata.statistics.DatabaseStatistics;
import org.apache.shardingsphere.infra.metadata.statistics.SchemaStatistics;
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.rule.builder.global.GlobalRulesBuilder;
-import org.apache.shardingsphere.infra.util.props.PropertiesBuilder;
-import org.apache.shardingsphere.infra.util.props.PropertiesBuilder.Property;
import
org.apache.shardingsphere.mode.manager.builder.ContextManagerBuilderParameter;
import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistFacade;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
@@ -55,18 +51,14 @@ import java.util.Collections;
import java.util.Map;
import java.util.Properties;
-import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyCollection;
-import static org.mockito.ArgumentMatchers.anyMap;
-import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.argThat;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.mockConstruction;
-import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.withSettings;
@@ -91,11 +83,10 @@ class LocalConfigurationMetaDataContextsInitFactoryTest {
.thenReturn(Collections.singletonList(database));
when(GlobalRulesBuilder.buildRules(anyCollection(), anyCollection(),
any(ConfigurationProperties.class))).thenReturn(Collections.emptyList());
when(ShardingSphereStatisticsFactory.create(any(),
any())).thenReturn(statistics);
- Properties props = PropertiesBuilder.build(new
Property(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED.getKey(),
Boolean.TRUE.toString()));
try (
MockedConstruction<MetaDataPersistFacade> persistFacadeMocked
= mockConstruction(MetaDataPersistFacade.class,
withSettings().defaultAnswer(RETURNS_DEEP_STUBS),
(mock, context) ->
when(mock.getStatisticsService().load(any())).thenReturn(new
ShardingSphereStatistics()))) {
- LocalConfigurationMetaDataContextsInitFactory factory = new
LocalConfigurationMetaDataContextsInitFactory(repository, instanceContext,
props);
+ LocalConfigurationMetaDataContextsInitFactory factory = new
LocalConfigurationMetaDataContextsInitFactory(repository, instanceContext);
assertNotNull(factory.create(createContextManagerBuilderParameter(databaseConfigs,
new Properties())));
MetaDataPersistFacade persistFacade =
persistFacadeMocked.constructed().get(0);
verify(persistFacade).persistGlobalRuleConfiguration(Collections.emptyList(),
new Properties());
@@ -107,33 +98,6 @@ class LocalConfigurationMetaDataContextsInitFactoryTest {
}
}
- @Test
- void assertCreateWithPersistSchemasDisabled() throws SQLException {
- Map<String, DatabaseConfiguration> databaseConfigs =
Collections.singletonMap("foo_db", mock(DatabaseConfiguration.class));
- ShardingSphereSchema schema = new
ShardingSphereSchema("non_empty_schema", mock(DatabaseType.class),
- Collections.singleton(new ShardingSphereTable("t_order",
Collections.emptyList(), Collections.emptyList(), Collections.emptyList())),
Collections.emptyList());
- ShardingSphereDatabase database = createDatabase("foo_db",
Collections.singleton(schema), Collections.emptyMap(), Collections.emptyList());
- ComputeNodeInstanceContext instanceContext =
mock(ComputeNodeInstanceContext.class, RETURNS_DEEP_STUBS);
- when(ShardingSphereDatabasesFactory.create(eq(databaseConfigs),
any(ConfigurationProperties.class), eq(instanceContext),
any(DatabaseType.class)))
- .thenReturn(Collections.singletonList(database));
- when(GlobalRulesBuilder.buildRules(anyCollection(), anyCollection(),
any(ConfigurationProperties.class))).thenReturn(Collections.emptyList());
- when(ShardingSphereStatisticsFactory.create(any(),
any())).thenReturn(new ShardingSphereStatistics());
- Properties props = PropertiesBuilder.build(new
Property(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED.getKey(),
Boolean.FALSE.toString()));
- try (
- MockedConstruction<MetaDataPersistFacade> persistFacadeMocked
= mockConstruction(MetaDataPersistFacade.class,
withSettings().defaultAnswer(RETURNS_DEEP_STUBS),
- (mock, context) ->
when(mock.getStatisticsService().load(any())).thenReturn(new
ShardingSphereStatistics()))) {
- LocalConfigurationMetaDataContextsInitFactory factory = new
LocalConfigurationMetaDataContextsInitFactory(repository, instanceContext,
props);
-
factory.create(createContextManagerBuilderParameter(databaseConfigs, new
Properties()));
- MetaDataPersistFacade persistFacade =
persistFacadeMocked.constructed().get(0);
-
verify(persistFacade).persistGlobalRuleConfiguration(Collections.emptyList(),
new Properties());
- verify(persistFacade).persistConfigurations(eq("foo_db"),
eq(databaseConfigs.get("foo_db")), anyMap(), anyCollection());
- verify(persistFacade.getDatabaseMetaDataFacade().getSchema(),
never()).add(anyString(), anyString());
- verify(persistFacade.getDatabaseMetaDataFacade().getTable(),
never()).persist(anyString(), anyString(), anyCollection());
- verify(persistFacade.getStatisticsService(),
never()).persist(any(), anyString(), any());
- assertFalse(schema.isEmpty());
- }
- }
-
private ShardingSphereDatabase createDatabase(final String databaseName,
final Collection<ShardingSphereSchema> schemas,
final Map<String,
StorageUnit> storageUnits, final Collection<ShardingSphereRule> rules) {
return new ShardingSphereDatabase(databaseName,
mock(DatabaseType.class), new ResourceMetaData(Collections.emptyMap(),
storageUnits), new RuleMetaData(rules), schemas,
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/init/type/RegisterCenterMetaDataContextsInitFactoryTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/init/type/RegisterCenterMetaDataContextsInitFactoryTest.java
index 93c30c7893b..81535d6b674 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/init/type/RegisterCenterMetaDataContextsInitFactoryTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/factory/init/type/RegisterCenterMetaDataContextsInitFactoryTest.java
@@ -20,11 +20,9 @@ package
org.apache.shardingsphere.mode.metadata.factory.init.type;
import org.apache.shardingsphere.database.connector.core.type.DatabaseType;
import org.apache.shardingsphere.infra.config.database.DatabaseConfiguration;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import
org.apache.shardingsphere.infra.datasource.pool.destroyer.DataSourcePoolDestroyer;
import org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
import org.apache.shardingsphere.infra.instance.metadata.InstanceMetaData;
-import
org.apache.shardingsphere.infra.instance.metadata.jdbc.JDBCInstanceMetaData;
import
org.apache.shardingsphere.infra.instance.metadata.proxy.ProxyInstanceMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabasesFactory;
@@ -33,13 +31,10 @@ import
org.apache.shardingsphere.infra.metadata.database.resource.node.StorageNo
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.database.schema.model.ShardingSphereSchema;
-import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereView;
import
org.apache.shardingsphere.infra.metadata.statistics.ShardingSphereStatistics;
import
org.apache.shardingsphere.infra.metadata.statistics.builder.ShardingSphereStatisticsFactory;
import org.apache.shardingsphere.infra.rule.builder.global.GlobalRulesBuilder;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
-import org.apache.shardingsphere.infra.util.props.PropertiesBuilder;
-import org.apache.shardingsphere.infra.util.props.PropertiesBuilder.Property;
import
org.apache.shardingsphere.mode.manager.builder.ContextManagerBuilderParameter;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
import org.apache.shardingsphere.mode.metadata.persist.MetaDataPersistFacade;
@@ -65,7 +60,6 @@ import java.util.Properties;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.hasSize;
-import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyCollection;
import static org.mockito.ArgumentMatchers.anyMap;
@@ -114,38 +108,6 @@ class RegisterCenterMetaDataContextsInitFactoryTest {
}
}
- @Test
- void assertCreateMergesViewsWhenSchemasNotPersisted() throws SQLException {
- when(GlobalRulesBuilder.buildRules(anyCollection(), anyCollection(),
any(ConfigurationProperties.class))).thenReturn(Collections.emptyList());
- when(ShardingSphereStatisticsFactory.create(any(),
any())).thenReturn(new ShardingSphereStatistics());
- ShardingSphereDatabase fooDatabase = createDatabase("foo_db",
- Collections.singleton(new ShardingSphereSchema("foo_schema",
databaseType, Collections.emptyList(), Collections.singleton(new
ShardingSphereView("local_view", "select 1")))));
- ShardingSphereDatabase barDatabase = createDatabase("bar_db",
Collections.emptyList());
- ComputeNodeInstanceContext instanceContext =
mockComputeNodeInstanceContext(mock(JDBCInstanceMetaData.class));
- when(ShardingSphereDatabasesFactory.create(anyMap(),
any(ConfigurationProperties.class), eq(instanceContext),
any(DatabaseType.class))).thenReturn(Arrays.asList(fooDatabase, barDatabase));
- Map<String, DatabaseConfiguration> databaseConfigs =
createDatabaseConfigsWithoutStorageUnits();
- Properties props = PropertiesBuilder.build(new
Property(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED.getKey(),
Boolean.FALSE.toString()));
- Collection<ShardingSphereSchema> persistedSchemas = Arrays.asList(
- new ShardingSphereSchema("foo_schema", databaseType,
Collections.emptyList(), Collections.singleton(new
ShardingSphereView("persisted_view", "select 2"))),
- new ShardingSphereSchema("missing_schema", databaseType,
Collections.emptyList(), Collections.singleton(new
ShardingSphereView("ignored_view", "select 3"))));
- try (
- MockedConstruction<PropertiesPersistService> ignoredService =
mockConstruction(PropertiesPersistService.class, (mock, context) ->
when(mock.load()).thenReturn(props));
- MockedConstruction<MetaDataPersistFacade> ignoredFacade =
mockConstruction(MetaDataPersistFacade.class,
withSettings().defaultAnswer(RETURNS_DEEP_STUBS),
- (mock, context) -> {
- when(mock.getPropsService().load()).thenReturn(new
Properties());
-
when(mock.loadDataSourceConfigurations(anyString())).thenReturn(Collections.emptyMap());
-
when(mock.getDatabaseMetaDataFacade().getSchema().load(eq("foo_db"),
any())).thenReturn(persistedSchemas);
-
when(mock.getStatisticsService().load(any())).thenReturn(new
ShardingSphereStatistics());
- });
- MockedConstruction<DataSourcePoolDestroyer> destroyerMocked =
mockConstruction(DataSourcePoolDestroyer.class)) {
- MetaDataContexts actual = new
RegisterCenterMetaDataContextsInitFactory(repository,
instanceContext).create(createContextManagerBuilderParameter(databaseConfigs));
- assertThat(actual.getMetaData().getAllDatabases(), hasSize(2));
-
assertTrue(fooDatabase.getSchema("foo_schema").containsView("persisted_view"));
-
assertTrue(fooDatabase.getSchema("foo_schema").containsView("local_view"));
- assertThat(destroyerMocked.constructed(), hasSize(0));
- }
- }
-
private ComputeNodeInstanceContext mockComputeNodeInstanceContext(final
InstanceMetaData metaData) {
ComputeNodeInstanceContext result =
mock(ComputeNodeInstanceContext.class, RETURNS_DEEP_STUBS);
when(result.getInstance().getMetaData()).thenReturn(metaData);
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/manager/MetaDataContextManagerTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/manager/MetaDataContextManagerTest.java
index 5931f67cca9..79aeb267f9c 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/manager/MetaDataContextManagerTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/manager/MetaDataContextManagerTest.java
@@ -19,7 +19,6 @@ package org.apache.shardingsphere.mode.metadata.manager;
import org.apache.shardingsphere.database.connector.core.type.DatabaseType;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
-import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import org.apache.shardingsphere.infra.instance.ComputeNodeInstanceContext;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
@@ -126,7 +125,6 @@ class MetaDataContextManagerTest {
private MetaDataContexts createMetaDataContexts() {
Properties props = new Properties();
-
props.setProperty(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED.getKey(),
"true");
ConfigurationProperties configurationProps = new
ConfigurationProperties(props);
ShardingSphereDatabase database = new ShardingSphereDatabase(
"test_db", databaseType, new
ResourceMetaData(Collections.emptyMap()), new
RuleMetaData(Collections.emptyList()), Collections.emptyList(),
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/DatabaseMetaDataPersistFacadeTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/DatabaseMetaDataPersistFacadeTest.java
index ae062aebdf7..cc01b82d503 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/DatabaseMetaDataPersistFacadeTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/DatabaseMetaDataPersistFacadeTest.java
@@ -39,11 +39,9 @@ import
org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import
org.apache.shardingsphere.mode.exception.LoadTableMetaDataFailedException;
import org.apache.shardingsphere.mode.metadata.MetaDataContexts;
import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.SchemaMetaDataPersistService;
-import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.TableMetaDataPersistDisabledService;
-import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.TableMetaDataPersistEnabledService;
+import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.TableMetaDataPersistService;
import
org.apache.shardingsphere.mode.metadata.persist.metadata.service.ViewMetaDataPersistService;
import
org.apache.shardingsphere.mode.metadata.persist.version.VersionPersistService;
-import
org.apache.shardingsphere.mode.persist.service.TableMetaDataPersistService;
import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
import
org.apache.shardingsphere.test.infra.framework.extension.mock.AutoMockExtension;
import
org.apache.shardingsphere.test.infra.framework.extension.mock.StaticMockSettings;
@@ -100,7 +98,7 @@ class DatabaseMetaDataPersistFacadeTest {
@BeforeEach
void setUp() throws ReflectiveOperationException {
- databaseMetaDataFacade = new DatabaseMetaDataPersistFacade(repository,
versionPersistService, true);
+ databaseMetaDataFacade = new DatabaseMetaDataPersistFacade(repository,
versionPersistService);
Plugins.getMemberAccessor().set(DatabaseMetaDataPersistFacade.class.getDeclaredField("schema"),
databaseMetaDataFacade, schemaMetaDataService);
Plugins.getMemberAccessor().set(DatabaseMetaDataPersistFacade.class.getDeclaredField("table"),
databaseMetaDataFacade, tableMetaDataService);
Plugins.getMemberAccessor().set(DatabaseMetaDataPersistFacade.class.getDeclaredField("view"),
databaseMetaDataFacade, viewMetaDataService);
@@ -108,10 +106,8 @@ class DatabaseMetaDataPersistFacadeTest {
@Test
void assertConstructorChoosesTablePersistService() {
- DatabaseMetaDataPersistFacade enabledFacade = new
DatabaseMetaDataPersistFacade(repository, versionPersistService, true);
- DatabaseMetaDataPersistFacade disabledFacade = new
DatabaseMetaDataPersistFacade(repository, versionPersistService, false);
- assertThat(enabledFacade.getTable(),
isA(TableMetaDataPersistEnabledService.class));
- assertThat(disabledFacade.getTable(),
isA(TableMetaDataPersistDisabledService.class));
+ DatabaseMetaDataPersistFacade enabledFacade = new
DatabaseMetaDataPersistFacade(repository, versionPersistService);
+ assertThat(enabledFacade.getTable(),
isA(TableMetaDataPersistService.class));
}
@Test
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistServiceTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistServiceTest.java
index c923b359ce2..614fe36a76d 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistServiceTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistServiceTest.java
@@ -41,7 +41,7 @@ class SchemaMetaDataPersistServiceTest {
private FixturePersistRepository repository;
- private TableMetaDataPersistEnabledService tableMetaDataPersistService;
+ private TableMetaDataPersistService tableMetaDataPersistService;
private ViewMetaDataPersistService viewMetaDataPersistService;
@@ -50,7 +50,7 @@ class SchemaMetaDataPersistServiceTest {
@BeforeEach
void setUp() {
repository = new FixturePersistRepository();
- tableMetaDataPersistService = new
TableMetaDataPersistEnabledService(repository, new
VersionPersistService(repository));
+ tableMetaDataPersistService = new
TableMetaDataPersistService(repository, new VersionPersistService(repository));
viewMetaDataPersistService = new
ViewMetaDataPersistService(repository, new VersionPersistService(repository));
persistService = new SchemaMetaDataPersistService(repository,
tableMetaDataPersistService, viewMetaDataPersistService);
databaseType = TypedSPILoader.getService(DatabaseType.class,
"FIXTURE");
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistDisabledServiceTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistDisabledServiceTest.java
deleted file mode 100644
index 2567e0b8b7a..00000000000
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistDisabledServiceTest.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.mode.metadata.persist.metadata.service;
-
-import com.google.common.base.Joiner;
-import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereTable;
-import org.apache.shardingsphere.infra.util.yaml.YamlEngine;
-import org.apache.shardingsphere.infra.yaml.schema.swapper.YamlTableSwapper;
-import
org.apache.shardingsphere.mode.node.path.engine.generator.NodePathGenerator;
-import
org.apache.shardingsphere.mode.node.path.type.global.state.coordinator.CoordinatorType;
-import
org.apache.shardingsphere.mode.node.path.type.global.state.coordinator.table.TableCoordinatorTypeNodePath;
-import org.apache.shardingsphere.mode.spi.repository.PersistRepository;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.ExtendWith;
-import org.mockito.Mock;
-import org.mockito.junit.jupiter.MockitoExtension;
-
-import java.util.Collections;
-
-import static org.junit.jupiter.api.Assertions.assertFalse;
-import static org.junit.jupiter.api.Assertions.assertTrue;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-@ExtendWith(MockitoExtension.class)
-class TableMetaDataPersistDisabledServiceTest {
-
- private TableMetaDataPersistDisabledService persistService;
-
- @Mock
- private PersistRepository repository;
-
- @BeforeEach
- void setUp() {
- persistService = new TableMetaDataPersistDisabledService(repository);
- }
-
- @Test
- void assertLoadTables() {
- assertTrue(persistService.load("foo_db", "foo_schema").isEmpty());
- }
-
- @Test
- void assertLoadTable() {
- assertFalse(persistService.load("foo_db", "foo_schema",
"foo_tbl").isPresent());
- }
-
- @Test
- void assertPersist() {
- ShardingSphereTable table = new ShardingSphereTable("foo_tbl",
Collections.emptyList(), Collections.emptyList(), Collections.emptyList());
- String qualifiedTableName = Joiner.on(".").join("foo_db",
"foo_schema", "foo_tbl");
- TableCoordinatorTypeNodePath tableCoordinatorTypeNodePath = new
TableCoordinatorTypeNodePath(qualifiedTableName, CoordinatorType.CREATE.name());
- String expectedPersistPath =
NodePathGenerator.toPath(tableCoordinatorTypeNodePath);
- String expectedDeletePath =
NodePathGenerator.toPath(tableCoordinatorTypeNodePath.getTableCoordinatorPath());
- String expectedContent = YamlEngine.marshal(new
YamlTableSwapper().swapToYamlConfiguration(table));
- persistService.persist("foo_db", "foo_schema",
Collections.singleton(table));
- verify(repository).persist(expectedPersistPath, expectedContent);
- verify(repository).delete(expectedDeletePath);
- }
-
- @Test
- void assertDrop() {
- ShardingSphereTable table = mock(ShardingSphereTable.class);
- when(table.getName()).thenReturn("foo_tbl");
- String qualifiedTableName = Joiner.on(".").join("foo_db",
"foo_schema", "foo_tbl");
- TableCoordinatorTypeNodePath tableCoordinatorTypeNodePath = new
TableCoordinatorTypeNodePath(qualifiedTableName, CoordinatorType.DROP.name());
- String expectedPersistPath =
NodePathGenerator.toPath(tableCoordinatorTypeNodePath);
- String expectedDeletePath =
NodePathGenerator.toPath(tableCoordinatorTypeNodePath.getTableCoordinatorPath());
- persistService.drop("foo_db", "foo_schema",
Collections.singleton(table));
- verify(repository).persist(expectedPersistPath, "foo_tbl");
- verify(repository).delete(expectedDeletePath);
- }
-}
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistEnabledServiceTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistServiceTest.java
similarity index 96%
rename from
mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistEnabledServiceTest.java
rename to
mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistServiceTest.java
index 286756b8bee..a5b067913cb 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistEnabledServiceTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistServiceTest.java
@@ -33,16 +33,16 @@ import static org.hamcrest.Matchers.is;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
-class TableMetaDataPersistEnabledServiceTest {
+class TableMetaDataPersistServiceTest {
- private TableMetaDataPersistEnabledService persistService;
+ private TableMetaDataPersistService persistService;
private FixturePersistRepository repository;
@BeforeEach
void setUp() {
repository = new FixturePersistRepository();
- persistService = new TableMetaDataPersistEnabledService(repository,
new VersionPersistService(repository));
+ persistService = new TableMetaDataPersistService(repository, new
VersionPersistService(repository));
}
@Test
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/persist/PersistServiceFacadeTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/persist/PersistServiceFacadeTest.java
index b24840e9452..f811cf54598 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/persist/PersistServiceFacadeTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/persist/PersistServiceFacadeTest.java
@@ -18,7 +18,6 @@
package org.apache.shardingsphere.mode.persist;
import org.apache.shardingsphere.infra.config.mode.ModeConfiguration;
-import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.mode.metadata.manager.MetaDataContextManager;
import org.apache.shardingsphere.mode.persist.mode.ModePersistServiceFacade;
@@ -31,8 +30,8 @@ import org.mockito.Mock;
import org.mockito.MockedStatic;
import org.mockito.junit.jupiter.MockitoExtension;
-import static org.hamcrest.Matchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.is;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.mockito.Mockito.mockStatic;
import static org.mockito.Mockito.verify;
@@ -77,7 +76,6 @@ class PersistServiceFacadeTest {
}
private PersistServiceFacade createFacade(final
MockedStatic<TypedSPILoader> mockedStatic) {
-
when(metaDataContextManager.getMetaDataContexts().getMetaData().getProps().getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED)).thenReturn(Boolean.TRUE);
mockedStatic.when(() ->
TypedSPILoader.getService(ModePersistServiceFacadeBuilder.class,
"FIXTURE")).thenReturn(builder);
when(builder.build(metaDataContextManager,
repository)).thenReturn(modeFacade);
return new PersistServiceFacade(repository, new
ModeConfiguration("FIXTURE", null), metaDataContextManager);
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 807c12e54bc..30726adfb8c 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
@@ -142,7 +142,6 @@ class ProxyDatabaseConnectionManagerTest {
when(metaData.getDatabase("foo_db")).thenReturn(database);
when(metaData.getAllDatabases()).thenReturn(Collections.singleton(database));
when(metaData.getProps().<Integer>getValue(ConfigurationPropertyKey.KERNEL_EXECUTOR_SIZE)).thenReturn(0);
-
when(metaData.getProps().<Boolean>getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED)).thenReturn(true);
TransactionRule transactionRule = mock(TransactionRule.class);
when(transactionRule.getDefaultType()).thenReturn(TransactionType.LOCAL);
when(metaData.getGlobalRuleMetaData()).thenReturn(new
RuleMetaData(Collections.singletonList(transactionRule)));
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 898a4a652ea..ee4c0da001a 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
@@ -179,7 +179,6 @@ class ProxySQLExecutorTest {
when(metaData.getAllDatabases()).thenReturn(Collections.singleton(database));
when(metaData.getProps().<Integer>getValue(ConfigurationPropertyKey.KERNEL_EXECUTOR_SIZE)).thenReturn(0);
when(metaData.getProps().<Integer>getValue(ConfigurationPropertyKey.MAX_CONNECTIONS_SIZE_PER_QUERY)).thenReturn(1);
-
when(metaData.getProps().<Boolean>getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED)).thenReturn(true);
when(transactionRule.getDefaultType()).thenReturn(TransactionType.XA);
when(metaData.getGlobalRuleMetaData()).thenReturn(new
RuleMetaData(Arrays.asList(mock(SQLFederationRule.class), transactionRule)));
ContextManager contextManager = mock(ContextManager.class,
RETURNS_DEEP_STUBS);
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/variable/ShowDistVariablesExecutorTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/variable/ShowDistVariablesExecutorTest.java
index 4eb18e2de82..8d7d425e438 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/variable/ShowDistVariablesExecutorTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/variable/ShowDistVariablesExecutorTest.java
@@ -64,7 +64,7 @@ class ShowDistVariablesExecutorTest {
executor.setConnectionContext(new
DistSQLConnectionContext(mock(QueryContext.class), 1,
mock(DatabaseType.class),
mock(DatabaseConnectionManager.class), mock(ExecutorStatementManager.class)));
Collection<LocalDataQueryResultRow> actual =
executor.getRows(mock(ShowDistVariablesStatement.class), contextManager);
- assertThat(actual.size(), is(24));
+ assertThat(actual.size(), is(23));
LocalDataQueryResultRow row = actual.iterator().next();
assertThat(row.getCell(1), is("agent_plugins_enabled"));
assertThat(row.getCell(2), is("false"));
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 7c360e65a2a..ba1ee78c130 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
@@ -108,7 +108,6 @@ class OKProxyStateTest {
when(metaData.getAllDatabases()).thenReturn(Collections.singleton(mock(ShardingSphereDatabase.class,
RETURNS_DEEP_STUBS)));
when(metaData.getAllDatabases().iterator().next().getProtocolType()).thenReturn(TypedSPILoader.getService(DatabaseType.class,
"FIXTURE"));
when(metaData.getProps().<Integer>getValue(ConfigurationPropertyKey.KERNEL_EXECUTOR_SIZE)).thenReturn(0);
-
when(metaData.getProps().<Boolean>getValue(ConfigurationPropertyKey.PERSIST_SCHEMAS_TO_REPOSITORY_ENABLED)).thenReturn(true);
TransactionRule transactionRule = mock(TransactionRule.class);
when(transactionRule.getDefaultType()).thenReturn(transactionType);
when(metaData.getGlobalRuleMetaData()).thenReturn(new
RuleMetaData(Collections.singletonList(transactionRule)));
diff --git
a/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/show_dist_variables.xml
b/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/show_dist_variables.xml
index 2e1aa00d971..9b87ed9a2b2 100644
---
a/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/show_dist_variables.xml
+++
b/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/show_dist_variables.xml
@@ -30,7 +30,6 @@
<row values="max_connections_size_per_query| 1" />
<row values="max_union_size_per_datasource| 2147483647" />
<row values="metadata_identifier_case_sensitivity| AUTO" />
- <row values="persist_schemas_to_repository_enabled| true"/>
<row values="proxy_backend_query_fetch_size| -1" />
<row values="proxy_default_port| 3307" />
<row values="proxy_frontend_connection_idle_timeout| 28800" />
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 e58fb2b4122..14c6fbb062b 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
@@ -111,7 +111,7 @@ public final class PipelineContextUtils {
ContextManager contextManager = getContextManager(rootConfig);
ClusterPersistRepository persistRepository =
getClusterPersistRepository(
(ClusterPersistRepositoryConfiguration)
contextManager.getComputeNodeInstanceContext().getModeConfiguration().getRepository());
- MetaDataContexts metaDataContexts =
renewMetaDataContexts(contextManager.getMetaDataContexts(), new
MetaDataPersistFacade(persistRepository, true));
+ MetaDataContexts metaDataContexts =
renewMetaDataContexts(contextManager.getMetaDataContexts(), new
MetaDataPersistFacade(persistRepository));
PipelineContextManager.putContext(contextKey, new ContextManager(
metaDataContexts,
contextManager.getComputeNodeInstanceContext(),
contextManager.getExclusiveOperatorEngine(),
contextManager.getPersistServiceFacade().getRepository()));
}