Skip to content
Permalink
Browse files
Revert recent changes to organization of retrievals
sualeh committed Sep 9, 2022
1 parent 501ba55 commit 55a55de
Showing 1 changed file with 13 additions and 19 deletions.
.submit();
}
private void crawlTables() throws Exception {
final LimitOptions limitOptions = options.getLimitOptions();
if (!(infoLevel.is(retrieveTables) && !limitOptions.isExcludeAll(ruleForTableInclusion))) {
LOGGER.log(Level.INFO, "Not retrieving tables, since this was not requested");
return;
}
final TableRetriever retriever = new TableRetriever(retrieverConnection, catalog, options);
final TableColumnRetriever columnRetriever =
new TableColumnRetriever(retrieverConnection, catalog, options);
final PrimaryKeyRetriever pkRetriever =
new PrimaryKeyRetriever(retrieverConnection, catalog, options);
final ForeignKeyRetriever fkRetriever =
new ForeignKeyRetriever(retrieverConnection, catalog, options);
final TableConstraintRetriever constraintRetriever =
new TableConstraintRetriever(retrieverConnection, catalog, options);
final TableExtRetriever retrieverExtra =
new TableExtRetriever(retrieverConnection, catalog, options);
final TablePrivilegeRetriever retrieverPrivilege =
new TablePrivilegeRetriever(retrieverConnection, catalog, options);
final IndexRetriever indexRetriever = new IndexRetriever(retrieverConnection, catalog, options);
taskRunner
.add(
retrieveTables,
() -> {
LOGGER.log(Level.INFO, "Retrieving table names");
retriever.retrieveTables(
limitOptions.getTableNamePattern(),
limitOptions.getTableTypes(),
limitOptions.get(ruleForTableInclusion));
})
.submit();
final NamedObjectList<MutableTable> allTables = catalog.getAllTables();
LOGGER.log(Level.INFO, new StringFormat("Retrieved %d tables", allTables.size()));
if (allTables.isEmpty()) {
return;
}
taskRunner
.add(
retrieveTableColumns,
() -> {
if (!limitOptions.isExcludeAll(ruleForColumnInclusion)) {
columnRetriever.retrieveTableColumns(
allTables, limitOptions.get(ruleForColumnInclusion));
}
})
.submit();
taskRunner
.add(
retrievePrimaryKeys,
() -> pkRetriever.retrievePrimaryKeys(allTables),
retrieveTableColumns)
.add(retrieveIndexes, () -> indexRetriever.retrieveIndexes(allTables), retrieveTableColumns)
.add(
retrieveForeignKeys,
() -> fkRetriever.retrieveForeignKeys(allTables),
retrieveTableColumns)
.submit();

taskRunner
.add(retrieveIndexes, () -> indexRetriever.retrieveIndexes(allTables), retrieveTableColumns)
.add(
retrieveTableConstraints,
constraintRetriever::retrieveTableConstraints,
retrieveTableColumns)
.add(retrieveTriggerInformation, retrieverExtra::retrieveTriggerInformation)
.submit();
taskRunner
.add(
"filterAndSortTables",
() -> {
// Filter the list of tables based on grep criteria, and
// parent-child relationships
catalog.reduce(Table.class, getTableReducer(options));
// Sort the remaining tables
final TablesGraph tablesGraph = new TablesGraph(allTables);
tablesGraph.setTablesSortIndexes();
})
.add(
"matchTableConstraints",
() -> constraintRetriever.matchTableConstraints(allTables),
retrieveTableColumns)
.submit();

taskRunner
.add(
retrieveTableDefinitionsInformation,
retrieverExtra::retrieveTableDefinitions,
retrieveTables)
.add(
retrieveAdditionalTableAttributes,
() -> retrieverExtra.retrieveAdditionalTableAttributes(),
retrieveTables)
.add(
retrieveTablePrivileges,
() -> retrieverPrivilege.retrieveTablePrivileges(),
retrieveTables)
.submit();

taskRunner

COLLECTOR-SAHAB / differentiating test: TableTypesTest

taskRunner.taskRunner.taskResults.count = 20 only occurs in the original version.

taskRunner.taskRunner.taskResults.count = 17 only occurs in the patched version.

.add(
retrieveTableConstraintDefinitions,
constraintRetriever::retrieveTableConstraintDefinitions,
retrieveTableConstraints)
.add(
retrieveTableConstraintInformation,
constraintRetriever::retrieveTableConstraintInformation,
retrieveTableConstraints)
.add(retrieveViewInformation, retrieverExtra::retrieveViewInformation, retrieveTables)
.add(retrieveViewTableUsage, retrieverExtra::retrieveViewTableUsage, retrieveTables)
.add(
retrieveTableDefinitionsInformation,
retrieverExtra::retrieveTableDefinitions,
retrieveTables)
.add(
retrieveIndexInformation,
() -> retrieverExtra.retrieveIndexInformation(),
retrieveIndexes)
.add(
retrieveAdditionalTableAttributes,
() -> retrieverExtra.retrieveAdditionalTableAttributes(),
retrieveTables)
.add(
retrieveTablePrivileges,
() -> retrieverPrivilege.retrieveTablePrivileges(),
retrieveTables)
.add(
retrieveTableColumnPrivileges,
retrieverPrivilege::retrieveTableColumnPrivileges,
retrieveTableColumns)
.add(
retrieveAdditionalColumnAttributes,
retrieverExtra::retrieveAdditionalColumnAttributes,
retrieveTableColumns)
.submit();
taskRunner
.add(
retrieveAdditionalColumnMetadata,
retrieverExtra::retrieveAdditionalColumnMetadata,
retrieveTableColumns)
.submit();
}
}

0 comments on commit 55a55de

Please sign in to comment.