Package io.trino.plugin.iceberg.catalog
Class AbstractTrinoCatalog
java.lang.Object
io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
- All Implemented Interfaces:
TrinoCatalog
- Direct Known Subclasses:
TrinoGlueCatalog,TrinoHiveCatalog,TrinoJdbcCatalog,TrinoNessieCatalog
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final Stringprotected final IcebergTableOperationsProviderprotected static final Stringstatic final String -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractTrinoCatalog(CatalogName catalogName, TypeManager typeManager, IcebergTableOperationsProvider tableOperationsProvider, boolean useUniqueTableLocation) -
Method Summary
Modifier and TypeMethodDescriptioncreateMaterializedViewProperties(ConnectorSession session, SchemaTableName storageTableName) protected SchemaTableNamecreateMaterializedViewStorageTable(ConnectorSession session, SchemaTableName viewName, ConnectorMaterializedViewDefinition definition) protected StringcreateNewTableName(String baseTableName) protected voiddeleteTableDirectory(TrinoFileSystem fileSystem, SchemaTableName schemaTableName, String tableLocation) protected abstract Optional<ConnectorMaterializedViewDefinition>doGetMaterializedView(ConnectorSession session, SchemaTableName schemaViewName) getMaterializedView(ConnectorSession session, SchemaTableName schemaViewName) protected ConnectorMaterializedViewDefinitiongetMaterializedViewDefinition(org.apache.iceberg.Table icebergTable, Optional<String> owner, String viewOriginalText, SchemaTableName storageTableName) getViews(ConnectorSession session, Optional<String> namespace) protected org.apache.iceberg.TransactionnewCreateTableTransaction(ConnectorSession session, SchemaTableName schemaTableName, org.apache.iceberg.Schema schema, org.apache.iceberg.PartitionSpec partitionSpec, org.apache.iceberg.SortOrder sortOrder, String location, Map<String, String> properties, Optional<String> owner) protected List<ConnectorMaterializedViewDefinition.Column>voidupdateColumnComment(ConnectorSession session, SchemaTableName schemaTableName, ColumnIdentity columnIdentity, Optional<String> comment) voidupdateTableComment(ConnectorSession session, SchemaTableName schemaTableName, Optional<String> comment) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.trino.plugin.iceberg.catalog.TrinoCatalog
createMaterializedView, createNamespace, createView, defaultTableLocation, dropCorruptedTable, dropMaterializedView, dropNamespace, dropTable, dropView, getNamespacePrincipal, getView, listMaterializedViews, listNamespaces, listTables, listViews, loadNamespaceMetadata, loadTable, namespaceExists, newCreateTableTransaction, redirectTable, registerTable, renameMaterializedView, renameNamespace, renameTable, renameView, setNamespacePrincipal, setTablePrincipal, setViewPrincipal, streamRelationColumns, streamRelationComments, tryGetColumnMetadata, unregisterTable, updateMaterializedViewColumnComment, updateViewColumnComment, updateViewComment
-
Field Details
-
TRINO_CREATED_BY_VALUE
- See Also:
-
TRINO_CREATED_BY
- See Also:
-
PRESTO_QUERY_ID_NAME
- See Also:
-
tableOperationsProvider
-
-
Constructor Details
-
AbstractTrinoCatalog
protected AbstractTrinoCatalog(CatalogName catalogName, TypeManager typeManager, IcebergTableOperationsProvider tableOperationsProvider, boolean useUniqueTableLocation)
-
-
Method Details
-
updateTableComment
public void updateTableComment(ConnectorSession session, SchemaTableName schemaTableName, Optional<String> comment) - Specified by:
updateTableCommentin interfaceTrinoCatalog
-
updateColumnComment
public void updateColumnComment(ConnectorSession session, SchemaTableName schemaTableName, ColumnIdentity columnIdentity, Optional<String> comment) - Specified by:
updateColumnCommentin interfaceTrinoCatalog
-
getViews
public Map<SchemaTableName,ConnectorViewDefinition> getViews(ConnectorSession session, Optional<String> namespace) - Specified by:
getViewsin interfaceTrinoCatalog
-
getMaterializedView
public Optional<ConnectorMaterializedViewDefinition> getMaterializedView(ConnectorSession session, SchemaTableName schemaViewName) - Specified by:
getMaterializedViewin interfaceTrinoCatalog
-
doGetMaterializedView
protected abstract Optional<ConnectorMaterializedViewDefinition> doGetMaterializedView(ConnectorSession session, SchemaTableName schemaViewName) -
newCreateTableTransaction
protected org.apache.iceberg.Transaction newCreateTableTransaction(ConnectorSession session, SchemaTableName schemaTableName, org.apache.iceberg.Schema schema, org.apache.iceberg.PartitionSpec partitionSpec, org.apache.iceberg.SortOrder sortOrder, String location, Map<String, String> properties, Optional<String> owner) -
createNewTableName
-
deleteTableDirectory
protected void deleteTableDirectory(TrinoFileSystem fileSystem, SchemaTableName schemaTableName, String tableLocation) -
createMaterializedViewStorageTable
protected SchemaTableName createMaterializedViewStorageTable(ConnectorSession session, SchemaTableName viewName, ConnectorMaterializedViewDefinition definition) -
getMaterializedViewDefinition
protected ConnectorMaterializedViewDefinition getMaterializedViewDefinition(org.apache.iceberg.Table icebergTable, Optional<String> owner, String viewOriginalText, SchemaTableName storageTableName) -
toSpiMaterializedViewColumns
protected List<ConnectorMaterializedViewDefinition.Column> toSpiMaterializedViewColumns(List<IcebergMaterializedViewDefinition.Column> columns) -
createMaterializedViewProperties
protected Map<String,String> createMaterializedViewProperties(ConnectorSession session, SchemaTableName storageTableName)
-