This is an automated email from the ASF dual-hosted git repository.
menghaoran 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 faf3f245f62 Refactor StorageUnit to use CatalogSwitchableDataSource
only necessary (#31737)
faf3f245f62 is described below
commit faf3f245f62cd54df31083dd152cbdd78c2b829a
Author: Liang Zhang <[email protected]>
AuthorDate: Mon Jun 17 23:48:12 2024 +0800
Refactor StorageUnit to use CatalogSwitchableDataSource only necessary
(#31737)
---
.../infra/metadata/database/resource/unit/StorageUnit.java | 4 ++--
.../impl/DataSourceGeneratedDatabaseConfigurationTest.java | 7 ++-----
.../database/impl/DataSourceProvidedDatabaseConfigurationTest.java | 7 ++-----
3 files changed, 6 insertions(+), 12 deletions(-)
diff --git
a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/unit/StorageUnit.java
b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/unit/StorageUnit.java
index 5724cbe8c12..8f488667a64 100644
---
a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/unit/StorageUnit.java
+++
b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/unit/StorageUnit.java
@@ -57,8 +57,8 @@ public final class StorageUnit {
storageType = DatabaseTypeFactory.get(url);
boolean isInstanceConnectionAvailable = new
DatabaseTypeRegistry(DatabaseTypeFactory.get(url)).getDialectDatabaseMetaData().isInstanceConnectionAvailable();
catalog = isInstanceConnectionAvailable ? new
StandardJdbcUrlParser().parse(url).getDatabase() : null;
- this.dataSource = new CatalogSwitchableDataSource(dataSource, catalog,
url);
- this.dataSourcePoolProperties = dataSourcePoolProps;
+ this.dataSource = isInstanceConnectionAvailable ? new
CatalogSwitchableDataSource(dataSource, catalog, url) : dataSource;
+ dataSourcePoolProperties = dataSourcePoolProps;
connectionProperties = createConnectionProperties(standardProps);
}
diff --git
a/infra/common/src/test/java/org/apache/shardingsphere/infra/config/database/impl/DataSourceGeneratedDatabaseConfigurationTest.java
b/infra/common/src/test/java/org/apache/shardingsphere/infra/config/database/impl/DataSourceGeneratedDatabaseConfigurationTest.java
index db7ab6ae02a..2048ec52ab6 100644
---
a/infra/common/src/test/java/org/apache/shardingsphere/infra/config/database/impl/DataSourceGeneratedDatabaseConfigurationTest.java
+++
b/infra/common/src/test/java/org/apache/shardingsphere/infra/config/database/impl/DataSourceGeneratedDatabaseConfigurationTest.java
@@ -18,7 +18,6 @@
package org.apache.shardingsphere.infra.config.database.impl;
import com.zaxxer.hikari.HikariDataSource;
-import
org.apache.shardingsphere.infra.datasource.pool.CatalogSwitchableDataSource;
import
org.apache.shardingsphere.infra.datasource.pool.config.ConnectionConfiguration;
import
org.apache.shardingsphere.infra.datasource.pool.config.DataSourceConfiguration;
import
org.apache.shardingsphere.infra.datasource.pool.config.PoolConfiguration;
@@ -43,8 +42,7 @@ class DataSourceGeneratedDatabaseConfigurationTest {
void assertGetDataSources() {
DataSourceGeneratedDatabaseConfiguration databaseConfig =
createDataSourceGeneratedDatabaseConfiguration();
DataSource dataSource =
databaseConfig.getStorageUnits().get("normal_db").getDataSource();
- assertTrue(dataSource instanceof CatalogSwitchableDataSource);
- assertTrue(((CatalogSwitchableDataSource) dataSource).getDataSource()
instanceof HikariDataSource);
+ assertTrue(dataSource instanceof HikariDataSource);
}
@Test
@@ -60,8 +58,7 @@ class DataSourceGeneratedDatabaseConfigurationTest {
void assertGetStorageUnits() {
DataSourceGeneratedDatabaseConfiguration databaseConfig =
createDataSourceGeneratedDatabaseConfiguration();
DataSource dataSource =
databaseConfig.getStorageUnits().get("normal_db").getDataSource();
- assertTrue(dataSource instanceof CatalogSwitchableDataSource);
- assertTrue(((CatalogSwitchableDataSource) dataSource).getDataSource()
instanceof HikariDataSource);
+ assertTrue(dataSource instanceof HikariDataSource);
}
@Test
diff --git
a/infra/common/src/test/java/org/apache/shardingsphere/infra/config/database/impl/DataSourceProvidedDatabaseConfigurationTest.java
b/infra/common/src/test/java/org/apache/shardingsphere/infra/config/database/impl/DataSourceProvidedDatabaseConfigurationTest.java
index 64287f762af..6c39e908638 100644
---
a/infra/common/src/test/java/org/apache/shardingsphere/infra/config/database/impl/DataSourceProvidedDatabaseConfigurationTest.java
+++
b/infra/common/src/test/java/org/apache/shardingsphere/infra/config/database/impl/DataSourceProvidedDatabaseConfigurationTest.java
@@ -17,7 +17,6 @@
package org.apache.shardingsphere.infra.config.database.impl;
-import
org.apache.shardingsphere.infra.datasource.pool.CatalogSwitchableDataSource;
import
org.apache.shardingsphere.infra.datasource.pool.props.domain.DataSourcePoolProperties;
import org.apache.shardingsphere.infra.fixture.FixtureRuleConfiguration;
import
org.apache.shardingsphere.infra.metadata.database.resource.node.StorageNode;
@@ -38,8 +37,7 @@ class DataSourceProvidedDatabaseConfigurationTest {
void assertGetDataSources() {
DataSourceProvidedDatabaseConfiguration databaseConfig =
createDataSourceProvidedDatabaseConfiguration();
DataSource dataSource =
databaseConfig.getStorageUnits().get("foo_ds").getDataSource();
- assertTrue(dataSource instanceof CatalogSwitchableDataSource);
- assertTrue(((CatalogSwitchableDataSource) dataSource).getDataSource()
instanceof MockedDataSource);
+ assertTrue(dataSource instanceof MockedDataSource);
}
@Test
@@ -55,8 +53,7 @@ class DataSourceProvidedDatabaseConfigurationTest {
void assertGetStorageUnits() {
DataSourceProvidedDatabaseConfiguration databaseConfig =
createDataSourceProvidedDatabaseConfiguration();
DataSource dataSource =
databaseConfig.getStorageUnits().get("foo_ds").getDataSource();
- assertTrue(dataSource instanceof CatalogSwitchableDataSource);
- assertTrue(((CatalogSwitchableDataSource) dataSource).getDataSource()
instanceof MockedDataSource);
+ assertTrue(dataSource instanceof MockedDataSource);
}
@Test