Skip to content

Commit

Permalink
Refactor usage of DatabaseStatistics.schemaStatisticsMap (#34435)
Browse files Browse the repository at this point in the history
* Refactor usage of DatabaseStatistics.schemaStatisticsMap

* Remove useless YamlShardingSphereTableStatisticsSwapper
  • Loading branch information
terrymanu authored Jan 23, 2025
1 parent 0b1ab34 commit 3151cd7
Show file tree
Hide file tree
Showing 7 changed files with 10 additions and 103 deletions.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ class ShardingSphereDefaultStatisticsBuilderTest {
void assertBuild() {
DatabaseStatistics databaseStatistics = new ShardingSphereDefaultStatisticsBuilder().build(mockDatabase());
assertTrue(databaseStatistics.getSchemaStatisticsMap().containsKey("shardingsphere"));
assertTrue(databaseStatistics.getSchemaStatisticsMap().get("shardingsphere").getTableStatisticsMap().containsKey("cluster_information"));
assertTrue(databaseStatistics.getSchemaStatisticsMap().get("shardingsphere").getTableStatisticsMap().containsKey("sharding_table_statistics"));
assertTrue(databaseStatistics.getSchemaStatistics("shardingsphere").containsTableStatistics("cluster_information"));
assertTrue(databaseStatistics.getSchemaStatistics("shardingsphere").containsTableStatistics("sharding_table_statistics"));
}

private ShardingSphereDatabase mockDatabase() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@ void assertAppend() {
ShardingSphereDatabase database = mockDatabase();
DatabaseStatistics databaseStatistics = new ShardingSphereDefaultStatisticsBuilder().build(database);
new PostgreSQLStatisticsAppender().append(databaseStatistics, database);
assertTrue(databaseStatistics.getSchemaStatisticsMap().containsKey("pg_catalog"));
assertTrue(databaseStatistics.getSchemaStatisticsMap().get("pg_catalog").getTableStatisticsMap().containsKey("pg_class"));
assertTrue(databaseStatistics.containsSchemaStatistics("pg_catalog"));
assertTrue(databaseStatistics.getSchemaStatistics("pg_catalog").containsTableStatistics("pg_class"));
}

private ShardingSphereDatabase mockDatabase() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ public ShardingSphereStatistics load(final ShardingSphereMetaData metaData) {
}
ShardingSphereStatistics result = new ShardingSphereStatistics();
for (String each : databaseNames.stream().filter(metaData::containsDatabase).collect(Collectors.toList())) {
result.getDatabaseStatisticsMap().put(each, load(metaData.getDatabase(each)));
result.putDatabaseStatistics(each, load(metaData.getDatabase(each)));
}
return result;
}
Expand All @@ -77,7 +77,7 @@ private SchemaStatistics load(final String databaseName, final ShardingSphereSch
SchemaStatistics result = new SchemaStatistics();
for (String each : repository.getChildrenKeys(ShardingSphereStatisticsNodePath.getTableRootPath(databaseName, schema.getName())).stream().filter(schema::containsTable)
.collect(Collectors.toList())) {
result.getTableStatisticsMap().put(each, tableRowDataPersistService.load(databaseName, schema.getName(), schema.getTable(each)));
result.putTableStatistics(each, tableRowDataPersistService.load(databaseName, schema.getName(), schema.getTable(each)));

}
return result;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,9 +67,9 @@ private ShardingSphereStatistics mockStatistics() {
ShardingSphereStatistics result = new ShardingSphereStatistics();
DatabaseStatistics databaseStatistics = new DatabaseStatistics();
SchemaStatistics schemaStatistics = new SchemaStatistics();
databaseStatistics.getSchemaStatisticsMap().put("foo_schema", schemaStatistics);
databaseStatistics.putSchemaStatistics("foo_schema", schemaStatistics);
TableStatistics tableStatistics = new TableStatistics("test_table");
schemaStatistics.getTableStatisticsMap().put("test_table", tableStatistics);
schemaStatistics.putTableStatistics("test_table", tableStatistics);
result.getDatabaseStatisticsMap().put("foo_db", databaseStatistics);
return result;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ private Collection<String> getToBeDroppedResourceNames(final String databaseName
}

private void afterStorageUnitsAltered(final String databaseName, final MetaDataContexts originalMetaDataContexts, final MetaDataContexts reloadMetaDataContexts) {
Optional.ofNullable(reloadMetaDataContexts.getStatistics().getDatabaseStatisticsMap().get(databaseName))
Optional.ofNullable(reloadMetaDataContexts.getStatistics().getDatabaseStatistics(databaseName))
.ifPresent(optional -> optional.getSchemaStatisticsMap().forEach((schemaName, schemaStatistics) -> metaDataPersistService.getShardingSphereStatisticsPersistService()
.persist(originalMetaDataContexts.getMetaData().getDatabase(databaseName), schemaName, schemaStatistics)));
metaDataPersistService.persistReloadDatabaseByAlter(databaseName, reloadMetaDataContexts.getMetaData().getDatabase(databaseName),
Expand All @@ -193,7 +193,7 @@ private void afterStorageUnitsAltered(final String databaseName, final MetaDataC
private void afterStorageUnitsDropped(final String databaseName, final MetaDataContexts originalMetaDataContexts, final MetaDataContexts reloadMetaDataContexts) {
reloadMetaDataContexts.getMetaData().getDatabase(databaseName).getAllSchemas().forEach(each -> metaDataPersistService.getDatabaseMetaDataFacade()
.getSchema().alterByRuleDropped(reloadMetaDataContexts.getMetaData().getDatabase(databaseName).getName(), each));
Optional.ofNullable(reloadMetaDataContexts.getStatistics().getDatabaseStatisticsMap().get(databaseName))
Optional.ofNullable(reloadMetaDataContexts.getStatistics().getDatabaseStatistics(databaseName))
.ifPresent(optional -> optional.getSchemaStatisticsMap().forEach((schemaName, schemaStatistics) -> metaDataPersistService.getShardingSphereStatisticsPersistService()
.persist(originalMetaDataContexts.getMetaData().getDatabase(databaseName), schemaName, schemaStatistics)));
metaDataPersistService.persistReloadDatabaseByDrop(databaseName, reloadMetaDataContexts.getMetaData().getDatabase(databaseName),
Expand Down

0 comments on commit 3151cd7

Please sign in to comment.