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 bcf2fa70859 Refactor TableMetaDataNodePath (#34561)
bcf2fa70859 is described below
commit bcf2fa7085979d817f2356551d410b8db13986bb
Author: Liang Zhang <[email protected]>
AuthorDate: Wed Feb 5 19:08:02 2025 +0800
Refactor TableMetaDataNodePath (#34561)
* Refactor TableMetaDataNodePath
* Refactor TableMetaDataNodePath
---
.../service/SchemaMetaDataPersistService.java | 2 +-
.../service/TableMetaDataPersistService.java | 2 +-
.../node/path/metadata/TableMetaDataNodePath.java | 38 ++++++++++------------
.../path/metadata/TableMetaDataNodePathTest.java | 4 +--
4 files changed, 22 insertions(+), 24 deletions(-)
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistService.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistService.java
index c71660d031c..e0d6e211e8d 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistService.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/SchemaMetaDataPersistService.java
@@ -52,7 +52,7 @@ public final class SchemaMetaDataPersistService {
* @param schemaName to be added schema name
*/
public void add(final String databaseName, final String schemaName) {
-
repository.persist(TableMetaDataNodePath.getMetaDataTablesPath(databaseName,
schemaName), "");
+
repository.persist(TableMetaDataNodePath.getTableRootPath(databaseName,
schemaName), "");
}
/**
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistService.java
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistService.java
index 4dfc9fe9d35..e6598e8b56f 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistService.java
+++
b/mode/core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/metadata/service/TableMetaDataPersistService.java
@@ -53,7 +53,7 @@ public final class TableMetaDataPersistService {
* @return loaded tables
*/
public Collection<ShardingSphereTable> load(final String databaseName,
final String schemaName) {
- return
repository.getChildrenKeys(TableMetaDataNodePath.getMetaDataTablesPath(databaseName,
schemaName)).stream()
+ return
repository.getChildrenKeys(TableMetaDataNodePath.getTableRootPath(databaseName,
schemaName)).stream()
.map(each -> load(databaseName, schemaName,
each)).collect(Collectors.toList());
}
diff --git
a/mode/node/src/main/java/org/apache/shardingsphere/mode/node/path/metadata/TableMetaDataNodePath.java
b/mode/node/src/main/java/org/apache/shardingsphere/mode/node/path/metadata/TableMetaDataNodePath.java
index fd486f4a37b..3e7af84340b 100644
---
a/mode/node/src/main/java/org/apache/shardingsphere/mode/node/path/metadata/TableMetaDataNodePath.java
+++
b/mode/node/src/main/java/org/apache/shardingsphere/mode/node/path/metadata/TableMetaDataNodePath.java
@@ -32,8 +32,6 @@ public final class TableMetaDataNodePath {
private static final String ROOT_NODE = "/metadata";
- private static final String SCHEMAS_NODE = "schemas";
-
private static final String TABLES_NODE = "tables";
private static final String VERSIONS_NODE = "versions";
@@ -47,14 +45,26 @@ public final class TableMetaDataNodePath {
private static final String TABLE_SUFFIX = "/([\\w\\-]+)$";
/**
- * Get meta data tables path.
+ * Get table root path.
+ *
+ * @param databaseName database name
+ * @param schemaName schema name
+ * @return table root path
+ */
+ public static String getTableRootPath(final String databaseName, final
String schemaName) {
+ return String.join("/",
DatabaseMetaDataNodePath.getSchemaPath(databaseName, schemaName), TABLES_NODE);
+ }
+
+ /**
+ * Get table path.
*
* @param databaseName database name
* @param schemaName schema name
- * @return tables path
+ * @param tableName table name
+ * @return table path
*/
- public static String getMetaDataTablesPath(final String databaseName,
final String schemaName) {
- return String.join("/", ROOT_NODE, databaseName, SCHEMAS_NODE,
schemaName, TABLES_NODE);
+ public static String getTablePath(final String databaseName, final String
schemaName, final String tableName) {
+ return String.join("/", getTableRootPath(databaseName, schemaName),
tableName);
}
/**
@@ -66,7 +76,7 @@ public final class TableMetaDataNodePath {
* @return tables active version path
*/
public static String getTableActiveVersionPath(final String databaseName,
final String schemaName, final String tableName) {
- return String.join("/", ROOT_NODE, databaseName, SCHEMAS_NODE,
schemaName, TABLES_NODE, tableName, ACTIVE_VERSION_NODE);
+ return String.join("/", getTablePath(databaseName, schemaName,
tableName), ACTIVE_VERSION_NODE);
}
/**
@@ -78,7 +88,7 @@ public final class TableMetaDataNodePath {
* @return tables versions path
*/
public static String getTableVersionsPath(final String databaseName, final
String schemaName, final String tableName) {
- return String.join("/", ROOT_NODE, databaseName, SCHEMAS_NODE,
schemaName, TABLES_NODE, tableName, VERSIONS_NODE);
+ return String.join("/", getTablePath(databaseName, schemaName,
tableName), VERSIONS_NODE);
}
/**
@@ -94,18 +104,6 @@ public final class TableMetaDataNodePath {
return String.join("/", getTableVersionsPath(databaseName, schemaName,
tableName), version);
}
- /**
- * Get table path.
- *
- * @param databaseName database name
- * @param schemaName schema name
- * @param tableName table name
- * @return table path
- */
- public static String getTablePath(final String databaseName, final String
schemaName, final String tableName) {
- return String.join("/", ROOT_NODE, databaseName, SCHEMAS_NODE,
schemaName, TABLES_NODE, tableName);
- }
-
/**
* Get table name by active version path.
*
diff --git
a/mode/node/src/test/java/org/apache/shardingsphere/mode/node/path/metadata/TableMetaDataNodePathTest.java
b/mode/node/src/test/java/org/apache/shardingsphere/mode/node/path/metadata/TableMetaDataNodePathTest.java
index 54d97f1b266..f588f8108e2 100644
---
a/mode/node/src/test/java/org/apache/shardingsphere/mode/node/path/metadata/TableMetaDataNodePathTest.java
+++
b/mode/node/src/test/java/org/apache/shardingsphere/mode/node/path/metadata/TableMetaDataNodePathTest.java
@@ -29,8 +29,8 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
class TableMetaDataNodePathTest {
@Test
- void assertGetMetaDataTablesPath() {
- assertThat(TableMetaDataNodePath.getMetaDataTablesPath("foo_db",
"foo_schema"), is("/metadata/foo_db/schemas/foo_schema/tables"));
+ void assertGetTableRootPath() {
+ assertThat(TableMetaDataNodePath.getTableRootPath("foo_db",
"foo_schema"), is("/metadata/foo_db/schemas/foo_schema/tables"));
}
@Test