This is an automated email from the ASF dual-hosted git repository.
panjuan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new bf2d576 Refactor change unconfiguredSchemaMetaDataMap type to
Map<String, Collection<String>> (#7559)
bf2d576 is described below
commit bf2d57647ad340263829d3ef18e0643cdfe61057
Author: xbkaishui <[email protected]>
AuthorDate: Wed Sep 23 12:07:13 2020 +0800
Refactor change unconfiguredSchemaMetaDataMap type to Map<String,
Collection<String>> (#7559)
* Refactor RuleSchemaMetaData.unconfiguredSchemaMetaDataMap to
Map<String,Collection<String>>, due to unconfigured table only need table name
* fix checkstyle
* fix checkstyle issue
* fix test
---
.../engine/type/ShardingRouteEngineFactory.java | 3 +--
.../ShardingUnconfiguredTablesRoutingEngine.java | 14 ++++-------
.../engine/type/standard/AbstractSQLRouteTest.java | 7 +++---
...hardingUnconfiguredTablesRoutingEngineTest.java | 11 +++------
.../swapper/RuleSchemaMetaDataYamlSwapper.java | 18 +++++++++++----
.../swapper/RuleSchemaMetaDataYamlSwapperTest.java | 7 ++----
.../governance/core/config/ConfigCenterTest.java | 4 +---
...reateTableStatementMetaDataRefreshStrategy.java | 16 ++++++-------
.../infra/metadata/schema/RuleSchemaMetaData.java | 9 ++++----
.../metadata/schema/RuleSchemaMetaDataLoader.java | 12 +++++-----
.../AbstractMetaDataRefreshStrategyTest.java | 6 +++--
...eTableStatementMetaDataRefreshStrategyTest.java | 2 +-
.../schema/RuleSchemaMetaDataLoaderTest.java | 4 ++--
.../metadata/schema/RuleSchemaMetaDataTest.java | 4 +++-
.../sql/context/ExecutionContextBuilderTest.java | 6 ++---
.../dbtest/engine/dql/BaseDQLIT.java | 1 +
.../metadata/schema/SchemaMetaDataLoader.java | 27 ++++------------------
.../binder/metadata/table/TableMetaData.java | 4 ++++
.../binder/metadata/table/TableMetaDataLoader.java | 3 +--
.../metadata/schema/SchemaMetaDataLoaderTest.java | 8 +++----
20 files changed, 73 insertions(+), 93 deletions(-)
diff --git
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactory.java
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactory.java
index 240ef55..a1d5708 100644
---
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactory.java
+++
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/ShardingRouteEngineFactory.java
@@ -32,7 +32,6 @@ import
org.apache.shardingsphere.sharding.route.engine.type.standard.ShardingSta
import
org.apache.shardingsphere.sharding.route.engine.type.unconfigured.ShardingUnconfiguredTablesRoutingEngine;
import
org.apache.shardingsphere.sharding.route.engine.type.unicast.ShardingUnicastRoutingEngine;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
-import
org.apache.shardingsphere.sql.parser.binder.metadata.schema.SchemaMetaData;
import
org.apache.shardingsphere.sql.parser.binder.statement.SQLStatementContext;
import org.apache.shardingsphere.sql.parser.binder.type.TableAvailable;
import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
@@ -95,7 +94,7 @@ public final class ShardingRouteEngineFactory {
}
private static ShardingRouteEngine getDALRoutingEngine(final ShardingRule
shardingRule,
- final Map<String,
SchemaMetaData> unconfiguredSchemaMetaDataMap, final SQLStatement sqlStatement,
final Collection<String> tableNames) {
+ final Map<String,
Collection<String>> unconfiguredSchemaMetaDataMap, final SQLStatement
sqlStatement, final Collection<String> tableNames) {
if (sqlStatement instanceof MySQLUseStatement) {
return new ShardingIgnoreRoutingEngine();
}
diff --git
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/unconfigured/ShardingUnconfiguredTablesRoutingEngine.java
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/unconfigured/ShardingUnconfiguredTablesRoutingEngine.java
index 381d7c6..cd955f5 100644
---
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/unconfigured/ShardingUnconfiguredTablesRoutingEngine.java
+++
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/main/java/org/apache/shardingsphere/sharding/route/engine/type/unconfigured/ShardingUnconfiguredTablesRoutingEngine.java
@@ -20,18 +20,17 @@ package
org.apache.shardingsphere.sharding.route.engine.type.unconfigured;
import lombok.RequiredArgsConstructor;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
import
org.apache.shardingsphere.sharding.route.engine.type.ShardingRouteEngine;
-import
org.apache.shardingsphere.sql.parser.binder.metadata.schema.SchemaMetaData;
import org.apache.shardingsphere.infra.exception.ShardingSphereException;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
import org.apache.shardingsphere.infra.route.context.RouteResult;
import org.apache.shardingsphere.infra.route.context.RouteUnit;
-import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Optional;
+import java.util.stream.Collectors;
/**
* Sharding unconfigured tables engine.
@@ -41,7 +40,7 @@ public final class ShardingUnconfiguredTablesRoutingEngine
implements ShardingRo
private final Collection<String> logicTables;
- private final Map<String, SchemaMetaData> unconfiguredSchemaMetaDataMap;
+ private final Map<String, Collection<String>>
unconfiguredSchemaMetaDataMap;
@Override
public RouteResult route(final ShardingRule shardingRule) {
@@ -50,17 +49,14 @@ public final class ShardingUnconfiguredTablesRoutingEngine
implements ShardingRo
throw new ShardingSphereException("Can not route tables for `%s`,
please make sure the tables are in same schema.", logicTables);
}
RouteResult result = new RouteResult();
- List<RouteMapper> routingTables = new ArrayList<>(logicTables.size());
- for (String each : logicTables) {
- routingTables.add(new RouteMapper(each, each));
- }
+ List<RouteMapper> routingTables = logicTables.stream().map(table ->
new RouteMapper(table, table)).collect(Collectors.toList());
result.getRouteUnits().add(new RouteUnit(new
RouteMapper(dataSourceName.get(), dataSourceName.get()), routingTables));
return result;
}
private Optional<String> findDataSourceName() {
- for (Entry<String, SchemaMetaData> entry :
unconfiguredSchemaMetaDataMap.entrySet()) {
- if (entry.getValue().getAllTableNames().containsAll(logicTables)) {
+ for (Entry<String, Collection<String>> entry :
unconfiguredSchemaMetaDataMap.entrySet()) {
+ if (entry.getValue().containsAll(logicTables)) {
return Optional.of(entry.getKey());
}
}
diff --git
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
index 299968f..2241662 100644
---
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
+++
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/standard/AbstractSQLRouteTest.java
@@ -36,6 +36,7 @@ import
org.apache.shardingsphere.infra.route.context.RouteContext;
import java.sql.Types;
import java.util.Arrays;
+import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
@@ -81,10 +82,8 @@ public abstract class AbstractSQLRouteTest extends
AbstractRoutingEngineTest {
new ColumnMetaData("status", Types.VARCHAR, "varchar", false,
false, false),
new ColumnMetaData("c_date", Types.TIMESTAMP, "timestamp",
false, false, false)), Collections.emptySet()));
tableMetaDataMap.put("t_other", new
TableMetaData(Collections.singletonList(new ColumnMetaData("order_id",
Types.INTEGER, "int", true, false, false)), Collections.emptySet()));
- Map<String, TableMetaData> unconfiguredTableMetaDataMap = new
HashMap<>(1, 1);
- unconfiguredTableMetaDataMap.put("t_category", new
TableMetaData(Collections.singletonList(new ColumnMetaData("order_id",
Types.INTEGER, "int", true, false, false)), Collections.emptySet()));
- Map<String, SchemaMetaData> unconfiguredSchemaMetaDataMap = new
HashMap<>(1, 1);
- unconfiguredSchemaMetaDataMap.put("ds_0", new
SchemaMetaData(unconfiguredTableMetaDataMap));
+ Map<String, Collection<String>> unconfiguredSchemaMetaDataMap = new
HashMap<>(1, 1);
+ unconfiguredSchemaMetaDataMap.put("ds_0", Arrays.asList("t_category"));
return new RuleSchemaMetaData(new SchemaMetaData(tableMetaDataMap),
unconfiguredSchemaMetaDataMap);
}
}
diff --git
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/unconfigured/ShardingUnconfiguredTablesRoutingEngineTest.java
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/unconfigured/ShardingUnconfiguredTablesRoutingEngineTest.java
index 26edb9a..398f1be 100644
---
a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/unconfigured/ShardingUnconfiguredTablesRoutingEngineTest.java
+++
b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-route/src/test/java/org/apache/shardingsphere/sharding/route/engine/type/unconfigured/ShardingUnconfiguredTablesRoutingEngineTest.java
@@ -19,8 +19,6 @@ package
org.apache.shardingsphere.sharding.route.engine.type.unconfigured;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.rule.ShardingRule;
-import
org.apache.shardingsphere.sql.parser.binder.metadata.schema.SchemaMetaData;
-import
org.apache.shardingsphere.sql.parser.binder.metadata.table.TableMetaData;
import org.apache.shardingsphere.infra.route.context.RouteMapper;
import org.apache.shardingsphere.infra.route.context.RouteResult;
import org.apache.shardingsphere.infra.route.context.RouteUnit;
@@ -29,7 +27,7 @@ import org.junit.Test;
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Collections;
+import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
@@ -45,11 +43,8 @@ public final class
ShardingUnconfiguredTablesRoutingEngineTest {
@Before
public void setUp() {
- Map<String, TableMetaData> tableMetaDataMap = new HashMap<>(2, 1);
- tableMetaDataMap.put("t_order", new
TableMetaData(Collections.emptyList(), Collections.emptyList()));
- tableMetaDataMap.put("t_order_item", new
TableMetaData(Collections.emptyList(), Collections.emptyList()));
- Map<String, SchemaMetaData> unconfiguredSchemaMetaDataMap = new
HashMap<>(1, 1);
- unconfiguredSchemaMetaDataMap.put("ds_0", new
SchemaMetaData(tableMetaDataMap));
+ Map<String, Collection<String>> unconfiguredSchemaMetaDataMap = new
HashMap<>(1, 1);
+ unconfiguredSchemaMetaDataMap.put("ds_0", Arrays.asList("t_order",
"t_order_item"));
shardingDefaultDatabaseRoutingEngine = new
ShardingUnconfiguredTablesRoutingEngine(Arrays.asList("t_order",
"t_order_item"), unconfiguredSchemaMetaDataMap);
}
diff --git
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/main/java/org/apache/shardingsphere/governance/core/yaml/swapper/RuleSchemaMetaDataYamlSwapper.java
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/main/java/org/apache/shardingsphere/governance/core/yaml/swapper/RuleSchemaMetaDataYamlSwapper.java
index b79d6bf..619ce75 100644
---
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/main/java/org/apache/shardingsphere/governance/core/yaml/swapper/RuleSchemaMetaDataYamlSwapper.java
+++
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/main/java/org/apache/shardingsphere/governance/core/yaml/swapper/RuleSchemaMetaDataYamlSwapper.java
@@ -47,22 +47,26 @@ public final class RuleSchemaMetaDataYamlSwapper implements
YamlSwapper<YamlRule
YamlRuleSchemaMetaData result = new YamlRuleSchemaMetaData();
result.setConfiguredSchemaMetaData(convertYamlSchema(metaData.getConfiguredSchemaMetaData()));
Map<String, YamlSchemaMetaData> unconfigured =
metaData.getUnconfiguredSchemaMetaDataMap().entrySet().stream()
- .collect(Collectors.toMap(Entry::getKey, entry ->
convertYamlSchema(entry.getValue())));
+ .collect(Collectors.toMap(Entry::getKey, entry ->
convertUnconfiguredYamlSchema(entry.getValue())));
result.setUnconfiguredSchemaMetaDataMap(unconfigured);
return result;
}
-
+
@Override
public RuleSchemaMetaData swapToObject(final YamlRuleSchemaMetaData
yamlConfig) {
SchemaMetaData configured =
Optional.ofNullable(yamlConfig.getConfiguredSchemaMetaData()).map(this::convertSchema).orElse(new
SchemaMetaData());
- Map<String, SchemaMetaData> unconfigured =
Optional.ofNullable(yamlConfig.getUnconfiguredSchemaMetaDataMap()).map(e ->
e.entrySet().stream()
- .collect(Collectors.toMap(Entry::getKey, entry ->
convertSchema(entry.getValue())))).orElse(new HashMap<>());
+ Map<String, Collection<String>> unconfigured =
Optional.ofNullable(yamlConfig.getUnconfiguredSchemaMetaDataMap()).map(e ->
e.entrySet().stream()
+ .collect(Collectors.toMap(Entry::getKey, entry ->
convertUnconfiguredSchema(entry.getValue())))).orElse(new HashMap<>());
return new RuleSchemaMetaData(configured, unconfigured);
}
private SchemaMetaData convertSchema(final YamlSchemaMetaData schema) {
return new
SchemaMetaData(schema.getTables().entrySet().stream().collect(Collectors.toMap(Entry::getKey,
entry -> convertTable(entry.getValue()))));
}
+
+ private Collection<String> convertUnconfiguredSchema(final
YamlSchemaMetaData schema) {
+ return
schema.getTables().keySet().stream().collect(Collectors.toList());
+ }
private TableMetaData convertTable(final YamlTableMetaData table) {
return new TableMetaData(convertColumns(table.getColumns()),
convertIndexes(table.getIndexes()));
@@ -90,6 +94,12 @@ public final class RuleSchemaMetaDataYamlSwapper implements
YamlSwapper<YamlRule
result.setTables(tables);
return result;
}
+
+ private YamlSchemaMetaData convertUnconfiguredYamlSchema(final
Collection<String> tableNames) {
+ SchemaMetaData schemaMetaData = new SchemaMetaData();
+ tableNames.forEach(table -> schemaMetaData.put(table, new
TableMetaData()));
+ return convertYamlSchema(schemaMetaData);
+ }
private YamlTableMetaData convertYamlTable(final TableMetaData table) {
YamlTableMetaData result = new YamlTableMetaData();
diff --git
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/test/java/org/apache/shardingsphere/governance/core/yaml/swapper/RuleSchemaMetaDataYamlSwapperTest.java
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/test/java/org/apache/shardingsphere/governance/core/yaml/swapper/RuleSchemaMetaDataYamlSwapperTest.java
index ba8b578..4137f29 100644
---
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/test/java/org/apache/shardingsphere/governance/core/yaml/swapper/RuleSchemaMetaDataYamlSwapperTest.java
+++
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-common/src/test/java/org/apache/shardingsphere/governance/core/yaml/swapper/RuleSchemaMetaDataYamlSwapperTest.java
@@ -25,6 +25,7 @@ import org.junit.Test;
import java.nio.file.Files;
import java.nio.file.Paths;
+import java.util.Arrays;
import java.util.Collections;
import java.util.stream.Collectors;
@@ -48,8 +49,6 @@ public final class RuleSchemaMetaDataYamlSwapperTest {
assertThat(yamlRuleSchemaMetaData.getConfiguredSchemaMetaData().getTables().get("t_order").getColumns().keySet(),
is(Collections.singleton("id")));
assertThat(yamlRuleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().keySet(),
is(Collections.singleton("ds_0")));
assertThat(yamlRuleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0").getTables().keySet(),
is(Collections.singleton("t_user")));
-
assertThat(yamlRuleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0").getTables().get("t_user").getIndexes().keySet(),
is(Collections.singleton("primary")));
-
assertThat(yamlRuleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0").getTables().get("t_user").getColumns().keySet(),
is(Collections.singleton("id")));
}
@Test
@@ -64,9 +63,7 @@ public final class RuleSchemaMetaDataYamlSwapperTest {
assertThat(ruleSchemaMetaData.getConfiguredSchemaMetaData().getAllColumnNames("t_order").size(),
is(1));
assertThat(ruleSchemaMetaData.getConfiguredSchemaMetaData().get("t_order").getColumns().keySet(),
is(Collections.singleton("id")));
assertThat(ruleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().keySet(),
is(Collections.singleton("ds_0")));
-
assertThat(ruleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0").getAllTableNames(),
is(Collections.singleton("t_user")));
-
assertThat(ruleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0").get("t_user").getIndexes().keySet(),
is(Collections.singleton("primary")));
-
assertThat(ruleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0").get("t_user").getColumns().keySet(),
is(Collections.singleton("id")));
+
assertThat(ruleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0"),
is(Arrays.asList("t_user")));
}
@SneakyThrows
diff --git
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-config/src/test/java/org/apache/shardingsphere/governance/core/config/ConfigCenterTest.java
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-config/src/test/java/org/apache/shardingsphere/governance/core/config/ConfigCenterTest.java
index 3ff7216..2334469 100644
---
a/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-config/src/test/java/org/apache/shardingsphere/governance/core/config/ConfigCenterTest.java
+++
b/shardingsphere-governance/shardingsphere-governance-core/shardingsphere-governance-core-config/src/test/java/org/apache/shardingsphere/governance/core/config/ConfigCenterTest.java
@@ -522,9 +522,7 @@ public final class ConfigCenterTest {
assertThat(ruleSchemaMetaData.getConfiguredSchemaMetaData().getAllColumnNames("t_order").size(),
is(1));
assertThat(ruleSchemaMetaData.getConfiguredSchemaMetaData().get("t_order").getColumns().keySet(),
is(Collections.singleton("id")));
assertThat(ruleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().keySet(),
is(Collections.singleton("ds_0")));
-
assertThat(ruleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0").getAllTableNames(),
is(Collections.singleton("t_user")));
-
assertThat(ruleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0").get("t_user").getIndexes().keySet(),
is(Collections.singleton("primary")));
-
assertThat(ruleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0").get("t_user").getColumns().keySet(),
is(Collections.singleton("id")));
+
assertThat(ruleSchemaMetaData.getUnconfiguredSchemaMetaDataMap().get("ds_0"),
is(Arrays.asList("t_user")));
}
@Test
diff --git
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/refresh/impl/CreateTableStatementMetaDataRefreshStrategy.java
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/refresh/impl/CreateTableStatementMetaDataRefreshStrategy.java
index 5bf00be..14a24c8 100644
---
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/refresh/impl/CreateTableStatementMetaDataRefreshStrategy.java
+++
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/refresh/impl/CreateTableStatementMetaDataRefreshStrategy.java
@@ -17,18 +17,18 @@
package org.apache.shardingsphere.infra.metadata.refresh.impl;
+import com.google.common.collect.Lists;
import org.apache.shardingsphere.infra.database.type.DatabaseType;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import
org.apache.shardingsphere.infra.metadata.refresh.MetaDataRefreshStrategy;
import
org.apache.shardingsphere.infra.metadata.refresh.TableMetaDataLoaderCallback;
-import
org.apache.shardingsphere.sql.parser.binder.metadata.schema.SchemaMetaData;
import
org.apache.shardingsphere.sql.parser.binder.metadata.table.TableMetaData;
import
org.apache.shardingsphere.sql.parser.binder.metadata.table.TableMetaDataLoader;
import
org.apache.shardingsphere.sql.parser.binder.statement.ddl.CreateTableStatementContext;
import javax.sql.DataSource;
import java.sql.SQLException;
-import java.util.HashMap;
+import java.util.Collection;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Optional;
@@ -55,20 +55,18 @@ public final class
CreateTableStatementMetaDataRefreshStrategy implements MetaDa
for (Entry<String, DataSource> entry : dataSourceMap.entrySet()) {
Optional<TableMetaData> tableMetaData =
TableMetaDataLoader.loadWithoutColumnMetaData(entry.getValue(), tableName,
databaseType.getName());
if (tableMetaData.isPresent()) {
- refreshUnconfiguredMetaData(metaData, tableName,
entry.getKey(), tableMetaData.get());
+ refreshUnconfiguredMetaData(metaData, tableName,
entry.getKey());
return;
}
}
}
- private void refreshUnconfiguredMetaData(final ShardingSphereMetaData
metaData, final String tableName, final String dataSourceName, final
TableMetaData tableMetaData) {
- SchemaMetaData schemaMetaData =
metaData.getRuleSchemaMetaData().getUnconfiguredSchemaMetaDataMap().get(dataSourceName);
+ private void refreshUnconfiguredMetaData(final ShardingSphereMetaData
metaData, final String tableName, final String dataSourceName) {
+ Collection<String> schemaMetaData =
metaData.getRuleSchemaMetaData().getUnconfiguredSchemaMetaDataMap().get(dataSourceName);
if (null == schemaMetaData) {
- Map<String, TableMetaData> tables = new HashMap<>(1, 1);
- tables.put(tableName, tableMetaData);
-
metaData.getRuleSchemaMetaData().getUnconfiguredSchemaMetaDataMap().put(dataSourceName,
new SchemaMetaData(tables));
+
metaData.getRuleSchemaMetaData().getUnconfiguredSchemaMetaDataMap().put(dataSourceName,
Lists.newArrayList(tableName));
} else {
- schemaMetaData.put(tableName, tableMetaData);
+ schemaMetaData.add(tableName);
}
}
}
diff --git
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaData.java
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaData.java
index 00c2f68..bc65bb6 100644
---
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaData.java
+++
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaData.java
@@ -20,6 +20,7 @@ package org.apache.shardingsphere.infra.metadata.schema;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import
org.apache.shardingsphere.sql.parser.binder.metadata.schema.SchemaMetaData;
+import
org.apache.shardingsphere.sql.parser.binder.metadata.table.TableMetaData;
import java.util.Collection;
import java.util.LinkedList;
@@ -34,7 +35,7 @@ public final class RuleSchemaMetaData {
private final SchemaMetaData configuredSchemaMetaData;
- private final Map<String, SchemaMetaData> unconfiguredSchemaMetaDataMap;
+ private final Map<String, Collection<String>>
unconfiguredSchemaMetaDataMap;
/**
* Get schema meta data.
@@ -43,7 +44,7 @@ public final class RuleSchemaMetaData {
*/
public SchemaMetaData getSchemaMetaData() {
SchemaMetaData result = new SchemaMetaData();
- unconfiguredSchemaMetaDataMap.values().forEach(result::merge);
+ unconfiguredSchemaMetaDataMap.values().stream().flatMap(tableNames ->
tableNames.stream()).forEach(tableName -> result.put(tableName, new
TableMetaData()));
result.merge(configuredSchemaMetaData);
return result;
}
@@ -55,9 +56,7 @@ public final class RuleSchemaMetaData {
*/
public Collection<String> getAllTableNames() {
Collection<String> result = new
LinkedList<>(configuredSchemaMetaData.getAllTableNames());
- for (SchemaMetaData each : unconfiguredSchemaMetaDataMap.values()) {
- result.addAll(each.getAllTableNames());
- }
+ unconfiguredSchemaMetaDataMap.values().forEach(result::addAll);
return result;
}
}
diff --git
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataLoader.java
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataLoader.java
index a130cd8..00fcb0c 100644
---
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataLoader.java
+++
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataLoader.java
@@ -77,7 +77,7 @@ public final class RuleSchemaMetaDataLoader {
configuredSchemaMetaData.merge(schemaMetaData);
}
decorate(configuredSchemaMetaData);
- Map<String, SchemaMetaData> unConfiguredSchemaMetaDataMap =
loadUnConfiguredSchemaMetaData(databaseType, dataSourceMap, excludedTableNames);
+ Map<String, Collection<String>> unConfiguredSchemaMetaDataMap =
loadUnConfiguredSchemaMetaData(databaseType, dataSourceMap, excludedTableNames);
return new RuleSchemaMetaData(configuredSchemaMetaData,
unConfiguredSchemaMetaDataMap);
}
@@ -136,13 +136,13 @@ public final class RuleSchemaMetaDataLoader {
return load(databaseType, dataSourceMap, tableName, props);
}
- private Map<String, SchemaMetaData> loadUnConfiguredSchemaMetaData(final
DatabaseType databaseType, final Map<String, DataSource> dataSourceMap,
+ private Map<String, Collection<String>>
loadUnConfiguredSchemaMetaData(final DatabaseType databaseType, final
Map<String, DataSource> dataSourceMap,
final
Collection<String> excludedTableNames) throws SQLException {
- Map<String, SchemaMetaData> result = new
HashMap<>(dataSourceMap.size(), 1);
+ Map<String, Collection<String>> result = new
HashMap<>(dataSourceMap.size(), 1);
for (Entry<String, DataSource> entry : dataSourceMap.entrySet()) {
- SchemaMetaData schemaMetaData =
SchemaMetaDataLoader.load(entry.getValue(), databaseType.getName(),
excludedTableNames);
- if (!schemaMetaData.getAllTableNames().isEmpty()) {
- result.put(entry.getKey(), schemaMetaData);
+ Collection<String> tableNames =
SchemaMetaDataLoader.loadUnconfiguredTableNames(entry.getValue(),
databaseType.getName(), excludedTableNames);
+ if (!tableNames.isEmpty()) {
+ result.put(entry.getKey(), tableNames);
}
}
return result;
diff --git
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/AbstractMetaDataRefreshStrategyTest.java
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/AbstractMetaDataRefreshStrategyTest.java
index 930b191..ba05662 100644
---
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/AbstractMetaDataRefreshStrategyTest.java
+++
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/AbstractMetaDataRefreshStrategyTest.java
@@ -18,7 +18,10 @@
package org.apache.shardingsphere.infra.metadata.refresh;
import com.google.common.collect.ImmutableMap;
+
import java.util.Collections;
+
+import com.google.common.collect.Lists;
import lombok.Getter;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
import org.apache.shardingsphere.infra.metadata.schema.RuleSchemaMetaData;
@@ -41,8 +44,7 @@ public abstract class AbstractMetaDataRefreshStrategyTest {
private ShardingSphereMetaData buildMetaData() {
return new ShardingSphereMetaData(null, new RuleSchemaMetaData(new
SchemaMetaData(ImmutableMap
.of("t_order", new TableMetaData(Collections.singletonList(new
ColumnMetaData("order_id", 1, "String", false, false, false)),
Collections.singletonList(new IndexMetaData("index"))))),
- ImmutableMap.of("t_order_item", new
SchemaMetaData(ImmutableMap.of("t_order_item",
- new TableMetaData(Collections.singletonList(new
ColumnMetaData("order_item_id", 1, "String", true, false, false)),
Collections.singletonList(new IndexMetaData("index"))))))),
+ ImmutableMap.of("t_order_item",
Lists.newArrayList("t_order_item"))),
"sharding_db");
}
}
diff --git
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/CreateTableStatementMetaDataRefreshStrategyTest.java
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/CreateTableStatementMetaDataRefreshStrategyTest.java
index 3259171..331f7c0 100644
---
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/CreateTableStatementMetaDataRefreshStrategyTest.java
+++
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/refresh/CreateTableStatementMetaDataRefreshStrategyTest.java
@@ -134,7 +134,7 @@ public final class
CreateTableStatementMetaDataRefreshStrategyTest extends Abstr
MetaDataRefreshStrategy<CreateTableStatementContext>
metaDataRefreshStrategy = new CreateTableStatementMetaDataRefreshStrategy();
metaDataRefreshStrategy.refreshMetaData(getMetaData(), new
MySQLDatabaseType(), dataSourceSourceMap, createTableStatementContext,
tableName -> Optional.empty());
-
assertTrue(getMetaData().getRuleSchemaMetaData().getUnconfiguredSchemaMetaDataMap().get("t_order_item").containsTable("t_order_item_0"));
+
assertTrue(getMetaData().getRuleSchemaMetaData().getUnconfiguredSchemaMetaDataMap().get("t_order_item").contains("t_order_item_0"));
}
private DataSource initDataSource() throws SQLException {
diff --git
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataLoaderTest.java
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataLoaderTest.java
index 059057f..4003e10 100644
---
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataLoaderTest.java
+++
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataLoaderTest.java
@@ -88,8 +88,8 @@ public final class RuleSchemaMetaDataLoaderTest {
assertTrue(actual.getConfiguredSchemaMetaData().get("data_node_routed_table_1").getColumns().containsKey("id"));
assertThat(actual.getUnconfiguredSchemaMetaDataMap().size(), is(1));
assertTrue(actual.getUnconfiguredSchemaMetaDataMap().containsKey("logic_db"));
-
assertTrue(actual.getUnconfiguredSchemaMetaDataMap().get("logic_db").containsTable("unconfigured_table_0"));
-
assertTrue(actual.getUnconfiguredSchemaMetaDataMap().get("logic_db").containsTable("unconfigured_table_1"));
+
assertTrue(actual.getUnconfiguredSchemaMetaDataMap().get("logic_db").contains("unconfigured_table_0"));
+
assertTrue(actual.getUnconfiguredSchemaMetaDataMap().get("logic_db").contains("unconfigured_table_1"));
}
@Test
diff --git
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataTest.java
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataTest.java
index d057748..93750dc 100644
---
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataTest.java
+++
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/RuleSchemaMetaDataTest.java
@@ -20,6 +20,8 @@ package org.apache.shardingsphere.infra.metadata.schema;
import
org.apache.shardingsphere.sql.parser.binder.metadata.schema.SchemaMetaData;
import
org.apache.shardingsphere.sql.parser.binder.metadata.table.TableMetaData;
import org.junit.Test;
+
+import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
@@ -30,7 +32,7 @@ public final class RuleSchemaMetaDataTest {
@Test
public void assertGetSchemaMetaData() {
Map<String, TableMetaData> tableMetaDataMap = new HashMap<>(1, 1);
- Map<String, SchemaMetaData> unconfiguredSchemaMetaDataMap = new
HashMap<>(1, 1);
+ Map<String, Collection<String>> unconfiguredSchemaMetaDataMap = new
HashMap<>(1, 1);
RuleSchemaMetaData ruleSchemaMetaData = new RuleSchemaMetaData(new
SchemaMetaData(tableMetaDataMap), unconfiguredSchemaMetaDataMap);
SchemaMetaData schemaMetaData = ruleSchemaMetaData.getSchemaMetaData();
assertNotNull("SchemaMetaData is null", schemaMetaData);
diff --git
a/shardingsphere-infra/shardingsphere-infra-executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/context/ExecutionContextBuilderTest.java
b/shardingsphere-infra/shardingsphere-infra-executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/context/ExecutionContextBuilderTest.java
index 5f548c6..e6e20b2 100644
---
a/shardingsphere-infra/shardingsphere-infra-executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/context/ExecutionContextBuilderTest.java
+++
b/shardingsphere-infra/shardingsphere-infra-executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/context/ExecutionContextBuilderTest.java
@@ -91,10 +91,8 @@ public final class ExecutionContextBuilderTest {
new ColumnMetaData("status", Types.VARCHAR, "varchar", false,
false, false),
new ColumnMetaData("c_date", Types.TIMESTAMP, "timestamp",
false, false, false)), Collections.emptySet()));
tableMetaDataMap.put("t_other", new
TableMetaData(Collections.singletonList(new ColumnMetaData("order_id",
Types.INTEGER, "int", true, false, false)), Collections.emptySet()));
- Map<String, TableMetaData> unconfiguredTableMetaDataMap = new
HashMap<>(1, 1);
- unconfiguredTableMetaDataMap.put("t_category", new
TableMetaData(Collections.singletonList(new ColumnMetaData("order_id",
Types.INTEGER, "int", true, false, false)), Collections.emptySet()));
- Map<String, SchemaMetaData> unconfiguredSchemaMetaDataMap = new
HashMap<>(1, 1);
- unconfiguredSchemaMetaDataMap.put("ds_0", new
SchemaMetaData(unconfiguredTableMetaDataMap));
+ Map<String, Collection<String>> unconfiguredSchemaMetaDataMap = new
HashMap<>(1, 1);
+ unconfiguredSchemaMetaDataMap.put("ds_0", Arrays.asList("t_category"));
return new RuleSchemaMetaData(new SchemaMetaData(tableMetaDataMap),
unconfiguredSchemaMetaDataMap);
}
}
diff --git
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dql/BaseDQLIT.java
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dql/BaseDQLIT.java
index 32ff684..9f0441d 100644
---
a/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dql/BaseDQLIT.java
+++
b/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/dbtest/engine/dql/BaseDQLIT.java
@@ -114,6 +114,7 @@ public abstract class BaseDQLIT extends SingleIT {
if ("shadow".equals(getRuleType())) {
return;
}
+ // Unconfigured Table doesn't have column info, should skip check
column info
if (0 == actualMetaData.getColumnCount()) {
return;
}
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/schema/SchemaMetaDataLoader.java
b/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/schema/SchemaMetaDataLoader.java
index d128143..fd24f2c 100644
---
a/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/schema/SchemaMetaDataLoader.java
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/schema/SchemaMetaDataLoader.java
@@ -21,7 +21,6 @@ import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.shardingsphere.sql.parser.binder.metadata.MetaDataConnection;
-import
org.apache.shardingsphere.sql.parser.binder.metadata.table.TableMetaData;
import org.apache.shardingsphere.sql.parser.binder.metadata.util.JdbcUtil;
import javax.sql.DataSource;
@@ -30,10 +29,8 @@ import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Collection;
import java.util.Collections;
-import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
-import java.util.Map;
/**
* Schema meta data loader.
@@ -48,27 +45,15 @@ public final class SchemaMetaDataLoader {
private static final String TABLE_NAME = "TABLE_NAME";
/**
- * Load schema meta data.
- *
- * @param dataSource data source
- * @param databaseType database type
- * @return schema meta data
- * @throws SQLException SQL exception
- */
- public static SchemaMetaData load(final DataSource dataSource, final
String databaseType) throws SQLException {
- return load(dataSource, databaseType, Collections.emptyList());
- }
-
- /**
- * Load schema meta data.
+ * Load unconfigured table name.
*
* @param dataSource data source
* @param databaseType database type
* @param excludedTableNames excluded table names
- * @return schema meta data
+ * @return Unconfigured table names
* @throws SQLException SQL exception
*/
- public static SchemaMetaData load(final DataSource dataSource, final
String databaseType, final Collection<String> excludedTableNames) throws
SQLException {
+ public static Collection<String> loadUnconfiguredTableNames(final
DataSource dataSource, final String databaseType, final Collection<String>
excludedTableNames) throws SQLException {
List<String> tableNames;
try (MetaDataConnection connection = new
MetaDataConnection(dataSource.getConnection())) {
tableNames = loadAllTableNames(connection, databaseType);
@@ -76,11 +61,9 @@ public final class SchemaMetaDataLoader {
}
log.info("Loading {} tables' meta data.", tableNames.size());
if (tableNames.isEmpty()) {
- return new SchemaMetaData(Collections.emptyMap());
+ return Collections.emptyList();
}
- Map<String, TableMetaData> tableMetaDataMap = new
HashMap<>(tableNames.size(), 1);
- tableNames.forEach(tableName -> tableMetaDataMap.put(tableName, new
TableMetaData(Collections.emptyList(), Collections.emptyList())));
- return new SchemaMetaData(tableMetaDataMap);
+ return tableNames;
}
private static List<String> loadAllTableNames(final Connection connection,
final String databaseType) throws SQLException {
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/table/TableMetaData.java
b/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/table/TableMetaData.java
index 9fb3cac..9cdd7e9 100644
---
a/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/table/TableMetaData.java
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/table/TableMetaData.java
@@ -48,6 +48,10 @@ public final class TableMetaData {
private final List<String> primaryKeyColumns = new ArrayList<>();
+ public TableMetaData() {
+ this(Collections.emptyList(), Collections.emptyList());
+ }
+
public TableMetaData(final Collection<ColumnMetaData> columnMetaDataList,
final Collection<IndexMetaData> indexMetaDataList) {
columns = getColumns(columnMetaDataList);
indexes = getIndexes(indexMetaDataList);
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/table/TableMetaDataLoader.java
b/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/table/TableMetaDataLoader.java
index 5f99e52..75b8a36 100644
---
a/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/table/TableMetaDataLoader.java
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/main/java/org/apache/shardingsphere/sql/parser/binder/metadata/table/TableMetaDataLoader.java
@@ -28,7 +28,6 @@ import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
-import java.util.Collections;
import java.util.Optional;
/**
@@ -69,7 +68,7 @@ public final class TableMetaDataLoader {
if (!isTableExist(connection, tableNamePattern, databaseType)) {
return Optional.empty();
}
- return Optional.of(new TableMetaData(Collections.emptyList(),
Collections.emptyList()));
+ return Optional.of(new TableMetaData());
}
}
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/test/java/org/apache/shardingsphere/sql/parser/binder/metadata/schema/SchemaMetaDataLoaderTest.java
b/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/test/java/org/apache/shardingsphere/sql/parser/binder/metadata/schema/SchemaMetaDataLoaderTest.java
index ccecc49..fa71eab 100644
---
a/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/test/java/org/apache/shardingsphere/sql/parser/binder/metadata/schema/SchemaMetaDataLoaderTest.java
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-binder/src/test/java/org/apache/shardingsphere/sql/parser/binder/metadata/schema/SchemaMetaDataLoaderTest.java
@@ -29,6 +29,7 @@ import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Collection;
+import java.util.Collections;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
@@ -64,9 +65,8 @@ public final class SchemaMetaDataLoaderTest {
}
@Test
- public void assertLoadAllTableNamesForOracle() throws SQLException {
- SchemaMetaData schemaMetaData = SchemaMetaDataLoader.load(dataSource,
DATABASE_TYPE_ORACLE);
- Collection<String> allTableNames = schemaMetaData.getAllTableNames();
- assertThat(allTableNames.size(), is(0));
+ public void assertLoadUnconfiguredTableNamesForOracle() throws
SQLException {
+ Collection<String> tableNames =
SchemaMetaDataLoader.loadUnconfiguredTableNames(dataSource,
DATABASE_TYPE_ORACLE, Collections.emptyList());
+ assertThat(tableNames.size(), is(0));
}
}