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

menghaoranss 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 4f3a182b50e Merge contains and get database by name for QueryContext 
(#38768)
4f3a182b50e is described below

commit 4f3a182b50e8b81984a342c272d5061bc5556ea5
Author: Haoran Meng <[email protected]>
AuthorDate: Tue Jun 2 10:43:39 2026 +0800

    Merge contains and get database by name for QueryContext (#38768)
---
 .../org/apache/shardingsphere/infra/session/query/QueryContext.java  | 5 +++--
 .../proxy/backend/connector/DatabaseProxyConnectorFactoryTest.java   | 2 --
 .../binary/prepare/MySQLPreparedStatementMetadataFactoryTest.java    | 1 -
 .../command/query/extended/bind/PostgreSQLComBindExecutorTest.java   | 1 -
 4 files changed, 3 insertions(+), 6 deletions(-)

diff --git 
a/infra/session/src/main/java/org/apache/shardingsphere/infra/session/query/QueryContext.java
 
b/infra/session/src/main/java/org/apache/shardingsphere/infra/session/query/QueryContext.java
index 4067c7ffc21..3d780c5a85f 100644
--- 
a/infra/session/src/main/java/org/apache/shardingsphere/infra/session/query/QueryContext.java
+++ 
b/infra/session/src/main/java/org/apache/shardingsphere/infra/session/query/QueryContext.java
@@ -113,8 +113,9 @@ public final class QueryContext {
                 () -> new UnsupportedSQLOperationException(String.format("Can 
not support multiple logic databases [%s]", Joiner.on(", 
").join(usedDatabaseNames))));
         ShardingSpherePreconditions.checkState(usedDatabaseNames.size() == 1, 
NoDatabaseSelectedException::new);
         String databaseName = usedDatabaseNames.iterator().next();
-        
ShardingSpherePreconditions.checkState(metaData.containsDatabase(databaseName), 
() -> new UnknownDatabaseException(databaseName));
-        return metaData.getDatabase(databaseName);
+        ShardingSphereDatabase result = metaData.getDatabase(databaseName);
+        ShardingSpherePreconditions.checkState(null != result, () -> new 
UnknownDatabaseException(databaseName));
+        return result;
     }
     
     /**
diff --git 
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseProxyConnectorFactoryTest.java
 
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseProxyConnectorFactoryTest.java
index f9d79eee5ea..e574645dfaa 100644
--- 
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseProxyConnectorFactoryTest.java
+++ 
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseProxyConnectorFactoryTest.java
@@ -78,7 +78,6 @@ class DatabaseProxyConnectorFactoryTest {
         
when(sqlStatementContext.getSqlStatement().getDatabaseType()).thenReturn(databaseType);
         ShardingSphereDatabase database = mockDatabase();
         ShardingSphereMetaData metaData = mock(ShardingSphereMetaData.class);
-        when(metaData.containsDatabase("foo_db")).thenReturn(true);
         when(metaData.getDatabase("foo_db")).thenReturn(database);
         QueryContext queryContext = new QueryContext(sqlStatementContext, 
"schemaName", Collections.emptyList(), new HintValueContext(), 
mockConnectionContext(), metaData);
         ContextManager contextManager = mockContextManager(database);
@@ -102,7 +101,6 @@ class DatabaseProxyConnectorFactoryTest {
         
when(sqlStatementContext.getSqlStatement().getDatabaseType()).thenReturn(databaseType);
         ShardingSphereDatabase database = mockDatabase();
         ShardingSphereMetaData metaData = mock(ShardingSphereMetaData.class);
-        when(metaData.containsDatabase("foo_db")).thenReturn(true);
         when(metaData.getDatabase("foo_db")).thenReturn(database);
         ContextManager contextManager = mockContextManager(database);
         initBackendExecutorContext(contextManager);
diff --git 
a/proxy/frontend/dialect/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/command/query/binary/prepare/MySQLPreparedStatementMetadataFactoryTest.java
 
b/proxy/frontend/dialect/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/command/query/binary/prepare/MySQLPreparedStatementMetadataFactoryTest.java
index 525eb614e98..f08a07d893b 100644
--- 
a/proxy/frontend/dialect/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/command/query/binary/prepare/MySQLPreparedStatementMetadataFactoryTest.java
+++ 
b/proxy/frontend/dialect/mysql/src/test/java/org/apache/shardingsphere/proxy/frontend/mysql/command/query/binary/prepare/MySQLPreparedStatementMetadataFactoryTest.java
@@ -131,7 +131,6 @@ class MySQLPreparedStatementMetadataFactoryTest {
         mockMetaData();
         ShardingSphereMetaData metaData = 
ProxyContext.getInstance().getContextManager().getMetaDataContexts().getMetaData();
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class);
-        when(metaData.containsDatabase("foo_db")).thenReturn(true);
         when(metaData.getDatabase("foo_db")).thenReturn(database);
         when(database.getName()).thenReturn("foo_db");
     }
diff --git 
a/proxy/frontend/dialect/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/bind/PostgreSQLComBindExecutorTest.java
 
b/proxy/frontend/dialect/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/bind/PostgreSQLComBindExecutorTest.java
index 25348674ab2..6d1e186c8fd 100644
--- 
a/proxy/frontend/dialect/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/bind/PostgreSQLComBindExecutorTest.java
+++ 
b/proxy/frontend/dialect/postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/command/query/extended/bind/PostgreSQLComBindExecutorTest.java
@@ -184,7 +184,6 @@ class PostgreSQLComBindExecutorTest {
         
when(result.getMetaDataContexts().getMetaData().getProps()).thenReturn(new 
ConfigurationProperties(new Properties()));
         RuleMetaData globalRuleMetaData = new 
RuleMetaData(Collections.singleton(new SQLTranslatorRule(new 
DefaultSQLTranslatorRuleConfigurationBuilder().build())));
         
when(result.getMetaDataContexts().getMetaData().getGlobalRuleMetaData()).thenReturn(globalRuleMetaData);
-        
when(result.getMetaDataContexts().getMetaData().containsDatabase(DATABASE_NAME)).thenReturn(true);
         when(result.getMetaDataContexts().getMetaData().containsDatabase(new 
IdentifierValue(DATABASE_NAME))).thenReturn(true);
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, 
RETURNS_DEEP_STUBS);
         when(database.getProtocolType()).thenReturn(databaseType);

Reply via email to