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

Reply via email to