This is an automated email from the ASF dual-hosted git repository.
zhangliang 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 f991b9f74d7 Merge DatabaseProtocolDefaultVersionProvider and
DialectProtocolVersionOption (#37043)
f991b9f74d7 is described below
commit f991b9f74d73e9fac440e1a1111b920296bc43db
Author: Liang Zhang <[email protected]>
AuthorDate: Sat Nov 8 20:59:46 2025 +0800
Merge DatabaseProtocolDefaultVersionProvider and
DialectProtocolVersionOption (#37043)
---
.../database/metadata/DialectDatabaseMetaData.java | 10 ++++++
.../version/DialectProtocolVersionOption.java} | 22 ++++++-------
.../database/FirebirdDatabaseMetaData.java | 6 ++++
.../metadata/database/MySQLDatabaseMetaData.java | 6 ++++
.../database/OpenGaussDatabaseMetaData.java | 6 ++++
.../database/PostgreSQLDatabaseMetaData.java | 6 ++++
.../DatabaseProtocolDefaultVersionProvider.java | 35 ---------------------
.../constant/DatabaseProtocolServerInfo.java | 6 ++--
...constant.DatabaseProtocolDefaultVersionProvider | 18 -----------
.../FirebirdProtocolDefaultVersionProvider.java | 36 ----------------------
...constant.DatabaseProtocolDefaultVersionProvider | 18 -----------
...FirebirdProtocolDefaultVersionProviderTest.java | 33 --------------------
.../MySQLProtocolDefaultVersionProvider.java | 36 ----------------------
...constant.DatabaseProtocolDefaultVersionProvider | 18 -----------
.../OpenGaussProtocolDefaultVersionProvider.java | 36 ----------------------
...constant.DatabaseProtocolDefaultVersionProvider | 18 -----------
.../PostgreSQLProtocolDefaultVersionProvider.java | 36 ----------------------
...constant.DatabaseProtocolDefaultVersionProvider | 18 -----------
.../database/DialectDatabaseMetaDataFixture.java | 6 ++++
19 files changed, 54 insertions(+), 316 deletions(-)
diff --git
a/database/connector/core/src/main/java/org/apache/shardingsphere/database/connector/core/metadata/database/metadata/DialectDatabaseMetaData.java
b/database/connector/core/src/main/java/org/apache/shardingsphere/database/connector/core/metadata/database/metadata/DialectDatabaseMetaData.java
index 05e538977b2..c1007018f12 100644
---
a/database/connector/core/src/main/java/org/apache/shardingsphere/database/connector/core/metadata/database/metadata/DialectDatabaseMetaData.java
+++
b/database/connector/core/src/main/java/org/apache/shardingsphere/database/connector/core/metadata/database/metadata/DialectDatabaseMetaData.java
@@ -34,6 +34,7 @@ import
org.apache.shardingsphere.database.connector.core.metadata.database.metad
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.sqlbatch.DialectSQLBatchOption;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.table.DialectDriverQuerySystemCatalogOption;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.transaction.DialectTransactionOption;
+import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.version.DialectProtocolVersionOption;
import org.apache.shardingsphere.database.connector.core.spi.DatabaseTypedSPI;
import org.apache.shardingsphere.infra.spi.annotation.SingletonSPI;
@@ -175,4 +176,13 @@ public interface DialectDatabaseMetaData extends
DatabaseTypedSPI {
default DialectSQLBatchOption getSQLBatchOption() {
return new DialectSQLBatchOption(true);
}
+
+ /**
+ * Get protocol version option.
+ *
+ * @return protocol version option
+ */
+ default DialectProtocolVersionOption getProtocolVersionOption() {
+ return new DialectProtocolVersionOption("");
+ }
}
diff --git
a/database/protocol/core/src/test/java/org/apache/shardingsphere/database/protocol/constant/fixture/FixtureDatabaseProtocolDefaultVersionProvider.java
b/database/connector/core/src/main/java/org/apache/shardingsphere/database/connector/core/metadata/database/metadata/option/version/DialectProtocolVersionOption.java
similarity index 64%
rename from
database/protocol/core/src/test/java/org/apache/shardingsphere/database/protocol/constant/fixture/FixtureDatabaseProtocolDefaultVersionProvider.java
rename to
database/connector/core/src/main/java/org/apache/shardingsphere/database/connector/core/metadata/database/metadata/option/version/DialectProtocolVersionOption.java
index a93f2cbf4e8..cd5acc0c0b6 100644
---
a/database/protocol/core/src/test/java/org/apache/shardingsphere/database/protocol/constant/fixture/FixtureDatabaseProtocolDefaultVersionProvider.java
+++
b/database/connector/core/src/main/java/org/apache/shardingsphere/database/connector/core/metadata/database/metadata/option/version/DialectProtocolVersionOption.java
@@ -15,19 +15,17 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.database.protocol.constant.fixture;
+package
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.version;
-import
org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider;
+import lombok.Getter;
+import lombok.RequiredArgsConstructor;
-public final class FixtureDatabaseProtocolDefaultVersionProvider implements
DatabaseProtocolDefaultVersionProvider {
-
- @Override
- public String provide() {
- return "1.0";
- }
+/**
+ * Dialect protocol version option.
+ */
+@RequiredArgsConstructor
+@Getter
+public final class DialectProtocolVersionOption {
- @Override
- public String getDatabaseType() {
- return "FIXTURE";
- }
+ private final String defaultVersion;
}
diff --git
a/database/connector/dialect/firebird/src/main/java/org/apache/shardingsphere/database/connector/firebird/metadata/database/FirebirdDatabaseMetaData.java
b/database/connector/dialect/firebird/src/main/java/org/apache/shardingsphere/database/connector/firebird/metadata/database/FirebirdDatabaseMetaData.java
index 463ecd8ead5..52f9ec3864f 100644
---
a/database/connector/dialect/firebird/src/main/java/org/apache/shardingsphere/database/connector/firebird/metadata/database/FirebirdDatabaseMetaData.java
+++
b/database/connector/dialect/firebird/src/main/java/org/apache/shardingsphere/database/connector/firebird/metadata/database/FirebirdDatabaseMetaData.java
@@ -23,6 +23,7 @@ import
org.apache.shardingsphere.database.connector.core.metadata.database.metad
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.IdentifierPatternType;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.schema.DialectSchemaOption;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.transaction.DialectTransactionOption;
+import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.version.DialectProtocolVersionOption;
import
org.apache.shardingsphere.database.connector.firebird.metadata.database.option.FirebirdSchemaOption;
import java.sql.Connection;
@@ -57,6 +58,11 @@ public final class FirebirdDatabaseMetaData implements
DialectDatabaseMetaData {
return new DialectTransactionOption(false, true, false, false, true,
Connection.TRANSACTION_READ_COMMITTED, false, true);
}
+ @Override
+ public DialectProtocolVersionOption getProtocolVersionOption() {
+ return new DialectProtocolVersionOption("18");
+ }
+
@Override
public String getDatabaseType() {
return "Firebird";
diff --git
a/database/connector/dialect/mysql/src/main/java/org/apache/shardingsphere/database/connector/mysql/metadata/database/MySQLDatabaseMetaData.java
b/database/connector/dialect/mysql/src/main/java/org/apache/shardingsphere/database/connector/mysql/metadata/database/MySQLDatabaseMetaData.java
index 8e3ad7e9194..602dc0c6303 100644
---
a/database/connector/dialect/mysql/src/main/java/org/apache/shardingsphere/database/connector/mysql/metadata/database/MySQLDatabaseMetaData.java
+++
b/database/connector/dialect/mysql/src/main/java/org/apache/shardingsphere/database/connector/mysql/metadata/database/MySQLDatabaseMetaData.java
@@ -27,6 +27,7 @@ import
org.apache.shardingsphere.database.connector.core.metadata.database.metad
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.join.DialectJoinOption;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.keygen.DialectGeneratedKeyOption;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.transaction.DialectTransactionOption;
+import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.version.DialectProtocolVersionOption;
import
org.apache.shardingsphere.database.connector.mysql.metadata.database.option.MySQLDataTypeOption;
import java.sql.Connection;
@@ -81,6 +82,11 @@ public final class MySQLDatabaseMetaData implements
DialectDatabaseMetaData {
return new DialectGeneratedKeyOption(true);
}
+ @Override
+ public DialectProtocolVersionOption getProtocolVersionOption() {
+ return new DialectProtocolVersionOption("5.7.22");
+ }
+
@Override
public String getDatabaseType() {
return "MySQL";
diff --git
a/database/connector/dialect/opengauss/src/main/java/org/apache/shardingsphere/database/connector/opengauss/metadata/database/OpenGaussDatabaseMetaData.java
b/database/connector/dialect/opengauss/src/main/java/org/apache/shardingsphere/database/connector/opengauss/metadata/database/OpenGaussDatabaseMetaData.java
index 37a04f8449f..ca13b4b31ed 100644
---
a/database/connector/dialect/opengauss/src/main/java/org/apache/shardingsphere/database/connector/opengauss/metadata/database/OpenGaussDatabaseMetaData.java
+++
b/database/connector/dialect/opengauss/src/main/java/org/apache/shardingsphere/database/connector/opengauss/metadata/database/OpenGaussDatabaseMetaData.java
@@ -26,6 +26,7 @@ import
org.apache.shardingsphere.database.connector.core.metadata.database.metad
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.schema.DialectSchemaOption;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.table.DialectDriverQuerySystemCatalogOption;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.transaction.DialectTransactionOption;
+import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.version.DialectProtocolVersionOption;
import
org.apache.shardingsphere.database.connector.opengauss.metadata.database.option.OpenGaussDataTypeOption;
import
org.apache.shardingsphere.database.connector.opengauss.metadata.database.option.OpenGaussDriverQuerySystemCatalogOption;
import
org.apache.shardingsphere.database.connector.opengauss.metadata.database.option.OpenGaussSchemaOption;
@@ -78,6 +79,11 @@ public final class OpenGaussDatabaseMetaData implements
DialectDatabaseMetaData
return new DialectTransactionOption(true, false, false, true, false,
Connection.TRANSACTION_READ_COMMITTED, true, true);
}
+ @Override
+ public DialectProtocolVersionOption getProtocolVersionOption() {
+ return new DialectProtocolVersionOption("9.2.4");
+ }
+
@Override
public String getDatabaseType() {
return "openGauss";
diff --git
a/database/connector/dialect/postgresql/src/main/java/org/apache/shardingsphere/database/connector/postgresql/metadata/database/PostgreSQLDatabaseMetaData.java
b/database/connector/dialect/postgresql/src/main/java/org/apache/shardingsphere/database/connector/postgresql/metadata/database/PostgreSQLDatabaseMetaData.java
index 0ea515ffe4a..6397aaa380d 100644
---
a/database/connector/dialect/postgresql/src/main/java/org/apache/shardingsphere/database/connector/postgresql/metadata/database/PostgreSQLDatabaseMetaData.java
+++
b/database/connector/dialect/postgresql/src/main/java/org/apache/shardingsphere/database/connector/postgresql/metadata/database/PostgreSQLDatabaseMetaData.java
@@ -25,6 +25,7 @@ import
org.apache.shardingsphere.database.connector.core.metadata.database.metad
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.index.DialectIndexOption;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.schema.DialectSchemaOption;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.transaction.DialectTransactionOption;
+import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.version.DialectProtocolVersionOption;
import
org.apache.shardingsphere.database.connector.postgresql.metadata.database.option.PostgreSQLDataTypeOption;
import
org.apache.shardingsphere.database.connector.postgresql.metadata.database.option.PostgreSQLSchemaOption;
@@ -70,6 +71,11 @@ public final class PostgreSQLDatabaseMetaData implements
DialectDatabaseMetaData
return new DialectTransactionOption(false, false, false, true, false,
Connection.TRANSACTION_READ_COMMITTED, true, true);
}
+ @Override
+ public DialectProtocolVersionOption getProtocolVersionOption() {
+ return new DialectProtocolVersionOption("12.3");
+ }
+
@Override
public String getDatabaseType() {
return "PostgreSQL";
diff --git
a/database/protocol/core/src/main/java/org/apache/shardingsphere/database/protocol/constant/DatabaseProtocolDefaultVersionProvider.java
b/database/protocol/core/src/main/java/org/apache/shardingsphere/database/protocol/constant/DatabaseProtocolDefaultVersionProvider.java
deleted file mode 100644
index 6ee1e6e3ca6..00000000000
---
a/database/protocol/core/src/main/java/org/apache/shardingsphere/database/protocol/constant/DatabaseProtocolDefaultVersionProvider.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.database.protocol.constant;
-
-import org.apache.shardingsphere.database.connector.core.spi.DatabaseTypedSPI;
-import org.apache.shardingsphere.infra.spi.annotation.SingletonSPI;
-
-/**
- * Database protocol default version provider.
- */
-@SingletonSPI
-public interface DatabaseProtocolDefaultVersionProvider extends
DatabaseTypedSPI {
-
- /**
- * Provide default database version.
- *
- * @return default database version
- */
- String provide();
-}
diff --git
a/database/protocol/core/src/main/java/org/apache/shardingsphere/database/protocol/constant/DatabaseProtocolServerInfo.java
b/database/protocol/core/src/main/java/org/apache/shardingsphere/database/protocol/constant/DatabaseProtocolServerInfo.java
index 00050b23edc..016cf1a8a92 100644
---
a/database/protocol/core/src/main/java/org/apache/shardingsphere/database/protocol/constant/DatabaseProtocolServerInfo.java
+++
b/database/protocol/core/src/main/java/org/apache/shardingsphere/database/protocol/constant/DatabaseProtocolServerInfo.java
@@ -19,8 +19,9 @@ package org.apache.shardingsphere.database.protocol.constant;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
-import
org.apache.shardingsphere.database.connector.core.spi.DatabaseTypedSPILoader;
+import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.version.DialectProtocolVersionOption;
import org.apache.shardingsphere.database.connector.core.type.DatabaseType;
+import
org.apache.shardingsphere.database.connector.core.type.DatabaseTypeRegistry;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@@ -63,6 +64,7 @@ public final class DatabaseProtocolServerInfo {
* @return default protocol version
*/
public static String getDefaultProtocolVersion(final DatabaseType
databaseType) {
- return String.format(SERVER_INFORMATION_PATTERN,
DatabaseTypedSPILoader.getService(DatabaseProtocolDefaultVersionProvider.class,
databaseType).provide(), CommonConstants.PROXY_VERSION.get());
+ DialectProtocolVersionOption protocolVersionOption = new
DatabaseTypeRegistry(databaseType).getDialectDatabaseMetaData().getProtocolVersionOption();
+ return String.format(SERVER_INFORMATION_PATTERN,
protocolVersionOption.getDefaultVersion(), CommonConstants.PROXY_VERSION.get());
}
}
diff --git
a/database/protocol/core/src/test/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
b/database/protocol/core/src/test/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
deleted file mode 100644
index 679c66fddbc..00000000000
---
a/database/protocol/core/src/test/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-org.apache.shardingsphere.database.protocol.constant.fixture.FixtureDatabaseProtocolDefaultVersionProvider
diff --git
a/database/protocol/dialect/firebird/src/main/java/org/apache/shardingsphere/database/protocol/firebird/constant/FirebirdProtocolDefaultVersionProvider.java
b/database/protocol/dialect/firebird/src/main/java/org/apache/shardingsphere/database/protocol/firebird/constant/FirebirdProtocolDefaultVersionProvider.java
deleted file mode 100644
index 7d6bfa3b77a..00000000000
---
a/database/protocol/dialect/firebird/src/main/java/org/apache/shardingsphere/database/protocol/firebird/constant/FirebirdProtocolDefaultVersionProvider.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.database.protocol.firebird.constant;
-
-import
org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider;
-
-/**
- * Default protocol version provider for Firebird.
- */
-public final class FirebirdProtocolDefaultVersionProvider implements
DatabaseProtocolDefaultVersionProvider {
-
- @Override
- public String provide() {
- return "18";
- }
-
- @Override
- public String getDatabaseType() {
- return "Firebird";
- }
-}
diff --git
a/database/protocol/dialect/firebird/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
b/database/protocol/dialect/firebird/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
deleted file mode 100644
index ac264605bc2..00000000000
---
a/database/protocol/dialect/firebird/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-org.apache.shardingsphere.database.protocol.firebird.constant.FirebirdProtocolDefaultVersionProvider
diff --git
a/database/protocol/dialect/firebird/src/test/java/org/apache/shardingsphere/database/protocol/firebird/constant/FirebirdProtocolDefaultVersionProviderTest.java
b/database/protocol/dialect/firebird/src/test/java/org/apache/shardingsphere/database/protocol/firebird/constant/FirebirdProtocolDefaultVersionProviderTest.java
deleted file mode 100644
index 4338f85e383..00000000000
---
a/database/protocol/dialect/firebird/src/test/java/org/apache/shardingsphere/database/protocol/firebird/constant/FirebirdProtocolDefaultVersionProviderTest.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.database.protocol.firebird.constant;
-
-import org.junit.jupiter.api.Test;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.MatcherAssert.assertThat;
-
-class FirebirdProtocolDefaultVersionProviderTest {
-
- private final FirebirdProtocolDefaultVersionProvider provider = new
FirebirdProtocolDefaultVersionProvider();
-
- @Test
- void assertGetDatabaseType() {
- assertThat(provider.getDatabaseType(), is("Firebird"));
- }
-}
diff --git
a/database/protocol/dialect/mysql/src/main/java/org/apache/shardingsphere/database/protocol/mysql/constant/MySQLProtocolDefaultVersionProvider.java
b/database/protocol/dialect/mysql/src/main/java/org/apache/shardingsphere/database/protocol/mysql/constant/MySQLProtocolDefaultVersionProvider.java
deleted file mode 100644
index 40fd6e1ff56..00000000000
---
a/database/protocol/dialect/mysql/src/main/java/org/apache/shardingsphere/database/protocol/mysql/constant/MySQLProtocolDefaultVersionProvider.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.database.protocol.mysql.constant;
-
-import
org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider;
-
-/**
- * Default protocol version provider for MySQL.
- */
-public final class MySQLProtocolDefaultVersionProvider implements
DatabaseProtocolDefaultVersionProvider {
-
- @Override
- public String provide() {
- return "5.7.22";
- }
-
- @Override
- public String getDatabaseType() {
- return "MySQL";
- }
-}
diff --git
a/database/protocol/dialect/mysql/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
b/database/protocol/dialect/mysql/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
deleted file mode 100644
index 67be3b1df35..00000000000
---
a/database/protocol/dialect/mysql/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-org.apache.shardingsphere.database.protocol.mysql.constant.MySQLProtocolDefaultVersionProvider
diff --git
a/database/protocol/dialect/opengauss/src/main/java/org/apache/shardingsphere/database/protocol/opengauss/constant/OpenGaussProtocolDefaultVersionProvider.java
b/database/protocol/dialect/opengauss/src/main/java/org/apache/shardingsphere/database/protocol/opengauss/constant/OpenGaussProtocolDefaultVersionProvider.java
deleted file mode 100644
index 5309ab1ca8f..00000000000
---
a/database/protocol/dialect/opengauss/src/main/java/org/apache/shardingsphere/database/protocol/opengauss/constant/OpenGaussProtocolDefaultVersionProvider.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.database.protocol.opengauss.constant;
-
-import
org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider;
-
-/**
- * Default protocol version provider for openGauss.
- */
-public final class OpenGaussProtocolDefaultVersionProvider implements
DatabaseProtocolDefaultVersionProvider {
-
- @Override
- public String provide() {
- return "9.2.4";
- }
-
- @Override
- public String getDatabaseType() {
- return "openGauss";
- }
-}
diff --git
a/database/protocol/dialect/opengauss/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
b/database/protocol/dialect/opengauss/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
deleted file mode 100644
index 183c63148dd..00000000000
---
a/database/protocol/dialect/opengauss/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-org.apache.shardingsphere.database.protocol.opengauss.constant.OpenGaussProtocolDefaultVersionProvider
diff --git
a/database/protocol/dialect/postgresql/src/main/java/org/apache/shardingsphere/database/protocol/postgresql/constant/PostgreSQLProtocolDefaultVersionProvider.java
b/database/protocol/dialect/postgresql/src/main/java/org/apache/shardingsphere/database/protocol/postgresql/constant/PostgreSQLProtocolDefaultVersionProvider.java
deleted file mode 100644
index 4ddf5cd97ff..00000000000
---
a/database/protocol/dialect/postgresql/src/main/java/org/apache/shardingsphere/database/protocol/postgresql/constant/PostgreSQLProtocolDefaultVersionProvider.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.database.protocol.postgresql.constant;
-
-import
org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider;
-
-/**
- * Default protocol version provider for PostgreSQL.
- */
-public final class PostgreSQLProtocolDefaultVersionProvider implements
DatabaseProtocolDefaultVersionProvider {
-
- @Override
- public String provide() {
- return "12.3";
- }
-
- @Override
- public String getDatabaseType() {
- return "PostgreSQL";
- }
-}
diff --git
a/database/protocol/dialect/postgresql/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
b/database/protocol/dialect/postgresql/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
deleted file mode 100644
index 8c805fd241f..00000000000
---
a/database/protocol/dialect/postgresql/src/main/resources/META-INF/services/org.apache.shardingsphere.database.protocol.constant.DatabaseProtocolDefaultVersionProvider
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-org.apache.shardingsphere.database.protocol.postgresql.constant.PostgreSQLProtocolDefaultVersionProvider
diff --git
a/test/infra/fixture/database/src/main/java/org/apache/shardingsphere/test/infra/fixture/database/DialectDatabaseMetaDataFixture.java
b/test/infra/fixture/database/src/main/java/org/apache/shardingsphere/test/infra/fixture/database/DialectDatabaseMetaDataFixture.java
index 91ae1a29f9c..183490dbf06 100644
---
a/test/infra/fixture/database/src/main/java/org/apache/shardingsphere/test/infra/fixture/database/DialectDatabaseMetaDataFixture.java
+++
b/test/infra/fixture/database/src/main/java/org/apache/shardingsphere/test/infra/fixture/database/DialectDatabaseMetaDataFixture.java
@@ -21,6 +21,7 @@ import
org.apache.shardingsphere.database.connector.core.metadata.database.enums
import
org.apache.shardingsphere.database.connector.core.metadata.database.enums.QuoteCharacter;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.DialectDatabaseMetaData;
import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.IdentifierPatternType;
+import
org.apache.shardingsphere.database.connector.core.metadata.database.metadata.option.version.DialectProtocolVersionOption;
public final class DialectDatabaseMetaDataFixture implements
DialectDatabaseMetaData {
@@ -39,6 +40,11 @@ public final class DialectDatabaseMetaDataFixture implements
DialectDatabaseMeta
return NullsOrderType.LOW;
}
+ @Override
+ public DialectProtocolVersionOption getProtocolVersionOption() {
+ return new DialectProtocolVersionOption("1.0");
+ }
+
@Override
public String getDatabaseType() {
return "FIXTURE";