This is an automated email from the ASF dual-hosted git repository.
zhonghongsheng 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 8141b2ec2d8 Extract ProxyDatabaseTypeUtils.isOracleBranch for pipeline
E2E (#37674)
8141b2ec2d8 is described below
commit 8141b2ec2d8dd59c93546ca0986f044a60db9d8d
Author: Hongsheng Zhong <[email protected]>
AuthorDate: Wed Jan 7 19:23:09 2026 +0800
Extract ProxyDatabaseTypeUtils.isOracleBranch for pipeline E2E (#37674)
---
.../operation/pipeline/cases/PipelineContainerComposer.java | 6 +++---
.../e2e/operation/pipeline/util/ProxyDatabaseTypeUtils.java | 11 +++++++++++
2 files changed, 14 insertions(+), 3 deletions(-)
diff --git
a/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/operation/pipeline/cases/PipelineContainerComposer.java
b/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/operation/pipeline/cases/PipelineContainerComposer.java
index 2f4d7cc278f..9194cb29e0b 100644
---
a/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/operation/pipeline/cases/PipelineContainerComposer.java
+++
b/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/operation/pipeline/cases/PipelineContainerComposer.java
@@ -33,7 +33,6 @@ import
org.apache.shardingsphere.database.connector.core.type.DatabaseType;
import
org.apache.shardingsphere.database.connector.core.type.DatabaseTypeRegistry;
import
org.apache.shardingsphere.database.connector.mysql.type.MySQLDatabaseType;
import
org.apache.shardingsphere.database.connector.opengauss.type.OpenGaussDatabaseType;
-import
org.apache.shardingsphere.database.connector.oracle.type.OracleDatabaseType;
import
org.apache.shardingsphere.database.connector.postgresql.type.PostgreSQLDatabaseType;
import org.apache.shardingsphere.infra.exception.ShardingSpherePreconditions;
import org.apache.shardingsphere.infra.util.props.PropertiesBuilder;
@@ -53,6 +52,7 @@ import
org.apache.shardingsphere.test.e2e.operation.pipeline.framework.container
import
org.apache.shardingsphere.test.e2e.operation.pipeline.framework.container.compose.docker.PipelineDockerContainerComposer;
import
org.apache.shardingsphere.test.e2e.operation.pipeline.framework.container.compose.natived.PipelineNativeContainerComposer;
import
org.apache.shardingsphere.test.e2e.operation.pipeline.framework.param.PipelineTestParameter;
+import
org.apache.shardingsphere.test.e2e.operation.pipeline.util.ProxyDatabaseTypeUtils;
import org.awaitility.Awaitility;
import javax.sql.DataSource;
@@ -249,7 +249,7 @@ public final class PipelineContainerComposer implements
AutoCloseable {
* @throws SQLException SQL exception
*/
public void registerStorageUnit(final String storageUnitName) throws
SQLException {
- String username = databaseType instanceof OracleDatabaseType ?
storageUnitName : getUsername();
+ String username = ProxyDatabaseTypeUtils.isOracleBranch(databaseType)
? storageUnitName : getUsername();
String registerStorageUnitTemplate = "REGISTER STORAGE UNIT ${ds} (
URL='${url}', USER='${user}', PASSWORD='${password}')".replace("${ds}",
storageUnitName)
.replace("${user}", username)
.replace("${password}", getPassword())
@@ -304,7 +304,7 @@ public final class PipelineContainerComposer implements
AutoCloseable {
* @return actual JDBC URL template
*/
public String getActualJdbcUrlTemplate(final String databaseName, final
boolean isInContainer) {
- if (databaseType instanceof OracleDatabaseType) {
+ if (ProxyDatabaseTypeUtils.isOracleBranch(databaseType)) {
return getActualJdbcUrlTemplate(databaseName, isInContainer, 0);
}
return appendExtraParameter(getActualJdbcUrlTemplate(databaseName,
isInContainer, 0));
diff --git
a/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/operation/pipeline/util/ProxyDatabaseTypeUtils.java
b/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/operation/pipeline/util/ProxyDatabaseTypeUtils.java
index 7bee1b13d25..c349543e685 100644
---
a/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/operation/pipeline/util/ProxyDatabaseTypeUtils.java
+++
b/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/operation/pipeline/util/ProxyDatabaseTypeUtils.java
@@ -20,6 +20,7 @@ package
org.apache.shardingsphere.test.e2e.operation.pipeline.util;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.apache.shardingsphere.database.connector.core.type.DatabaseType;
+import
org.apache.shardingsphere.database.connector.oracle.type.OracleDatabaseType;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import java.util.Collection;
@@ -46,4 +47,14 @@ public final class ProxyDatabaseTypeUtils {
private static Collection<String> getUnsupportedProxyDatabaseTypes() {
return Collections.singleton("Oracle");
}
+
+ /**
+ * Is oracle branch database type.
+ *
+ * @param databaseType database type
+ * @return true if is oracle branch database type, else false
+ */
+ public static boolean isOracleBranch(final DatabaseType databaseType) {
+ return databaseType.getTrunkDatabaseType().orElse(databaseType)
instanceof OracleDatabaseType;
+ }
}