This is an automated email from the ASF dual-hosted git repository.
zhaojinchao 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 6b38c4974fa Refactor meta data persist default active version (#26550)
6b38c4974fa is described below
commit 6b38c4974fab651609075b0a0ce0cde7f8edbd6a
Author: ChenJiaHao <[email protected]>
AuthorDate: Sun Jun 25 21:32:06 2023 +0800
Refactor meta data persist default active version (#26550)
* Refactor meta data persist default active version
* Refactor meta data persist default active version
---
.../service/config/database/NewDataSourcePersistService.java | 12 ++++++------
.../config/database/NewDatabaseRulePersistService.java | 6 +++---
.../service/config/global/NewGlobalRulePersistService.java | 6 +++---
.../service/schema/NewTableMetaDataPersistService.java | 12 ++++++------
.../service/schema/NewViewMetaDataPersistService.java | 12 ++++++------
5 files changed, 24 insertions(+), 24 deletions(-)
diff --git
a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDataSourcePersistService.java
b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDataSourcePersistService.java
index 6f17d971306..e3ea91e27a3 100644
---
a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDataSourcePersistService.java
+++
b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDataSourcePersistService.java
@@ -49,13 +49,13 @@ public final class NewDataSourcePersistService implements
DatabaseBasedPersistSe
public void persist(final String databaseName, final Map<String,
DataSourceProperties> dataSourceConfigs) {
for (Entry<String, DataSourceProperties> entry :
dataSourceConfigs.entrySet()) {
String activeVersion = getDataSourceActiveVersion(databaseName,
entry.getKey());
- if (Strings.isNullOrEmpty(activeVersion)) {
-
repository.persist(NewDatabaseMetaDataNode.getDataSourceActiveVersionNode(databaseName,
entry.getKey()), DEFAULT_VERSION);
- }
List<String> versions =
repository.getChildrenKeys(NewDatabaseMetaDataNode.getDataSourceVersionsNode(databaseName,
entry.getKey()));
repository.persist(NewDatabaseMetaDataNode.getDataSourceNodeWithVersion(databaseName,
entry.getKey(), versions.isEmpty()
? DEFAULT_VERSION
: String.valueOf(Integer.parseInt(versions.get(0)) + 1)),
YamlEngine.marshal(new
YamlDataSourceConfigurationSwapper().swapToMap(entry.getValue())));
+ if (Strings.isNullOrEmpty(activeVersion)) {
+
repository.persist(NewDatabaseMetaDataNode.getDataSourceActiveVersionNode(databaseName,
entry.getKey()), DEFAULT_VERSION);
+ }
}
}
@@ -70,13 +70,13 @@ public final class NewDataSourcePersistService implements
DatabaseBasedPersistSe
public Collection<MetaDataVersion> persistConfig(final String
databaseName, final Map<String, DataSourceProperties> dataSourceConfigs) {
Collection<MetaDataVersion> result = new LinkedList<>();
for (Entry<String, DataSourceProperties> entry :
dataSourceConfigs.entrySet()) {
- if (Strings.isNullOrEmpty(getDataSourceActiveVersion(databaseName,
entry.getKey()))) {
-
repository.persist(NewDatabaseMetaDataNode.getDataSourceActiveVersionNode(databaseName,
entry.getKey()), DEFAULT_VERSION);
- }
List<String> versions =
repository.getChildrenKeys(NewDatabaseMetaDataNode.getDataSourceVersionsNode(databaseName,
entry.getKey()));
String nextActiveVersion = versions.isEmpty() ? DEFAULT_VERSION :
String.valueOf(Integer.parseInt(versions.get(0)) + 1);
repository.persist(NewDatabaseMetaDataNode.getDataSourceNodeWithVersion(databaseName,
entry.getKey(), nextActiveVersion),
YamlEngine.marshal(new
YamlDataSourceConfigurationSwapper().swapToMap(entry.getValue())));
+ if (Strings.isNullOrEmpty(getDataSourceActiveVersion(databaseName,
entry.getKey()))) {
+
repository.persist(NewDatabaseMetaDataNode.getDataSourceActiveVersionNode(databaseName,
entry.getKey()), DEFAULT_VERSION);
+ }
result.add(new
MetaDataVersion(NewDatabaseMetaDataNode.getDataSourceNode(databaseName,
entry.getKey()),
getDataSourceActiveVersion(databaseName, entry.getKey()),
nextActiveVersion));
}
diff --git
a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDatabaseRulePersistService.java
b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDatabaseRulePersistService.java
index 22675179cf2..e544a7995e6 100644
---
a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDatabaseRulePersistService.java
+++
b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/database/NewDatabaseRulePersistService.java
@@ -80,12 +80,12 @@ public final class NewDatabaseRulePersistService extends
AbstractPersistService
private Collection<MetaDataVersion> persistDataNodes(final String
databaseName, final String ruleName, final Collection<YamlDataNode> dataNodes) {
Collection<MetaDataVersion> result = new LinkedList<>();
for (YamlDataNode each : dataNodes) {
- if (Strings.isNullOrEmpty(getActiveVersion(databaseName, ruleName,
each.getKey()))) {
-
repository.persist(NewDatabaseMetaDataNode.getDatabaseRuleActiveVersionNode(databaseName,
ruleName, each.getKey()), DEFAULT_VERSION);
- }
List<String> versions =
repository.getChildrenKeys(NewDatabaseMetaDataNode.getDatabaseRuleVersionsNode(databaseName,
ruleName, each.getKey()));
String nextVersion = versions.isEmpty() ? DEFAULT_VERSION :
String.valueOf(Integer.parseInt(versions.get(0)) + 1);
repository.persist(NewDatabaseMetaDataNode.getDatabaseRuleVersionNode(databaseName,
ruleName, each.getKey(), nextVersion), each.getValue());
+ if (Strings.isNullOrEmpty(getActiveVersion(databaseName, ruleName,
each.getKey()))) {
+
repository.persist(NewDatabaseMetaDataNode.getDatabaseRuleActiveVersionNode(databaseName,
ruleName, each.getKey()), DEFAULT_VERSION);
+ }
result.add(new
MetaDataVersion(NewDatabaseMetaDataNode.getDatabaseRuleNode(databaseName,
ruleName, each.getKey()), getActiveVersion(databaseName, ruleName,
each.getKey()), nextVersion));
}
return result;
diff --git
a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewGlobalRulePersistService.java
b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewGlobalRulePersistService.java
index 8b108d9f0b2..a9013bb6bdd 100644
---
a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewGlobalRulePersistService.java
+++
b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/config/global/NewGlobalRulePersistService.java
@@ -85,13 +85,13 @@ public final class NewGlobalRulePersistService extends
AbstractPersistService im
private Collection<MetaDataVersion> persistDataNodes(final
Collection<YamlDataNode> dataNodes) {
Collection<MetaDataVersion> result = new LinkedList<>();
for (YamlDataNode each : dataNodes) {
- if (Strings.isNullOrEmpty(getActiveVersion(each.getKey()))) {
-
repository.persist(NewGlobalNode.getGlobalRuleActiveVersionNode(each.getKey()),
DEFAULT_VERSION);
- }
List<String> versions =
repository.getChildrenKeys(NewGlobalNode.getGlobalRuleVersionsNode(each.getKey()));
String nextActiveVersion = versions.isEmpty() ? DEFAULT_VERSION :
String.valueOf(Integer.parseInt(versions.get(0)) + 1);
String persistKey =
NewGlobalNode.getGlobalRuleVersionNode(each.getKey(), nextActiveVersion);
repository.persist(persistKey, each.getValue());
+ if
(Strings.isNullOrEmpty(getActiveVersion(NewGlobalNode.getGlobalRuleActiveVersionNode(each.getKey()))))
{
+
repository.persist(NewGlobalNode.getGlobalRuleActiveVersionNode(each.getKey()),
DEFAULT_VERSION);
+ }
result.add(new MetaDataVersion(persistKey,
NewGlobalNode.getGlobalRuleActiveVersionNode(each.getKey()),
nextActiveVersion));
}
return result;
diff --git
a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/schema/NewTableMetaDataPersistService.java
b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/schema/NewTableMetaDataPersistService.java
index e0d48b362eb..3d83d9400ac 100644
---
a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/schema/NewTableMetaDataPersistService.java
+++
b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/schema/NewTableMetaDataPersistService.java
@@ -51,13 +51,13 @@ public final class NewTableMetaDataPersistService
implements SchemaMetaDataPersi
public void persist(final String databaseName, final String schemaName,
final Map<String, ShardingSphereTable> tables) {
for (Entry<String, ShardingSphereTable> entry : tables.entrySet()) {
String tableName = entry.getKey().toLowerCase();
- if
(Strings.isNullOrEmpty(repository.getDirectly(NewDatabaseMetaDataNode.getTableActiveVersionNode(databaseName,
schemaName, tableName)))) {
-
repository.persist(NewDatabaseMetaDataNode.getTableActiveVersionNode(databaseName,
schemaName, tableName), DEFAULT_VERSION);
- }
List<String> versions =
repository.getChildrenKeys(NewDatabaseMetaDataNode.getTableVersionsNode(databaseName,
schemaName, tableName));
repository.persist(NewDatabaseMetaDataNode.getTableVersionNode(databaseName,
schemaName, tableName, versions.isEmpty()
? DEFAULT_VERSION
: String.valueOf(Integer.parseInt(versions.get(0)) + 1)),
YamlEngine.marshal(new
YamlTableSwapper().swapToYamlConfiguration(entry.getValue())));
+ if
(Strings.isNullOrEmpty(repository.getDirectly(NewDatabaseMetaDataNode.getTableActiveVersionNode(databaseName,
schemaName, tableName)))) {
+
repository.persist(NewDatabaseMetaDataNode.getTableActiveVersionNode(databaseName,
schemaName, tableName), DEFAULT_VERSION);
+ }
}
}
@@ -66,13 +66,13 @@ public final class NewTableMetaDataPersistService
implements SchemaMetaDataPersi
Collection<MetaDataVersion> result = new LinkedList<>();
for (Entry<String, ShardingSphereTable> entry : tables.entrySet()) {
String tableName = entry.getKey().toLowerCase();
- if (Strings.isNullOrEmpty(getActiveVersion(databaseName,
schemaName, tableName))) {
-
repository.persist(NewDatabaseMetaDataNode.getTableActiveVersionNode(databaseName,
schemaName, tableName), DEFAULT_VERSION);
- }
List<String> versions =
repository.getChildrenKeys(NewDatabaseMetaDataNode.getTableVersionsNode(databaseName,
schemaName, tableName));
String nextActiveVersion = versions.isEmpty() ? DEFAULT_VERSION :
String.valueOf(Integer.parseInt(versions.get(0)) + 1);
repository.persist(NewDatabaseMetaDataNode.getTableVersionNode(databaseName,
schemaName, tableName, nextActiveVersion),
YamlEngine.marshal(new
YamlTableSwapper().swapToYamlConfiguration(entry.getValue())));
+ if (Strings.isNullOrEmpty(getActiveVersion(databaseName,
schemaName, tableName))) {
+
repository.persist(NewDatabaseMetaDataNode.getTableActiveVersionNode(databaseName,
schemaName, tableName), DEFAULT_VERSION);
+ }
result.add(new
MetaDataVersion(NewDatabaseMetaDataNode.getTableNode(databaseName, schemaName,
tableName),
getActiveVersion(databaseName, schemaName, tableName),
nextActiveVersion));
}
diff --git
a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/schema/NewViewMetaDataPersistService.java
b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/schema/NewViewMetaDataPersistService.java
index 34ab8649eeb..ce42cb6e3f9 100644
---
a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/schema/NewViewMetaDataPersistService.java
+++
b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/service/schema/NewViewMetaDataPersistService.java
@@ -51,13 +51,13 @@ public final class NewViewMetaDataPersistService implements
SchemaMetaDataPersis
public void persist(final String databaseName, final String schemaName,
final Map<String, ShardingSphereView> views) {
for (Entry<String, ShardingSphereView> entry : views.entrySet()) {
String viewName = entry.getKey().toLowerCase();
- if
(Strings.isNullOrEmpty(repository.getDirectly(NewDatabaseMetaDataNode.getViewActiveVersionNode(databaseName,
schemaName, viewName)))) {
-
repository.persist(NewDatabaseMetaDataNode.getViewActiveVersionNode(databaseName,
schemaName, viewName), DEFAULT_VERSION);
- }
List<String> versions =
repository.getChildrenKeys(NewDatabaseMetaDataNode.getViewVersionsNode(databaseName,
schemaName, viewName));
repository.persist(NewDatabaseMetaDataNode.getViewVersionNode(databaseName,
schemaName, viewName, versions.isEmpty()
? DEFAULT_VERSION
: String.valueOf(Integer.parseInt(versions.get(0)) + 1)),
YamlEngine.marshal(new
YamlViewSwapper().swapToYamlConfiguration(entry.getValue())));
+ if
(Strings.isNullOrEmpty(repository.getDirectly(NewDatabaseMetaDataNode.getViewActiveVersionNode(databaseName,
schemaName, viewName)))) {
+
repository.persist(NewDatabaseMetaDataNode.getViewActiveVersionNode(databaseName,
schemaName, viewName), DEFAULT_VERSION);
+ }
}
}
@@ -66,15 +66,15 @@ public final class NewViewMetaDataPersistService implements
SchemaMetaDataPersis
Collection<MetaDataVersion> result = new LinkedList<>();
for (Entry<String, ShardingSphereView> entry : views.entrySet()) {
String viewName = entry.getKey().toLowerCase();
- if (Strings.isNullOrEmpty(getActiveVersion(databaseName,
schemaName, viewName))) {
-
repository.persist(NewDatabaseMetaDataNode.getViewActiveVersionNode(databaseName,
schemaName, viewName), DEFAULT_VERSION);
- }
List<String> versions =
repository.getChildrenKeys(NewDatabaseMetaDataNode.getViewVersionsNode(databaseName,
schemaName, viewName));
String nextActiveVersion =
NewDatabaseMetaDataNode.getViewVersionNode(databaseName, schemaName, viewName,
versions.isEmpty()
? DEFAULT_VERSION
: String.valueOf(Integer.parseInt(versions.get(0)) + 1));
repository.persist(NewDatabaseMetaDataNode.getViewVersionNode(databaseName,
schemaName, viewName, nextActiveVersion),
YamlEngine.marshal(new
YamlViewSwapper().swapToYamlConfiguration(entry.getValue())));
+ if (Strings.isNullOrEmpty(getActiveVersion(databaseName,
schemaName, viewName))) {
+
repository.persist(NewDatabaseMetaDataNode.getViewActiveVersionNode(databaseName,
schemaName, viewName), DEFAULT_VERSION);
+ }
result.add(new
MetaDataVersion(NewDatabaseMetaDataNode.getViewNode(databaseName, schemaName,
viewName),
getActiveVersion(databaseName, schemaName, viewName),
nextActiveVersion));
}