This is an automated email from the ASF dual-hosted git repository.
chengzhang 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 64bc24f0db0 Use ConnectionPropertiesParser spi to parse jdbcUrl to
solve oracle url parse error (#31746)
64bc24f0db0 is described below
commit 64bc24f0db07725842710d7d897eb0cd412a846d
Author: Zhengqiang Duan <[email protected]>
AuthorDate: Tue Jun 18 18:49:31 2024 +0800
Use ConnectionPropertiesParser spi to parse jdbcUrl to solve oracle url
parse error (#31746)
* Use ConnectionPropertiesParser spi to parse jdbcUrl to solve oracle url
parse error
* fix unit test
* fix unit test
* fix unit test
* fix unit test
* fix unit test
* fix unit test
* remove useless warn log
* fix unit test
---
.../shardingsphere/broadcast/route/BroadcastSqlRouterTest.java | 5 +++--
.../metadata/database/resource/node/StorageNodeAggregator.java | 9 +++++----
.../infra/metadata/database/resource/unit/StorageUnit.java | 6 +++---
.../database/resource/unit/StorageUnitNodeMapCreator.java | 9 +++++----
.../infra/metadata/ShardingSphereMetaDataTest.java | 3 ++-
.../executor/rdl/resource/UnregisterStorageUnitExecutorTest.java | 3 ++-
.../apache/shardingsphere/single/route/SingleSQLRouterTest.java | 5 +++--
.../shardingsphere/transaction/rule/TransactionRuleTest.java | 9 +++++----
.../apache/shardingsphere/mode/manager/ContextManagerTest.java | 3 ++-
.../distsql/ral/updatable/ImportMetaDataExecutorTest.java | 5 +++--
.../proxy/version/ShardingSphereProxyVersionTest.java | 3 ++-
.../test/fixture/connector/MockedConnectionPropertiesParser.java | 3 ++-
.../test/it/optimizer/converter/SQLNodeConverterEngineIT.java | 5 +----
13 files changed, 38 insertions(+), 30 deletions(-)
diff --git
a/features/broadcast/core/src/test/java/org/apache/shardingsphere/broadcast/route/BroadcastSqlRouterTest.java
b/features/broadcast/core/src/test/java/org/apache/shardingsphere/broadcast/route/BroadcastSqlRouterTest.java
index 1101acdd536..ca012094265 100644
---
a/features/broadcast/core/src/test/java/org/apache/shardingsphere/broadcast/route/BroadcastSqlRouterTest.java
+++
b/features/broadcast/core/src/test/java/org/apache/shardingsphere/broadcast/route/BroadcastSqlRouterTest.java
@@ -18,6 +18,7 @@
package org.apache.shardingsphere.broadcast.route;
import com.google.common.collect.Lists;
+import org.apache.groovy.util.Maps;
import
org.apache.shardingsphere.broadcast.api.config.BroadcastRuleConfiguration;
import org.apache.shardingsphere.broadcast.rule.BroadcastRule;
import
org.apache.shardingsphere.infra.binder.context.statement.ddl.CreateTableStatementContext;
@@ -151,10 +152,10 @@ class BroadcastSqlRouterTest {
private ShardingSphereDatabase mockDatabaseWithMultipleResources() {
Map<String, StorageUnit> storageUnits = new HashMap<>(2, 1F);
DataSourcePoolProperties dataSourcePoolProps0 =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps0.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/ds_0"));
+
when(dataSourcePoolProps0.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/ds_0", "username", "test"));
storageUnits.put("ds_0", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps0, new MockedDataSource()));
DataSourcePoolProperties dataSourcePoolProps1 =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps1.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/ds_1"));
+
when(dataSourcePoolProps1.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/ds_1", "username", "test"));
storageUnits.put("ds_1", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps1, new MockedDataSource()));
ShardingSphereDatabase result = mock(ShardingSphereDatabase.class,
RETURNS_DEEP_STUBS);
when(result.getResourceMetaData().getStorageUnits()).thenReturn(storageUnits);
diff --git
a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/node/StorageNodeAggregator.java
b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/node/StorageNodeAggregator.java
index 375263ee7d7..f78868830b7 100644
---
a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/node/StorageNodeAggregator.java
+++
b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/node/StorageNodeAggregator.java
@@ -19,9 +19,10 @@ package
org.apache.shardingsphere.infra.metadata.database.resource.node;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
-import org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrl;
-import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
+import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
+import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
import
org.apache.shardingsphere.infra.database.core.exception.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeRegistry;
import
org.apache.shardingsphere.infra.datasource.pool.props.domain.DataSourcePoolProperties;
@@ -69,8 +70,8 @@ public final class StorageNodeAggregator {
private static StorageNode getStorageNode(final String dataSourceName,
final String url, final String username, final boolean
isInstanceConnectionAvailable) {
try {
- JdbcUrl jdbcUrl = new StandardJdbcUrlParser().parse(url);
- return isInstanceConnectionAvailable ? new
StorageNode(jdbcUrl.getHostname(), jdbcUrl.getPort(), username) : new
StorageNode(dataSourceName);
+ ConnectionProperties connectionProps =
DatabaseTypedSPILoader.getService(ConnectionPropertiesParser.class,
DatabaseTypeFactory.get(url)).parse(url, username, null);
+ return isInstanceConnectionAvailable ? new
StorageNode(connectionProps.getHostname(), connectionProps.getPort(), username)
: new StorageNode(dataSourceName);
} catch (final UnrecognizedDatabaseURLException ex) {
return new StorageNode(dataSourceName);
}
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 8f488667a64..2850c4616ef 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
@@ -20,7 +20,6 @@ package
org.apache.shardingsphere.infra.metadata.database.resource.unit;
import lombok.Getter;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeFactory;
@@ -54,9 +53,10 @@ public final class StorageUnit {
this.storageNode = storageNode;
Map<String, Object> standardProps =
dataSourcePoolProps.getConnectionPropertySynonyms().getStandardProperties();
String url = standardProps.get("url").toString();
+ String username = standardProps.get("username").toString();
storageType = DatabaseTypeFactory.get(url);
- boolean isInstanceConnectionAvailable = new
DatabaseTypeRegistry(DatabaseTypeFactory.get(url)).getDialectDatabaseMetaData().isInstanceConnectionAvailable();
- catalog = isInstanceConnectionAvailable ? new
StandardJdbcUrlParser().parse(url).getDatabase() : null;
+ boolean isInstanceConnectionAvailable = new
DatabaseTypeRegistry(storageType).getDialectDatabaseMetaData().isInstanceConnectionAvailable();
+ catalog = isInstanceConnectionAvailable ?
DatabaseTypedSPILoader.getService(ConnectionPropertiesParser.class,
storageType).parse(url, username, null).getCatalog() : null;
this.dataSource = isInstanceConnectionAvailable ? new
CatalogSwitchableDataSource(dataSource, catalog, url) : dataSource;
dataSourcePoolProperties = dataSourcePoolProps;
connectionProperties = createConnectionProperties(standardProps);
diff --git
a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/unit/StorageUnitNodeMapCreator.java
b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/unit/StorageUnitNodeMapCreator.java
index 493674467d9..2fbab552e9d 100644
---
a/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/unit/StorageUnitNodeMapCreator.java
+++
b/infra/common/src/main/java/org/apache/shardingsphere/infra/metadata/database/resource/unit/StorageUnitNodeMapCreator.java
@@ -19,9 +19,10 @@ package
org.apache.shardingsphere.infra.metadata.database.resource.unit;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
-import org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrl;
-import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
+import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
+import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
import
org.apache.shardingsphere.infra.database.core.exception.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeRegistry;
import
org.apache.shardingsphere.infra.datasource.pool.props.domain.DataSourcePoolProperties;
@@ -56,8 +57,8 @@ public final class StorageUnitNodeMapCreator {
private static StorageNode create(final String storageUnitName, final
String url, final String username) {
boolean isInstanceConnectionAvailable = new
DatabaseTypeRegistry(DatabaseTypeFactory.get(url)).getDialectDatabaseMetaData().isInstanceConnectionAvailable();
try {
- JdbcUrl jdbcUrl = new StandardJdbcUrlParser().parse(url);
- return isInstanceConnectionAvailable ? new
StorageNode(jdbcUrl.getHostname(), jdbcUrl.getPort(), username) : new
StorageNode(storageUnitName);
+ ConnectionProperties connectionProps =
DatabaseTypedSPILoader.getService(ConnectionPropertiesParser.class,
DatabaseTypeFactory.get(url)).parse(url, username, null);
+ return isInstanceConnectionAvailable ? new
StorageNode(connectionProps.getHostname(), connectionProps.getPort(), username)
: new StorageNode(storageUnitName);
} catch (final UnrecognizedDatabaseURLException ex) {
return new StorageNode(storageUnitName);
}
diff --git
a/infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/ShardingSphereMetaDataTest.java
b/infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/ShardingSphereMetaDataTest.java
index 04add774472..d7861a2392d 100644
---
a/infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/ShardingSphereMetaDataTest.java
+++
b/infra/common/src/test/java/org/apache/shardingsphere/infra/metadata/ShardingSphereMetaDataTest.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.infra.metadata;
+import org.apache.groovy.util.Maps;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import
org.apache.shardingsphere.infra.datasource.pool.props.domain.DataSourcePoolProperties;
@@ -113,7 +114,7 @@ class ShardingSphereMetaDataTest {
when(result.getName()).thenReturn("foo_db");
when(result.getResourceMetaData()).thenReturn(resourceMetaData);
DataSourcePoolProperties dataSourcePoolProps =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/foo_ds"));
+
when(dataSourcePoolProps.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/foo_ds", "username", "test"));
StorageUnit storageUnit = new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps, dataSource);
when(result.getResourceMetaData().getStorageUnits()).thenReturn(Collections.singletonMap("foo_db",
storageUnit));
when(result.getRuleMetaData()).thenReturn(new
RuleMetaData(Collections.singleton(rule)));
diff --git
a/infra/distsql-handler/src/test/java/org/apache/shardingsphere/distsql/handler/executor/rdl/resource/UnregisterStorageUnitExecutorTest.java
b/infra/distsql-handler/src/test/java/org/apache/shardingsphere/distsql/handler/executor/rdl/resource/UnregisterStorageUnitExecutorTest.java
index 0ef4f195647..f27ff0d0b2a 100644
---
a/infra/distsql-handler/src/test/java/org/apache/shardingsphere/distsql/handler/executor/rdl/resource/UnregisterStorageUnitExecutorTest.java
+++
b/infra/distsql-handler/src/test/java/org/apache/shardingsphere/distsql/handler/executor/rdl/resource/UnregisterStorageUnitExecutorTest.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.distsql.handler.executor.rdl.resource;
+import org.apache.groovy.util.Maps;
import
org.apache.shardingsphere.distsql.handler.fixture.DistSQLHandlerFixtureRule;
import
org.apache.shardingsphere.distsql.statement.rdl.resource.unit.type.UnregisterStorageUnitStatement;
import
org.apache.shardingsphere.infra.datasource.pool.props.domain.DataSourcePoolProperties;
@@ -77,7 +78,7 @@ class UnregisterStorageUnitExecutorTest {
private static StorageUnit createStorageUnit() {
DataSourcePoolProperties dataSourcePoolProps =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
when(dataSourcePoolProps.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.emptyMap());
-
when(dataSourcePoolProps.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/foo_db"));
+
when(dataSourcePoolProps.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/foo_db", "username", "test"));
return new StorageUnit(mock(StorageNode.class), dataSourcePoolProps,
new MockedDataSource());
}
diff --git
a/kernel/single/core/src/test/java/org/apache/shardingsphere/single/route/SingleSQLRouterTest.java
b/kernel/single/core/src/test/java/org/apache/shardingsphere/single/route/SingleSQLRouterTest.java
index 7edf80eba3f..65ccd979e61 100644
---
a/kernel/single/core/src/test/java/org/apache/shardingsphere/single/route/SingleSQLRouterTest.java
+++
b/kernel/single/core/src/test/java/org/apache/shardingsphere/single/route/SingleSQLRouterTest.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.single.route;
+import org.apache.groovy.util.Maps;
import
org.apache.shardingsphere.infra.binder.context.statement.ddl.CreateTableStatementContext;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.database.core.DefaultDatabase;
@@ -152,10 +153,10 @@ class SingleSQLRouterTest {
private ShardingSphereDatabase mockDatabaseWithMultipleResources() {
Map<String, StorageUnit> storageUnits = new HashMap<>(2, 1F);
DataSourcePoolProperties dataSourcePoolProps0 =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps0.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/ds_0"));
+
when(dataSourcePoolProps0.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/ds_0", "username", "test"));
storageUnits.put("ds_0", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps0, new MockedDataSource()));
DataSourcePoolProperties dataSourcePoolProps1 =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps1.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/ds_1"));
+
when(dataSourcePoolProps1.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/ds_1", "username", "test"));
storageUnits.put("ds_1", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps1, new MockedDataSource()));
ShardingSphereDatabase result = mock(ShardingSphereDatabase.class,
RETURNS_DEEP_STUBS);
when(result.getResourceMetaData().getStorageUnits()).thenReturn(storageUnits);
diff --git
a/kernel/transaction/core/src/test/java/org/apache/shardingsphere/transaction/rule/TransactionRuleTest.java
b/kernel/transaction/core/src/test/java/org/apache/shardingsphere/transaction/rule/TransactionRuleTest.java
index a606ef9cbd3..6b381345e0b 100644
---
a/kernel/transaction/core/src/test/java/org/apache/shardingsphere/transaction/rule/TransactionRuleTest.java
+++
b/kernel/transaction/core/src/test/java/org/apache/shardingsphere/transaction/rule/TransactionRuleTest.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.transaction.rule;
+import org.apache.groovy.util.Maps;
import
org.apache.shardingsphere.infra.datasource.pool.props.domain.DataSourcePoolProperties;
import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.infra.metadata.database.resource.ResourceMetaData;
@@ -78,10 +79,10 @@ class TransactionRuleTest {
private ResourceMetaData createResourceMetaData() {
Map<String, StorageUnit> storageUnits = new HashMap<>(2, 1F);
DataSourcePoolProperties dataSourcePoolProps0 =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps0.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/ds_0"));
+
when(dataSourcePoolProps0.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/ds_0", "username", "test"));
storageUnits.put("ds_0", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps0, new MockedDataSource()));
DataSourcePoolProperties dataSourcePoolProps1 =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps1.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/ds_1"));
+
when(dataSourcePoolProps1.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/ds_1", "username", "test"));
storageUnits.put("ds_1", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps1, new MockedDataSource()));
ResourceMetaData result = mock(ResourceMetaData.class,
RETURNS_DEEP_STUBS);
when(result.getStorageUnits()).thenReturn(storageUnits);
@@ -99,10 +100,10 @@ class TransactionRuleTest {
private ResourceMetaData createAddResourceMetaData() {
Map<String, StorageUnit> storageUnits = new HashMap<>(2, 1F);
DataSourcePoolProperties dataSourcePoolProps0 =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps0.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/ds_0"));
+
when(dataSourcePoolProps0.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/ds_0", "username", "test"));
storageUnits.put("ds_0", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps0, new MockedDataSource()));
DataSourcePoolProperties dataSourcePoolProps1 =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps1.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/ds_1"));
+
when(dataSourcePoolProps1.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/ds_1", "username", "test"));
storageUnits.put("ds_1", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps1, new MockedDataSource()));
ResourceMetaData result = mock(ResourceMetaData.class,
RETURNS_DEEP_STUBS);
when(result.getStorageUnits()).thenReturn(storageUnits);
diff --git
a/mode/core/src/test/java/org/apache/shardingsphere/mode/manager/ContextManagerTest.java
b/mode/core/src/test/java/org/apache/shardingsphere/mode/manager/ContextManagerTest.java
index d689b9de3bb..cb4e3ba07ea 100644
---
a/mode/core/src/test/java/org/apache/shardingsphere/mode/manager/ContextManagerTest.java
+++
b/mode/core/src/test/java/org/apache/shardingsphere/mode/manager/ContextManagerTest.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.mode.manager;
+import org.apache.groovy.util.Maps;
import org.apache.shardingsphere.infra.config.mode.ModeConfiguration;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
@@ -106,7 +107,7 @@ class ContextManagerTest {
when(storageUnit.getStorageType()).thenReturn(TypedSPILoader.getService(DatabaseType.class,
"FIXTURE"));
when(result.getResourceMetaData().getStorageUnits()).thenReturn(Collections.singletonMap("foo_ds",
storageUnit));
DataSourcePoolProperties dataSourcePoolProps =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/foo_db"));
+
when(dataSourcePoolProps.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/foo_db", "username", "test"));
Map<String, StorageUnit> storageUnits =
Collections.singletonMap("foo_ds", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps, new MockedDataSource()));
when(result.getResourceMetaData().getStorageUnits()).thenReturn(storageUnits);
return result;
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/ImportMetaDataExecutorTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/ImportMetaDataExecutorTest.java
index 2d1218cd81e..290b0e5b184 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/ImportMetaDataExecutorTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/ImportMetaDataExecutorTest.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.proxy.backend.handler.distsql.ral.updatable;
+import org.apache.groovy.util.Maps;
import
org.apache.shardingsphere.distsql.statement.ral.updatable.ImportMetaDataStatement;
import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
@@ -126,10 +127,10 @@ class ImportMetaDataExecutorTest {
private Map<String, StorageUnit> createStorageUnits() {
Map<String, StorageUnit> result = new LinkedHashMap<>(2, 1F);
DataSourcePoolProperties dataSourcePoolProps0 =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps0.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/ds_0"));
+
when(dataSourcePoolProps0.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/ds_0", "username", "test"));
result.put("ds_0", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps0, new MockedDataSource()));
DataSourcePoolProperties dataSourcePoolProps1 =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps1.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/ds_1"));
+
when(dataSourcePoolProps1.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/ds_1", "username", "test"));
result.put("ds_1", new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps1, new MockedDataSource()));
return result;
}
diff --git
a/proxy/bootstrap/src/test/java/org/apache/shardingsphere/proxy/version/ShardingSphereProxyVersionTest.java
b/proxy/bootstrap/src/test/java/org/apache/shardingsphere/proxy/version/ShardingSphereProxyVersionTest.java
index 1c798d2f59a..f2c030c4a34 100644
---
a/proxy/bootstrap/src/test/java/org/apache/shardingsphere/proxy/version/ShardingSphereProxyVersionTest.java
+++
b/proxy/bootstrap/src/test/java/org/apache/shardingsphere/proxy/version/ShardingSphereProxyVersionTest.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.proxy.version;
+import org.apache.groovy.util.Maps;
import
org.apache.shardingsphere.db.protocol.constant.DatabaseProtocolServerInfo;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import
org.apache.shardingsphere.infra.datasource.pool.props.domain.DataSourcePoolProperties;
@@ -84,7 +85,7 @@ class ShardingSphereProxyVersionTest {
ResourceMetaData result = mock(ResourceMetaData.class,
RETURNS_DEEP_STUBS);
DataSource dataSource = createDataSource(databaseProductName,
databaseProductVersion);
DataSourcePoolProperties dataSourcePoolProps =
mock(DataSourcePoolProperties.class, RETURNS_DEEP_STUBS);
-
when(dataSourcePoolProps.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Collections.singletonMap("url",
"jdbc:mock://127.0.0.1/foo_db"));
+
when(dataSourcePoolProps.getConnectionPropertySynonyms().getStandardProperties()).thenReturn(Maps.of("url",
"jdbc:mock://127.0.0.1/foo_db", "username", "test"));
StorageUnit storageUnit = new StorageUnit(mock(StorageNode.class),
dataSourcePoolProps, dataSource);
when(result.getStorageUnits()).thenReturn(Collections.singletonMap("foo_ds",
storageUnit));
return result;
diff --git
a/test/fixture/database/src/main/java/org/apache/shardingsphere/test/fixture/connector/MockedConnectionPropertiesParser.java
b/test/fixture/database/src/main/java/org/apache/shardingsphere/test/fixture/connector/MockedConnectionPropertiesParser.java
index 3f75504dbb4..2c775d2f70b 100644
---
a/test/fixture/database/src/main/java/org/apache/shardingsphere/test/fixture/connector/MockedConnectionPropertiesParser.java
+++
b/test/fixture/database/src/main/java/org/apache/shardingsphere/test/fixture/connector/MockedConnectionPropertiesParser.java
@@ -17,6 +17,7 @@
package org.apache.shardingsphere.test.fixture.connector;
+import com.google.common.base.Strings;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
import
org.apache.shardingsphere.infra.database.core.connector.StandardConnectionProperties;
@@ -31,7 +32,7 @@ public final class MockedConnectionPropertiesParser
implements ConnectionPropert
@Override
public ConnectionProperties parse(final String url, final String username,
final String catalog) {
JdbcUrl jdbcUrl = new StandardJdbcUrlParser().parse(url);
- return new StandardConnectionProperties(jdbcUrl.getHostname(),
jdbcUrl.getPort(), catalog, jdbcUrl.getDatabase());
+ return new StandardConnectionProperties(jdbcUrl.getHostname(),
jdbcUrl.getPort(), Strings.isNullOrEmpty(catalog) ? jdbcUrl.getDatabase() :
catalog, jdbcUrl.getDatabase());
}
@Override
diff --git
a/test/it/optimizer/src/test/java/org/apache/shardingsphere/test/it/optimizer/converter/SQLNodeConverterEngineIT.java
b/test/it/optimizer/src/test/java/org/apache/shardingsphere/test/it/optimizer/converter/SQLNodeConverterEngineIT.java
index ade618215bd..436beb505d3 100644
---
a/test/it/optimizer/src/test/java/org/apache/shardingsphere/test/it/optimizer/converter/SQLNodeConverterEngineIT.java
+++
b/test/it/optimizer/src/test/java/org/apache/shardingsphere/test/it/optimizer/converter/SQLNodeConverterEngineIT.java
@@ -17,7 +17,6 @@
package org.apache.shardingsphere.test.it.optimizer.converter;
-import lombok.extern.slf4j.Slf4j;
import org.apache.shardingsphere.sql.parser.api.CacheOption;
import org.apache.shardingsphere.sql.parser.api.SQLParserEngine;
import org.apache.shardingsphere.sql.parser.api.SQLStatementVisitorEngine;
@@ -47,7 +46,6 @@ import java.util.stream.Stream;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
-@Slf4j
class SQLNodeConverterEngineIT {
private static final SQLCases SQL_CASES =
SQLCasesRegistry.getInstance().getCases();
@@ -74,8 +72,7 @@ class SQLNodeConverterEngineIT {
String expected;
try {
expected = SQL_NODE_CONVERTER_TEST_CASES.get(sqlCaseId,
sqlCaseType, databaseType).getExpectedSQL();
- } catch (final IllegalStateException ex) {
- log.warn(ex.getMessage());
+ } catch (final IllegalStateException ignore) {
return;
}
String sql = SQL_CASES.getSQL(sqlCaseId, sqlCaseType,
SQL_PARSER_TEST_CASES.get(sqlCaseId).getParameters());