TableCatalog¶
TableCatalog is an extension of the CatalogPlugin abstraction for table catalogs.
Contract¶
Alter Table¶
Changes (alters) a table based on the given TableChanges
Used when:
- AlterTableExec physical command is executed
DelegatingCatalogExtensionis requested to alterTable
Create Table¶
Table createTable(
Identifier ident,
Column[] columns,
Transform[] partitions,
Map<String, String> properties)
See:
Used when the following commands are executed:
CreateTableExecReplaceTableExec- CreateTableAsSelectExec
ReplaceTableAsSelectExec
Drop Table¶
Used when the following commands are executed:
DropTableExecReplaceTableExec- CreateTableAsSelectExec
ReplaceTableAsSelectExec
List Tables¶
Used when:
DelegatingCatalogExtensionis requested to listTables- ShowTablesExec is executed
Load Table¶
Table loadTable(
Identifier ident)
Table loadTable(
Identifier ident,
long timestamp)
Table loadTable(
Identifier ident,
Set<TableWritePrivilege> writePrivileges) // (1)!
Table loadTable(
Identifier ident,
String version)
- Added in 3.5.3
Used when:
CatalogV2Utilis requested to load a tableDataFrameWriteris requested to insertInto, saveInternal, saveAsTableAtomicCreateTableAsSelectExecphysical operator is executedAtomicReplaceTableAsSelectExecphysical operator is executed- CreateTableAsSelectExec physical operator is executed
ReplaceTableAsSelectExecphysical operator is executedDelegatingCatalogExtensionis requested to load a tableRenameTableExecphysical operator is executedAtomicReplaceTableExecphysical operator is executedReplaceTableExecphysical operator is executedV2SessionCatalogis requested to dropTableInternal, loadTable, dropTable, renameTableDataStreamWriteris requested totoTable
Rename Table¶
Used when the following commands are executed:
RenameTableExec
Table Exists¶
Used when:
- The following commands are executed:
AtomicCreateTableAsSelectExecAtomicReplaceTableAsSelectExecAtomicReplaceTableExec- CreateTableAsSelectExec
CreateTableExecDropTableExecReplaceTableAsSelectExec-
ReplaceTableExec -
V2SessionCatalogis requested to renameTable