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

menghaoran 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 eec22a6f7be Mini refactor for StandaloneMetaDataManagerPersistService 
(#37688)
eec22a6f7be is described below

commit eec22a6f7be0f62134ee751f9ca0e084690645f0
Author: Haoran Meng <[email protected]>
AuthorDate: Fri Jan 9 08:06:03 2026 +0800

    Mini refactor for StandaloneMetaDataManagerPersistService (#37688)
---
 .../StandaloneMetaDataManagerPersistService.java   | 38 +++++++++++-----------
 1 file changed, 19 insertions(+), 19 deletions(-)

diff --git 
a/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistService.java
 
b/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistService.java
index 7cb9425f022..60ad7578df8 100644
--- 
a/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistService.java
+++ 
b/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/persist/service/StandaloneMetaDataManagerPersistService.java
@@ -128,16 +128,14 @@ public final class 
StandaloneMetaDataManagerPersistService implements MetaDataMa
     public void alterTables(final ShardingSphereDatabase database, final 
String schemaName, final Collection<ShardingSphereTable> alteredTables) {
         
metaDataPersistFacade.getDatabaseMetaDataFacade().getTable().persist(database.getName(),
 schemaName, alteredTables);
         alteredTables.forEach(each -> 
metaDataContextManager.getDatabaseMetaDataManager().alterTable(database.getName(),
 schemaName, each));
-        ShardingSphereMetaData metaData = 
metaDataContextManager.getMetaDataContexts().getMetaData();
-        metaData.getGlobalRuleMetaData().getRules().forEach(each -> 
((GlobalRule) each).refresh(metaData.getAllDatabases(), 
GlobalRuleChangedType.SCHEMA_CHANGED));
+        refreshGlobalRules(GlobalRuleChangedType.SCHEMA_CHANGED);
     }
     
     @Override
     public void alterViews(final ShardingSphereDatabase database, final String 
schemaName, final Collection<ShardingSphereView> alteredViews) {
         
metaDataPersistFacade.getDatabaseMetaDataFacade().getView().persist(database.getName(),
 schemaName, alteredViews);
         alteredViews.forEach(each -> 
metaDataContextManager.getDatabaseMetaDataManager().alterView(database.getName(),
 schemaName, each));
-        ShardingSphereMetaData metaData = 
metaDataContextManager.getMetaDataContexts().getMetaData();
-        metaData.getGlobalRuleMetaData().getRules().forEach(each -> 
((GlobalRule) each).refresh(metaData.getAllDatabases(), 
GlobalRuleChangedType.SCHEMA_CHANGED));
+        refreshGlobalRules(GlobalRuleChangedType.SCHEMA_CHANGED);
     }
     
     @Override
@@ -146,8 +144,7 @@ public final class StandaloneMetaDataManagerPersistService 
implements MetaDataMa
             
metaDataPersistFacade.getDatabaseMetaDataFacade().getView().drop(database.getName(),
 schemaName, each);
             
metaDataContextManager.getDatabaseMetaDataManager().dropView(database.getName(),
 schemaName, each);
         });
-        ShardingSphereMetaData metaData = 
metaDataContextManager.getMetaDataContexts().getMetaData();
-        metaData.getGlobalRuleMetaData().getRules().forEach(each -> 
((GlobalRule) each).refresh(metaData.getAllDatabases(), 
GlobalRuleChangedType.SCHEMA_CHANGED));
+        refreshGlobalRules(GlobalRuleChangedType.SCHEMA_CHANGED);
     }
     
     @Override
@@ -163,8 +160,7 @@ public final class StandaloneMetaDataManagerPersistService 
implements MetaDataMa
         metaDataContextManager.getStorageUnitManager().register(databaseName, 
toBeRegisteredProps);
         
metaDataPersistFacade.getDatabaseMetaDataFacade().persistReloadDatabase(databaseName,
 
metaDataContextManager.getMetaDataContexts().getMetaData().getDatabase(databaseName),
                 
originalMetaDataContexts.getMetaData().getDatabase(databaseName));
-        
metaDataContextManager.getMetaDataContexts().getMetaData().getGlobalRuleMetaData().getRules()
-                .forEach(each -> ((GlobalRule) 
each).refresh(metaDataContextManager.getMetaDataContexts().getMetaData().getAllDatabases(),
 GlobalRuleChangedType.DATABASE_CHANGED));
+        refreshGlobalRules(GlobalRuleChangedType.DATABASE_CHANGED);
     }
     
     @Override
@@ -179,8 +175,7 @@ public final class StandaloneMetaDataManagerPersistService 
implements MetaDataMa
         metaDataContextManager.getStorageUnitManager().alter(databaseName, 
toBeRegisteredProps);
         
metaDataPersistFacade.getDatabaseMetaDataFacade().persistReloadDatabase(databaseName,
 
metaDataContextManager.getMetaDataContexts().getMetaData().getDatabase(databaseName),
                 
originalMetaDataContexts.getMetaData().getDatabase(databaseName));
-        
metaDataContextManager.getMetaDataContexts().getMetaData().getGlobalRuleMetaData().getRules()
-                .forEach(each -> ((GlobalRule) 
each).refresh(metaDataContextManager.getMetaDataContexts().getMetaData().getAllDatabases(),
 GlobalRuleChangedType.DATABASE_CHANGED));
+        refreshGlobalRules(GlobalRuleChangedType.DATABASE_CHANGED);
     }
     
     @Override
@@ -219,9 +214,7 @@ public final class StandaloneMetaDataManagerPersistService 
implements MetaDataMa
         Collection<String> needReloadTables = getNeedReloadTables(database, 
toBeAlteredRuleConfig);
         Collection<MetaDataVersion> metaDataVersions = 
metaDataPersistFacade.getDatabaseRuleService().persist(database.getName(), 
Collections.singleton(toBeAlteredRuleConfig));
         alterRuleItem(database.getName(), metaDataVersions);
-        Map<String, Collection<ShardingSphereTable>> schemaAndTablesMap = 
metaDataPersistFacade.getDatabaseMetaDataFacade().persistAlteredTables(
-                database.getName(), 
metaDataContextManager.getMetaDataContexts(), needReloadTables);
-        alterSchemaTables(database, schemaAndTablesMap);
+        persistAndAlterSchemaTables(database, needReloadTables);
         clearServicesCache();
     }
     
@@ -244,9 +237,7 @@ public final class StandaloneMetaDataManagerPersistService 
implements MetaDataMa
         Collection<String> needReloadTables = getNeedReloadTables(database, 
toBeRemovedRuleItemConfig);
         Collection<MetaDataVersion> metaDataVersions = 
metaDataPersistFacade.getDatabaseRuleService().delete(database.getName(), 
Collections.singleton(toBeRemovedRuleItemConfig));
         removeRuleItem(database.getName(), metaDataVersions);
-        Map<String, Collection<ShardingSphereTable>> schemaAndTablesMap = 
metaDataPersistFacade.getDatabaseMetaDataFacade().persistAlteredTables(
-                database.getName(), 
metaDataContextManager.getMetaDataContexts(), needReloadTables);
-        alterSchemaTables(database, schemaAndTablesMap);
+        persistAndAlterSchemaTables(database, needReloadTables);
         clearServicesCache();
     }
     
@@ -279,9 +270,7 @@ public final class StandaloneMetaDataManagerPersistService 
implements MetaDataMa
         Collection<String> needReloadTables = getNeedReloadTables(database, 
toBeRemovedRuleConfig);
         
metaDataPersistFacade.getDatabaseRuleService().delete(database.getName(), 
ruleType);
         metaDataContextManager.getDatabaseRuleItemManager().drop(new 
DatabaseRuleNodePath(database.getName(), ruleType, null));
-        Map<String, Collection<ShardingSphereTable>> schemaAndTablesMap = 
metaDataPersistFacade.getDatabaseMetaDataFacade().persistAlteredTables(
-                database.getName(), 
metaDataContextManager.getMetaDataContexts(), needReloadTables);
-        alterSchemaTables(database, schemaAndTablesMap);
+        persistAndAlterSchemaTables(database, needReloadTables);
         clearServicesCache();
     }
     
@@ -302,4 +291,15 @@ public final class StandaloneMetaDataManagerPersistService 
implements MetaDataMa
     private void clearServicesCache() {
         OrderedServicesCache.clearCache();
     }
+    
+    private void refreshGlobalRules(final GlobalRuleChangedType changedType) {
+        ShardingSphereMetaData metaData = 
metaDataContextManager.getMetaDataContexts().getMetaData();
+        metaData.getGlobalRuleMetaData().getRules().forEach(each -> 
((GlobalRule) each).refresh(metaData.getAllDatabases(), changedType));
+    }
+    
+    private void persistAndAlterSchemaTables(final ShardingSphereDatabase 
database, final Collection<String> needReloadTables) {
+        Map<String, Collection<ShardingSphereTable>> schemaAndTablesMap = 
metaDataPersistFacade.getDatabaseMetaDataFacade().persistAlteredTables(
+                database.getName(), 
metaDataContextManager.getMetaDataContexts(), needReloadTables);
+        alterSchemaTables(database, schemaAndTablesMap);
+    }
 }

Reply via email to