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 0cfa3a6a7ea Refactor CreateSchemaPushDownMetaDataRefresher (#34527)
0cfa3a6a7ea is described below
commit 0cfa3a6a7ead1eecbf5fd19a35219532b94ad8f1
Author: Liang Zhang <[email protected]>
AuthorDate: Wed Jan 29 11:39:02 2025 +0800
Refactor CreateSchemaPushDownMetaDataRefresher (#34527)
---
.../type/schema/CreateSchemaPushDownMetaDataRefresher.java | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/refresher/metadata/pushdown/type/schema/CreateSchemaPushDownMetaDataRefresher.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/refresher/metadata/pushdown/type/schema/CreateSchemaPushDownMetaDataRefresher.java
index cb2f9dd8103..57ed9b87bd4 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/refresher/metadata/pushdown/type/schema/CreateSchemaPushDownMetaDataRefresher.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/refresher/metadata/pushdown/type/schema/CreateSchemaPushDownMetaDataRefresher.java
@@ -23,8 +23,10 @@ import
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import
org.apache.shardingsphere.mode.metadata.refresher.metadata.pushdown.PushDownMetaDataRefresher;
import
org.apache.shardingsphere.mode.persist.service.MetaDataManagerPersistService;
import
org.apache.shardingsphere.sql.parser.statement.core.statement.ddl.CreateSchemaStatement;
+import
org.apache.shardingsphere.sql.parser.statement.core.value.identifier.IdentifierValue;
import java.util.Collection;
+import java.util.Optional;
/**
* Create schema push down meta data refresher.
@@ -34,8 +36,11 @@ public final class CreateSchemaPushDownMetaDataRefresher
implements PushDownMeta
@Override
public void refresh(final MetaDataManagerPersistService
metaDataManagerPersistService, final ShardingSphereDatabase database, final
Collection<String> logicDataSourceNames,
final String schemaName, final DatabaseType
databaseType, final CreateSchemaStatement sqlStatement, final
ConfigurationProperties props) {
- (sqlStatement.getSchemaName().isPresent() ?
sqlStatement.getSchemaName() : sqlStatement.getUsername())
- .ifPresent(optional ->
metaDataManagerPersistService.createSchema(database.getName(),
optional.getValue().toLowerCase()));
+ getSchemaName(sqlStatement).ifPresent(optional ->
metaDataManagerPersistService.createSchema(database.getName(),
optional.getValue().toLowerCase()));
+ }
+
+ private static Optional<IdentifierValue> getSchemaName(final
CreateSchemaStatement sqlStatement) {
+ return sqlStatement.getSchemaName().isPresent() ?
sqlStatement.getSchemaName() : sqlStatement.getUsername();
}
@Override