Paul Lin created FLINK-28685:
--------------------------------
Summary: Optimize CatalogManager getTable implementation
Key: FLINK-28685
URL: https://issues.apache.org/jira/browse/FLINK-28685
Project: Flink
Issue Type: Improvement
Components: Table SQL / API
Affects Versions: 1.16.0
Reporter: Paul Lin
Currently, Catalog#getTable(ObjectPath) might be abused in CatalogManager.
CatalogManager gets an ObjectPath directly, instead of checking the existence
of the table first, which could surprise Catalog developers and may get
unexpected exceptions other than TableNotFoundExceptions.
```
private Optional<CatalogBaseTable> getUnresolvedTable(ObjectIdentifier
objectIdentifier) {
Catalog currentCatalog =
catalogs.get(objectIdentifier.getCatalogName());
ObjectPath objectPath = objectIdentifier.toObjectPath();
if (currentCatalog != null) {
try {
final CatalogBaseTable table =
currentCatalog.getTable(objectPath);
return Optional.of(table);
} catch (TableNotExistException e) {
// Ignore.
}
}
return Optional.empty();
}
```
--
This message was sent by Atlassian Jira
(v8.20.10#820010)