This is an automated email from the ASF dual-hosted git repository.

panjuan 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 ddd99fd3c39 Add UnknownSQLStatementContext and make 
CommonSQLStatementContext as abstract (#25675)
ddd99fd3c39 is described below

commit ddd99fd3c39f4d46f388d34170b382d0a5792c91
Author: Liang Zhang <[email protected]>
AuthorDate: Mon May 15 16:04:55 2023 +0800

    Add UnknownSQLStatementContext and make CommonSQLStatementContext as 
abstract (#25675)
    
    * Fix sonar issue of PacketCodec
    
    * Add UnknownSQLStatementContext and make CommonSQLStatementContext as 
abstract
---
 .../core/advice/SQLRouteCountAdviceTest.java       | 14 +++++-----
 .../db/protocol/codec/PacketCodec.java             |  2 ++
 .../merge/ShardingResultMergerEngineTest.java      |  6 ++--
 .../ShardingAlterViewStatementValidatorTest.java   | 10 +++----
 ...ardingCreateFunctionStatementValidatorTest.java | 10 +++----
 ...rdingCreateProcedureStatementValidatorTest.java | 10 +++----
 .../ShardingDropTableStatementValidatorTest.java   |  4 +--
 .../infra/binder/SQLStatementContextFactory.java   | 10 +++----
 .../statement/CommonSQLStatementContext.java       |  2 +-
 .../statement/UnknownSQLStatementContext.java      | 32 ++++++++++++++++++++++
 .../ddl/SingleDropSchemaMetaDataValidatorTest.java |  4 +--
 .../admin/PostgreSQLAdminExecutorCreatorTest.java  | 10 +++----
 .../execute/MySQLComStmtExecuteExecutorTest.java   |  6 ++--
 .../command/query/extended/PortalTest.java         | 12 ++++----
 .../bind/PostgreSQLComBindExecutorTest.java        |  4 +--
 15 files changed, 85 insertions(+), 51 deletions(-)

diff --git 
a/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/advice/SQLRouteCountAdviceTest.java
 
b/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/advice/SQLRouteCountAdviceTest.java
index 7ba2bd2d160..8df5936c1e5 100644
--- 
a/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/advice/SQLRouteCountAdviceTest.java
+++ 
b/agent/plugins/metrics/core/src/test/java/org/apache/shardingsphere/agent/plugin/metrics/core/advice/SQLRouteCountAdviceTest.java
@@ -20,11 +20,11 @@ package 
org.apache.shardingsphere.agent.plugin.metrics.core.advice;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.collector.MetricsCollectorRegistry;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.config.MetricCollectorType;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.config.MetricConfiguration;
-import 
org.apache.shardingsphere.agent.plugin.metrics.core.fixture.collector.MetricsCollectorFixture;
 import 
org.apache.shardingsphere.agent.plugin.metrics.core.fixture.TargetAdviceObjectFixture;
-import org.apache.shardingsphere.infra.session.query.QueryContext;
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
+import 
org.apache.shardingsphere.agent.plugin.metrics.core.fixture.collector.MetricsCollectorFixture;
+import 
org.apache.shardingsphere.infra.binder.statement.UnknownSQLStatementContext;
 import org.apache.shardingsphere.infra.session.connection.ConnectionContext;
+import org.apache.shardingsphere.infra.session.query.QueryContext;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dml.MySQLDeleteStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dml.MySQLInsertStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dml.MySQLSelectStatement;
@@ -52,25 +52,25 @@ class SQLRouteCountAdviceTest {
     
     @Test
     void assertInsertRoute() {
-        QueryContext queryContext = new QueryContext(new 
CommonSQLStatementContext<>(new MySQLInsertStatement()), "", 
Collections.emptyList());
+        QueryContext queryContext = new QueryContext(new 
UnknownSQLStatementContext<>(new MySQLInsertStatement()), "", 
Collections.emptyList());
         assertRoute(queryContext, "INSERT=1");
     }
     
     @Test
     void assertUpdateRoute() {
-        QueryContext queryContext = new QueryContext(new 
CommonSQLStatementContext<>(new MySQLUpdateStatement()), "", 
Collections.emptyList());
+        QueryContext queryContext = new QueryContext(new 
UnknownSQLStatementContext<>(new MySQLUpdateStatement()), "", 
Collections.emptyList());
         assertRoute(queryContext, "UPDATE=1");
     }
     
     @Test
     void assertDeleteRoute() {
-        QueryContext queryContext = new QueryContext(new 
CommonSQLStatementContext<>(new MySQLDeleteStatement()), "", 
Collections.emptyList());
+        QueryContext queryContext = new QueryContext(new 
UnknownSQLStatementContext<>(new MySQLDeleteStatement()), "", 
Collections.emptyList());
         assertRoute(queryContext, "DELETE=1");
     }
     
     @Test
     void assertSelectRoute() {
-        QueryContext queryContext = new QueryContext(new 
CommonSQLStatementContext<>(new MySQLSelectStatement()), "", 
Collections.emptyList());
+        QueryContext queryContext = new QueryContext(new 
UnknownSQLStatementContext<>(new MySQLSelectStatement()), "", 
Collections.emptyList());
         assertRoute(queryContext, "SELECT=1");
     }
     
diff --git 
a/db-protocol/core/src/main/java/org/apache/shardingsphere/db/protocol/codec/PacketCodec.java
 
b/db-protocol/core/src/main/java/org/apache/shardingsphere/db/protocol/codec/PacketCodec.java
index 0a3e356f89f..df31b27a178 100644
--- 
a/db-protocol/core/src/main/java/org/apache/shardingsphere/db/protocol/codec/PacketCodec.java
+++ 
b/db-protocol/core/src/main/java/org/apache/shardingsphere/db/protocol/codec/PacketCodec.java
@@ -34,8 +34,10 @@ import java.util.List;
 @Slf4j
 public final class PacketCodec extends ByteToMessageCodec<DatabasePacket<?>> {
     
+    @SuppressWarnings("rawtypes")
     private final DatabasePacketCodecEngine databasePacketCodecEngine;
     
+    @SuppressWarnings("unchecked")
     @Override
     protected void decode(final ChannelHandlerContext context, final ByteBuf 
in, final List<Object> out) {
         int readableBytes = in.readableBytes();
diff --git 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/merge/ShardingResultMergerEngineTest.java
 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/merge/ShardingResultMergerEngineTest.java
index 1605fe68187..1be199c2dfb 100644
--- 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/merge/ShardingResultMergerEngineTest.java
+++ 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/merge/ShardingResultMergerEngineTest.java
@@ -17,7 +17,7 @@
 
 package org.apache.shardingsphere.sharding.merge;
 
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
+import 
org.apache.shardingsphere.infra.binder.statement.UnknownSQLStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dml.InsertStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementContext;
 import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
@@ -104,7 +104,7 @@ class ShardingResultMergerEngineTest {
     @Test
     void assertNewInstanceWithDALStatement() {
         ConfigurationProperties props = new ConfigurationProperties(new 
Properties());
-        CommonSQLStatementContext<PostgreSQLShowStatement> sqlStatementContext 
= new CommonSQLStatementContext<>(new PostgreSQLShowStatement(""));
+        UnknownSQLStatementContext<PostgreSQLShowStatement> 
sqlStatementContext = new UnknownSQLStatementContext<>(new 
PostgreSQLShowStatement(""));
         assertThat(new 
ShardingResultMergerEngine().newInstance(DefaultDatabase.LOGIC_NAME, 
TypedSPILoader.getService(DatabaseType.class, "MySQL"), null, props,
                 sqlStatementContext), 
instanceOf(ShardingDALResultMerger.class));
     }
@@ -130,7 +130,7 @@ class ShardingResultMergerEngineTest {
     @Test
     void assertNewInstanceWithDDLStatement() {
         ConfigurationProperties props = new ConfigurationProperties(new 
Properties());
-        CommonSQLStatementContext<OpenGaussFetchStatement> sqlStatementContext 
= new CommonSQLStatementContext<>(new OpenGaussFetchStatement());
+        UnknownSQLStatementContext<OpenGaussFetchStatement> 
sqlStatementContext = new UnknownSQLStatementContext<>(new 
OpenGaussFetchStatement());
         assertThat(new 
ShardingResultMergerEngine().newInstance(DefaultDatabase.LOGIC_NAME, 
TypedSPILoader.getService(DatabaseType.class, "MySQL"), null, props,
                 sqlStatementContext), 
instanceOf(ShardingDDLResultMerger.class));
     }
diff --git 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterViewStatementValidatorTest.java
 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterViewStatementValidatorTest.java
index e90701ee99f..9f7802d5d53 100644
--- 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterViewStatementValidatorTest.java
+++ 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingAlterViewStatementValidatorTest.java
@@ -17,8 +17,8 @@
 
 package org.apache.shardingsphere.sharding.route.engine.validator.ddl;
 
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
 import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
+import 
org.apache.shardingsphere.infra.binder.statement.ddl.AlterViewStatementContext;
 import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
 import 
org.apache.shardingsphere.sharding.exception.syntax.RenamedViewWithoutSameConfigurationException;
@@ -56,7 +56,7 @@ class ShardingAlterViewStatementValidatorTest {
         selectStatement.setFrom(new SimpleTableSegment(new TableNameSegment(0, 
0, new IdentifierValue("t_order"))));
         MySQLAlterViewStatement sqlStatement = new MySQLAlterViewStatement();
         sqlStatement.setSelect(selectStatement);
-        SQLStatementContext<AlterViewStatement> sqlStatementContext = new 
CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<AlterViewStatement> sqlStatementContext = new 
AlterViewStatementContext(sqlStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
         when(shardingRule.isShardingTable("t_order")).thenReturn(false);
         assertDoesNotThrow(() -> new 
ShardingAlterViewStatementValidator().preValidate(shardingRule, 
sqlStatementContext, Collections.emptyList(), database, 
mock(ConfigurationProperties.class)));
@@ -69,7 +69,7 @@ class ShardingAlterViewStatementValidatorTest {
         MySQLAlterViewStatement sqlStatement = new MySQLAlterViewStatement();
         sqlStatement.setSelect(selectStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
-        SQLStatementContext<AlterViewStatement> sqlStatementContext = new 
CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<AlterViewStatement> sqlStatementContext = new 
AlterViewStatementContext(sqlStatement);
         when(shardingRule.isShardingTable("t_order")).thenReturn(true);
         assertThrows(UnsupportedShardingOperationException.class,
                 () -> new 
ShardingAlterViewStatementValidator().preValidate(shardingRule, 
sqlStatementContext, Collections.emptyList(), database, 
mock(ConfigurationProperties.class)));
@@ -80,7 +80,7 @@ class ShardingAlterViewStatementValidatorTest {
         OpenGaussAlterViewStatement selectStatement = new 
OpenGaussAlterViewStatement();
         selectStatement.setView(new SimpleTableSegment(new TableNameSegment(0, 
0, new IdentifierValue("t_order"))));
         selectStatement.setRenameView(new SimpleTableSegment(new 
TableNameSegment(0, 0, new IdentifierValue("t_order_new"))));
-        SQLStatementContext<AlterViewStatement> sqlStatementContext = new 
CommonSQLStatementContext<>(selectStatement);
+        SQLStatementContext<AlterViewStatement> sqlStatementContext = new 
AlterViewStatementContext(selectStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
         when(shardingRule.isBroadcastTable("t_order")).thenReturn(true);
         when(shardingRule.isBroadcastTable("t_order_new")).thenReturn(true);
@@ -92,7 +92,7 @@ class ShardingAlterViewStatementValidatorTest {
         OpenGaussAlterViewStatement selectStatement = new 
OpenGaussAlterViewStatement();
         selectStatement.setView(new SimpleTableSegment(new TableNameSegment(0, 
0, new IdentifierValue("t_order"))));
         selectStatement.setRenameView(new SimpleTableSegment(new 
TableNameSegment(0, 0, new IdentifierValue("t_order_new"))));
-        SQLStatementContext<AlterViewStatement> sqlStatementContext = new 
CommonSQLStatementContext<>(selectStatement);
+        SQLStatementContext<AlterViewStatement> sqlStatementContext = new 
AlterViewStatementContext(selectStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
         when(shardingRule.isBroadcastTable("t_order")).thenReturn(true);
         when(shardingRule.isBroadcastTable("t_order_new")).thenReturn(false);
diff --git 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateFunctionStatementValidatorTest.java
 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateFunctionStatementValidatorTest.java
index 64874446487..1f582929452 100644
--- 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateFunctionStatementValidatorTest.java
+++ 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateFunctionStatementValidatorTest.java
@@ -19,8 +19,8 @@ package 
org.apache.shardingsphere.sharding.route.engine.validator.ddl;
 
 import 
org.apache.shardingsphere.dialect.exception.syntax.table.NoSuchTableException;
 import 
org.apache.shardingsphere.dialect.exception.syntax.table.TableExistsException;
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
 import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
+import 
org.apache.shardingsphere.infra.binder.statement.ddl.CreateFunctionStatementContext;
 import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
 import org.apache.shardingsphere.infra.database.DefaultDatabase;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
@@ -69,7 +69,7 @@ class ShardingCreateFunctionStatementValidatorTest {
         routineBody.getValidStatements().add(selectValidStatementSegment);
         MySQLCreateFunctionStatement sqlStatement = new 
MySQLCreateFunctionStatement();
         sqlStatement.setRoutineBody(routineBody);
-        SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new 
CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new 
CreateFunctionStatementContext(sqlStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, 
RETURNS_DEEP_STUBS);
         when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
         
when(database.getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order_item")).thenReturn(true);
@@ -87,7 +87,7 @@ class ShardingCreateFunctionStatementValidatorTest {
         routineBody.getValidStatements().add(validStatementSegment);
         MySQLCreateFunctionStatement sqlStatement = new 
MySQLCreateFunctionStatement();
         sqlStatement.setRoutineBody(routineBody);
-        SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new 
CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new 
CreateFunctionStatementContext(sqlStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, 
RETURNS_DEEP_STUBS);
         when(database.getName()).thenReturn("db_schema");
         assertThrows(NoSuchTableException.class,
@@ -104,7 +104,7 @@ class ShardingCreateFunctionStatementValidatorTest {
         routineBody.getValidStatements().add(validStatementSegment);
         MySQLCreateFunctionStatement sqlStatement = new 
MySQLCreateFunctionStatement();
         sqlStatement.setRoutineBody(routineBody);
-        SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new 
CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new 
CreateFunctionStatementContext(sqlStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, 
RETURNS_DEEP_STUBS);
         when(database.getName()).thenReturn("db_schema");
         assertThrows(NoSuchTableException.class,
@@ -121,7 +121,7 @@ class ShardingCreateFunctionStatementValidatorTest {
         routineBody.getValidStatements().add(validStatementSegment);
         MySQLCreateFunctionStatement sqlStatement = new 
MySQLCreateFunctionStatement();
         sqlStatement.setRoutineBody(routineBody);
-        SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new 
CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<CreateFunctionStatement> sqlStatementContext = new 
CreateFunctionStatementContext(sqlStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, 
RETURNS_DEEP_STUBS);
         when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
         
when(database.getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order")).thenReturn(true);
diff --git 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateProcedureStatementValidatorTest.java
 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateProcedureStatementValidatorTest.java
index affe5288cf7..f1ab1e8dc6b 100644
--- 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateProcedureStatementValidatorTest.java
+++ 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingCreateProcedureStatementValidatorTest.java
@@ -19,8 +19,8 @@ package 
org.apache.shardingsphere.sharding.route.engine.validator.ddl;
 
 import 
org.apache.shardingsphere.dialect.exception.syntax.table.NoSuchTableException;
 import 
org.apache.shardingsphere.dialect.exception.syntax.table.TableExistsException;
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
 import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
+import 
org.apache.shardingsphere.infra.binder.statement.ddl.CreateProcedureStatementContext;
 import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
 import org.apache.shardingsphere.infra.database.DefaultDatabase;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
@@ -73,7 +73,7 @@ class ShardingCreateProcedureStatementValidatorTest {
         when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
         
when(database.getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order_item")).thenReturn(true);
         when(shardingRule.isShardingTable("t_order_item")).thenReturn(false);
-        SQLStatementContext<CreateProcedureStatement> sqlStatementContext = 
new CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<CreateProcedureStatement> sqlStatementContext = 
new CreateProcedureStatementContext(sqlStatement);
         assertDoesNotThrow(() -> new 
ShardingCreateProcedureStatementValidator().preValidate(
                 shardingRule, sqlStatementContext, Collections.emptyList(), 
database, mock(ConfigurationProperties.class)));
     }
@@ -88,7 +88,7 @@ class ShardingCreateProcedureStatementValidatorTest {
         routineBody.getValidStatements().add(validStatementSegment);
         MySQLCreateProcedureStatement sqlStatement = new 
MySQLCreateProcedureStatement();
         sqlStatement.setRoutineBody(routineBody);
-        SQLStatementContext<CreateProcedureStatement> sqlStatementContext = 
new CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<CreateProcedureStatement> sqlStatementContext = 
new CreateProcedureStatementContext(sqlStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, 
RETURNS_DEEP_STUBS);
         when(database.getName()).thenReturn("db_schema");
         assertThrows(NoSuchTableException.class,
@@ -105,7 +105,7 @@ class ShardingCreateProcedureStatementValidatorTest {
         routineBody.getValidStatements().add(validStatementSegment);
         MySQLCreateProcedureStatement sqlStatement = new 
MySQLCreateProcedureStatement();
         sqlStatement.setRoutineBody(routineBody);
-        SQLStatementContext<CreateProcedureStatement> sqlStatementContext = 
new CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<CreateProcedureStatement> sqlStatementContext = 
new CreateProcedureStatementContext(sqlStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, 
RETURNS_DEEP_STUBS);
         when(database.getName()).thenReturn("db_schema");
         assertThrows(NoSuchTableException.class,
@@ -122,7 +122,7 @@ class ShardingCreateProcedureStatementValidatorTest {
         routineBody.getValidStatements().add(validStatementSegment);
         MySQLCreateProcedureStatement sqlStatement = new 
MySQLCreateProcedureStatement();
         sqlStatement.setRoutineBody(routineBody);
-        SQLStatementContext<CreateProcedureStatement> sqlStatementContext = 
new CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<CreateProcedureStatement> sqlStatementContext = 
new CreateProcedureStatementContext(sqlStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, 
RETURNS_DEEP_STUBS);
         when(database.getName()).thenReturn(DefaultDatabase.LOGIC_NAME);
         
when(database.getSchema(DefaultDatabase.LOGIC_NAME).containsTable("t_order")).thenReturn(true);
diff --git 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropTableStatementValidatorTest.java
 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropTableStatementValidatorTest.java
index 6831eef4a70..687132305d0 100644
--- 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropTableStatementValidatorTest.java
+++ 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/route/engine/validator/ddl/ShardingDropTableStatementValidatorTest.java
@@ -17,7 +17,6 @@
 
 package org.apache.shardingsphere.sharding.route.engine.validator.ddl;
 
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
 import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.ddl.DropTableStatementContext;
 import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
@@ -83,9 +82,10 @@ class ShardingDropTableStatementValidatorTest {
     void assertPreValidateDropTableForMySQL() {
         MySQLDropTableStatement sqlStatement = new 
MySQLDropTableStatement(false);
         sqlStatement.getTables().add(new SimpleTableSegment(new 
TableNameSegment(0, 0, new IdentifierValue("t_order_item"))));
-        SQLStatementContext<DropTableStatement> sqlStatementContext = new 
CommonSQLStatementContext<>(sqlStatement);
+        SQLStatementContext<DropTableStatement> sqlStatementContext = new 
DropTableStatementContext(sqlStatement);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, 
RETURNS_DEEP_STUBS);
         when(database.getName()).thenReturn("db_schema");
+        
when(database.getSchema("db_schema").containsTable("t_order_item")).thenReturn(true);
         ShardingDropTableStatementValidator validator = new 
ShardingDropTableStatementValidator();
         validator.preValidate(shardingRule, sqlStatementContext, 
Collections.emptyList(), database, mock(ConfigurationProperties.class));
         Collection<RouteUnit> routeUnits = new LinkedList<>();
diff --git 
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/SQLStatementContextFactory.java
 
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/SQLStatementContextFactory.java
index 525cb0d491a..dcfcac1a18d 100644
--- 
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/SQLStatementContextFactory.java
+++ 
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/SQLStatementContextFactory.java
@@ -19,8 +19,8 @@ package org.apache.shardingsphere.infra.binder;
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
 import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
+import 
org.apache.shardingsphere.infra.binder.statement.UnknownSQLStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dal.AnalyzeTableStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dal.ExplainStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dal.FlushStatementContext;
@@ -157,7 +157,7 @@ public final class SQLStatementContextFactory {
         if (sqlStatement instanceof DALStatement) {
             return getDALStatementContext((DALStatement) sqlStatement);
         }
-        return new CommonSQLStatementContext<>(sqlStatement);
+        return new UnknownSQLStatementContext<>(sqlStatement);
     }
     
     private static SQLStatementContext<?> getDMLStatementContext(final 
ShardingSphereMetaData metaData,
@@ -254,7 +254,7 @@ public final class SQLStatementContextFactory {
         if (sqlStatement instanceof FetchStatement) {
             return new FetchStatementContext((FetchStatement) sqlStatement);
         }
-        return new CommonSQLStatementContext<>(sqlStatement);
+        return new UnknownSQLStatementContext<>(sqlStatement);
     }
     
     private static SQLStatementContext<?> getDCLStatementContext(final 
DCLStatement sqlStatement) {
@@ -267,7 +267,7 @@ public final class SQLStatementContextFactory {
         if (sqlStatement instanceof SQLServerDenyUserStatement) {
             return new DenyUserStatementContext((SQLServerDenyUserStatement) 
sqlStatement);
         }
-        return new CommonSQLStatementContext<>(sqlStatement);
+        return new UnknownSQLStatementContext<>(sqlStatement);
     }
     
     private static SQLStatementContext<?> getDALStatementContext(final 
DALStatement sqlStatement) {
@@ -301,6 +301,6 @@ public final class SQLStatementContextFactory {
         if (sqlStatement instanceof MySQLKillStatement) {
             return new KillStatementContext((MySQLKillStatement) sqlStatement);
         }
-        return new CommonSQLStatementContext<>(sqlStatement);
+        return new UnknownSQLStatementContext<>(sqlStatement);
     }
 }
diff --git 
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/CommonSQLStatementContext.java
 
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/CommonSQLStatementContext.java
index 77ec61835ea..2acff16838c 100644
--- 
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/CommonSQLStatementContext.java
+++ 
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/CommonSQLStatementContext.java
@@ -40,7 +40,7 @@ import java.util.Optional;
  * @param <T> type of SQL statement
  */
 @Getter
-public class CommonSQLStatementContext<T extends SQLStatement> implements 
SQLStatementContext<T> {
+public abstract class CommonSQLStatementContext<T extends SQLStatement> 
implements SQLStatementContext<T> {
     
     private final T sqlStatement;
     
diff --git 
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/UnknownSQLStatementContext.java
 
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/UnknownSQLStatementContext.java
new file mode 100644
index 00000000000..d981f6f5b81
--- /dev/null
+++ 
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/UnknownSQLStatementContext.java
@@ -0,0 +1,32 @@
+/*
+ * 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.infra.binder.statement;
+
+import org.apache.shardingsphere.sql.parser.sql.common.statement.SQLStatement;
+
+/**
+ * Unknown SQL statement context.
+ * 
+ * @param <T> type of SQL statement
+ */
+public final class UnknownSQLStatementContext<T extends SQLStatement> extends 
CommonSQLStatementContext<T> {
+    
+    public UnknownSQLStatementContext(final T sqlStatement) {
+        super(sqlStatement);
+    }
+}
diff --git 
a/kernel/single/core/src/test/java/org/apache/shardingsphere/single/route/validator/ddl/SingleDropSchemaMetaDataValidatorTest.java
 
b/kernel/single/core/src/test/java/org/apache/shardingsphere/single/route/validator/ddl/SingleDropSchemaMetaDataValidatorTest.java
index 89954ba6acf..98fafe3b1ac 100644
--- 
a/kernel/single/core/src/test/java/org/apache/shardingsphere/single/route/validator/ddl/SingleDropSchemaMetaDataValidatorTest.java
+++ 
b/kernel/single/core/src/test/java/org/apache/shardingsphere/single/route/validator/ddl/SingleDropSchemaMetaDataValidatorTest.java
@@ -17,8 +17,8 @@
 
 package org.apache.shardingsphere.single.route.validator.ddl;
 
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
 import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
+import 
org.apache.shardingsphere.infra.binder.statement.UnknownSQLStatementContext;
 import org.apache.shardingsphere.infra.exception.SchemaNotFoundException;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
 import 
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereSchema;
@@ -70,6 +70,6 @@ class SingleDropSchemaMetaDataValidatorTest {
         PostgreSQLDropSchemaStatement dropSchemaStatement = 
mock(PostgreSQLDropSchemaStatement.class, RETURNS_DEEP_STUBS);
         when(dropSchemaStatement.isContainsCascade()).thenReturn(isCascade);
         
when(dropSchemaStatement.getSchemaNames()).thenReturn(Collections.singleton(new 
IdentifierValue(schemaName)));
-        return new CommonSQLStatementContext<>(dropSchemaStatement);
+        return new UnknownSQLStatementContext<>(dropSchemaStatement);
     }
 }
diff --git 
a/proxy/backend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/backend/postgresql/handler/admin/PostgreSQLAdminExecutorCreatorTest.java
 
b/proxy/backend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/backend/postgresql/handler/admin/PostgreSQLAdminExecutorCreatorTest.java
index f110d7c0314..3e9e9c6c142 100644
--- 
a/proxy/backend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/backend/postgresql/handler/admin/PostgreSQLAdminExecutorCreatorTest.java
+++ 
b/proxy/backend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/backend/postgresql/handler/admin/PostgreSQLAdminExecutorCreatorTest.java
@@ -17,7 +17,7 @@
 
 package org.apache.shardingsphere.proxy.backend.postgresql.handler.admin;
 
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
+import 
org.apache.shardingsphere.infra.binder.statement.UnknownSQLStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dml.DeleteStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementContext;
 import org.apache.shardingsphere.parser.config.SQLParserRuleConfiguration;
@@ -82,12 +82,12 @@ class PostgreSQLAdminExecutorCreatorTest {
     
     @Test
     void assertCreateWithOtherSQLStatementContextOnly() {
-        assertThat(new PostgreSQLAdminExecutorCreator().create(new 
CommonSQLStatementContext<>(new PostgreSQLInsertStatement())), 
is(Optional.empty()));
+        assertThat(new PostgreSQLAdminExecutorCreator().create(new 
UnknownSQLStatementContext<>(new PostgreSQLInsertStatement())), 
is(Optional.empty()));
     }
     
     @Test
     void assertCreateWithShowSQLStatement() {
-        Optional<DatabaseAdminExecutor> actual = new 
PostgreSQLAdminExecutorCreator().create(new CommonSQLStatementContext<>(new 
PostgreSQLShowStatement("client_encoding")));
+        Optional<DatabaseAdminExecutor> actual = new 
PostgreSQLAdminExecutorCreator().create(new UnknownSQLStatementContext<>(new 
PostgreSQLShowStatement("client_encoding")));
         assertTrue(actual.isPresent());
         assertThat(actual.get(), 
instanceOf(PostgreSQLShowVariableExecutor.class));
     }
@@ -146,7 +146,7 @@ class PostgreSQLAdminExecutorCreatorTest {
     @Test
     void assertCreateWithSetStatement() {
         PostgreSQLSetStatement setStatement = new PostgreSQLSetStatement();
-        CommonSQLStatementContext<PostgreSQLSetStatement> sqlStatementContext 
= new CommonSQLStatementContext<>(setStatement);
+        UnknownSQLStatementContext<PostgreSQLSetStatement> sqlStatementContext 
= new UnknownSQLStatementContext<>(setStatement);
         Optional<DatabaseAdminExecutor> actual = new 
PostgreSQLAdminExecutorCreator().create(sqlStatementContext, "SET 
client_encoding = utf8", "", Collections.emptyList());
         assertTrue(actual.isPresent());
         assertThat(actual.get(), 
instanceOf(PostgreSQLSetVariableAdminExecutor.class));
@@ -155,7 +155,7 @@ class PostgreSQLAdminExecutorCreatorTest {
     @Test
     void assertCreateWithResetStatement() {
         Optional<DatabaseAdminExecutor> actual = new 
PostgreSQLAdminExecutorCreator()
-                .create(new CommonSQLStatementContext<>(new 
PostgreSQLResetParameterStatement("client_encoding")), "RESET client_encoding", 
"", Collections.emptyList());
+                .create(new UnknownSQLStatementContext<>(new 
PostgreSQLResetParameterStatement("client_encoding")), "RESET client_encoding", 
"", Collections.emptyList());
         assertTrue(actual.isPresent());
         assertThat(actual.get(), 
instanceOf(PostgreSQLResetVariableAdminExecutor.class));
     }
diff --git 
a/proxy/frontend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/command/query/binary/execute/MySQLComStmtExecuteExecutorTest.java
 
b/proxy/frontend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/command/query/binary/execute/MySQLComStmtExecuteExecutorTest.java
index 95e8832f387..7c462863bac 100644
--- 
a/proxy/frontend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/command/query/binary/execute/MySQLComStmtExecuteExecutorTest.java
+++ 
b/proxy/frontend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/command/query/binary/execute/MySQLComStmtExecuteExecutorTest.java
@@ -28,12 +28,12 @@ import 
org.apache.shardingsphere.db.protocol.mysql.packet.command.query.binary.e
 import 
org.apache.shardingsphere.db.protocol.mysql.packet.generic.MySQLEofPacket;
 import 
org.apache.shardingsphere.db.protocol.mysql.packet.generic.MySQLOKPacket;
 import org.apache.shardingsphere.db.protocol.packet.DatabasePacket;
-import org.apache.shardingsphere.infra.session.query.QueryContext;
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
 import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
+import 
org.apache.shardingsphere.infra.binder.statement.UnknownSQLStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dml.UpdateStatementContext;
 import org.apache.shardingsphere.infra.database.type.dialect.MySQLDatabaseType;
+import org.apache.shardingsphere.infra.session.query.QueryContext;
 import 
org.apache.shardingsphere.proxy.backend.connector.ProxyDatabaseConnectionManager;
 import org.apache.shardingsphere.proxy.backend.handler.ProxyBackendHandler;
 import 
org.apache.shardingsphere.proxy.backend.handler.ProxyBackendHandlerFactory;
@@ -109,7 +109,7 @@ class MySQLComStmtExecuteExecutorTest {
         
when(connectionSession.getServerPreparedStatementRegistry().getPreparedStatement(2))
                 .thenReturn(new MySQLServerPreparedStatement("UPDATE tbl SET 
col=1 WHERE id = ?", updateStatementContext, Collections.emptyList()));
         
when(connectionSession.getServerPreparedStatementRegistry().getPreparedStatement(3))
-                .thenReturn(new MySQLServerPreparedStatement("COMMIT", new 
CommonSQLStatementContext<>(new MySQLCommitStatement()), 
Collections.emptyList()));
+                .thenReturn(new MySQLServerPreparedStatement("COMMIT", new 
UnknownSQLStatementContext<>(new MySQLCommitStatement()), 
Collections.emptyList()));
     }
     
     private SQLStatementContext<?> prepareSelectStatementContext() {
diff --git 
a/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PortalTest.java
 
b/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PortalTest.java
index 2d0945ad0eb..ccb53d5c7f3 100644
--- 
a/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PortalTest.java
+++ 
b/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/PortalTest.java
@@ -27,15 +27,15 @@ import 
org.apache.shardingsphere.db.protocol.postgresql.packet.command.query.Pos
 import 
org.apache.shardingsphere.db.protocol.postgresql.packet.command.query.extended.execute.PostgreSQLPortalSuspendedPacket;
 import 
org.apache.shardingsphere.db.protocol.postgresql.packet.generic.PostgreSQLCommandCompletePacket;
 import 
org.apache.shardingsphere.db.protocol.postgresql.packet.handshake.PostgreSQLParameterStatusPacket;
-import org.apache.shardingsphere.infra.session.query.QueryContext;
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
 import org.apache.shardingsphere.infra.binder.statement.SQLStatementContext;
+import 
org.apache.shardingsphere.infra.binder.statement.UnknownSQLStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dml.InsertStatementContext;
 import 
org.apache.shardingsphere.infra.binder.statement.dml.SelectStatementContext;
 import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
 import 
org.apache.shardingsphere.infra.database.type.dialect.PostgreSQLDatabaseType;
 import org.apache.shardingsphere.infra.hint.HintValueContext;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.infra.session.query.QueryContext;
 import org.apache.shardingsphere.infra.util.reflection.ReflectionUtils;
 import org.apache.shardingsphere.mode.manager.ContextManager;
 import 
org.apache.shardingsphere.proxy.backend.connector.ProxyDatabaseConnectionManager;
@@ -130,7 +130,7 @@ class PortalTest {
     @Test
     void assertGetName() throws SQLException {
         Portal portal = new Portal("", new 
PostgreSQLServerPreparedStatement("",
-                new CommonSQLStatementContext<>(new 
PostgreSQLEmptyStatement()), Collections.emptyList()), Collections.emptyList(), 
Collections.emptyList(), databaseConnectionManager);
+                new UnknownSQLStatementContext<>(new 
PostgreSQLEmptyStatement()), Collections.emptyList()), Collections.emptyList(), 
Collections.emptyList(), databaseConnectionManager);
         assertThat(portal.getName(), is(""));
     }
     
@@ -211,7 +211,7 @@ class PortalTest {
     void assertExecuteEmptyStatement() throws SQLException {
         
when(proxyBackendHandler.execute()).thenReturn(mock(UpdateResponseHeader.class));
         when(proxyBackendHandler.next()).thenReturn(false);
-        PostgreSQLServerPreparedStatement preparedStatement = new 
PostgreSQLServerPreparedStatement("", new CommonSQLStatementContext<>(new 
PostgreSQLEmptyStatement()), Collections.emptyList());
+        PostgreSQLServerPreparedStatement preparedStatement = new 
PostgreSQLServerPreparedStatement("", new UnknownSQLStatementContext<>(new 
PostgreSQLEmptyStatement()), Collections.emptyList());
         Portal portal = new Portal("", preparedStatement, 
Collections.emptyList(), Collections.emptyList(), databaseConnectionManager);
         portal.bind();
         assertThat(portal.describe(), 
is(PostgreSQLNoDataPacket.getInstance()));
@@ -228,7 +228,7 @@ class PortalTest {
         VariableAssignSegment variableAssignSegment = new 
VariableAssignSegment();
         variableAssignSegment.setVariable(new VariableSegment(0, 0, 
"client_encoding"));
         setStatement.getVariableAssigns().add(variableAssignSegment);
-        PostgreSQLServerPreparedStatement preparedStatement = new 
PostgreSQLServerPreparedStatement(sql, new 
CommonSQLStatementContext<>(setStatement), Collections.emptyList());
+        PostgreSQLServerPreparedStatement preparedStatement = new 
PostgreSQLServerPreparedStatement(sql, new 
UnknownSQLStatementContext<>(setStatement), Collections.emptyList());
         Portal portal = new Portal("", preparedStatement, 
Collections.emptyList(), Collections.emptyList(), databaseConnectionManager);
         portal.bind();
         List<PostgreSQLPacket> actualPackets = portal.execute(0);
@@ -247,7 +247,7 @@ class PortalTest {
     
     @Test
     void assertClose() throws SQLException {
-        PostgreSQLServerPreparedStatement preparedStatement = new 
PostgreSQLServerPreparedStatement("", new CommonSQLStatementContext<>(new 
PostgreSQLEmptyStatement()), Collections.emptyList());
+        PostgreSQLServerPreparedStatement preparedStatement = new 
PostgreSQLServerPreparedStatement("", new UnknownSQLStatementContext<>(new 
PostgreSQLEmptyStatement()), Collections.emptyList());
         new Portal("", preparedStatement, Collections.emptyList(), 
Collections.emptyList(), databaseConnectionManager).close();
         
verify(databaseConnectionManager).unmarkResourceInUse(proxyBackendHandler);
         verify(proxyBackendHandler).close();
diff --git 
a/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/bind/PostgreSQLComBindExecutorTest.java
 
b/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/bind/PostgreSQLComBindExecutorTest.java
index 392a57e4d3a..33a6c5d5d37 100644
--- 
a/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/bind/PostgreSQLComBindExecutorTest.java
+++ 
b/proxy/frontend/type/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/bind/PostgreSQLComBindExecutorTest.java
@@ -20,7 +20,7 @@ package 
org.apache.shardingsphere.proxy.frontend.postgresql.command.query.extend
 import org.apache.shardingsphere.db.protocol.packet.DatabasePacket;
 import 
org.apache.shardingsphere.db.protocol.postgresql.packet.command.query.extended.bind.PostgreSQLBindCompletePacket;
 import 
org.apache.shardingsphere.db.protocol.postgresql.packet.command.query.extended.bind.PostgreSQLComBindPacket;
-import 
org.apache.shardingsphere.infra.binder.statement.CommonSQLStatementContext;
+import 
org.apache.shardingsphere.infra.binder.statement.UnknownSQLStatementContext;
 import 
org.apache.shardingsphere.infra.database.type.dialect.PostgreSQLDatabaseType;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
 import org.apache.shardingsphere.mode.manager.ContextManager;
@@ -81,7 +81,7 @@ class PostgreSQLComBindExecutorTest {
         
when(databaseConnectionManager.getConnectionSession()).thenReturn(connectionSession);
         String statementId = "S_1";
         
connectionSession.getServerPreparedStatementRegistry().addPreparedStatement(statementId,
-                new PostgreSQLServerPreparedStatement("", new 
CommonSQLStatementContext<>(new PostgreSQLEmptyStatement()), 
Collections.emptyList()));
+                new PostgreSQLServerPreparedStatement("", new 
UnknownSQLStatementContext<>(new PostgreSQLEmptyStatement()), 
Collections.emptyList()));
         when(bindPacket.getStatementId()).thenReturn(statementId);
         when(bindPacket.getPortal()).thenReturn("C_1");
         
when(bindPacket.readParameters(anyList())).thenReturn(Collections.emptyList());


Reply via email to