Class TrinoJdbcCatalog
java.lang.Object
io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
io.trino.plugin.iceberg.catalog.jdbc.TrinoJdbcCatalog
- All Implemented Interfaces:
TrinoCatalog
-
Nested Class Summary
Nested classes/interfaces inherited from class io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
AbstractTrinoCatalog.MaterializedViewMayBeBeingRemovedException -
Field Summary
Fields inherited from class io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
PRESTO_QUERY_ID_NAME, tableOperationsProvider, TRINO_CREATED_BY, TRINO_CREATED_BY_VALUE -
Constructor Summary
ConstructorsConstructorDescriptionTrinoJdbcCatalog(CatalogName catalogName, TypeManager typeManager, IcebergTableOperationsProvider tableOperationsProvider, org.apache.iceberg.jdbc.JdbcCatalog jdbcCatalog, IcebergJdbcClient jdbcClient, TrinoFileSystemFactory fileSystemFactory, boolean useUniqueTableLocation, String defaultWarehouseDir) -
Method Summary
Modifier and TypeMethodDescriptionvoidcreateMaterializedView(ConnectorSession session, SchemaTableName schemaViewName, ConnectorMaterializedViewDefinition definition, boolean replace, boolean ignoreExisting) voidcreateNamespace(ConnectorSession session, String namespace, Map<String, Object> properties, TrinoPrincipal owner) voidcreateView(ConnectorSession session, SchemaTableName schemaViewName, ConnectorViewDefinition definition, boolean replace) defaultTableLocation(ConnectorSession session, SchemaTableName schemaTableName) protected Optional<ConnectorMaterializedViewDefinition>doGetMaterializedView(ConnectorSession session, SchemaTableName schemaViewName) voiddropCorruptedTable(ConnectorSession session, SchemaTableName schemaTableName) voiddropMaterializedView(ConnectorSession session, SchemaTableName schemaViewName) voiddropNamespace(ConnectorSession session, String namespace) voiddropTable(ConnectorSession session, SchemaTableName schemaTableName) voiddropView(ConnectorSession session, SchemaTableName schemaViewName) getMaterializedView(ConnectorSession session, SchemaTableName schemaViewName) getNamespacePrincipal(ConnectorSession session, String namespace) getView(ConnectorSession session, SchemaTableName viewIdentifier) getViews(ConnectorSession session, Optional<String> namespace) listMaterializedViews(ConnectorSession session, Optional<String> namespace) listNamespaces(ConnectorSession session) listTables(ConnectorSession session, Optional<String> namespace) listViews(ConnectorSession session, Optional<String> namespace) loadNamespaceMetadata(ConnectorSession session, String namespace) org.apache.iceberg.TableloadTable(ConnectorSession session, SchemaTableName schemaTableName) load an Iceberg tablebooleannamespaceExists(ConnectorSession session, String namespace) 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) redirectTable(ConnectorSession session, SchemaTableName tableName, String hiveCatalogName) voidregisterTable(ConnectorSession session, SchemaTableName tableName, org.apache.iceberg.TableMetadata tableMetadata) voidrenameMaterializedView(ConnectorSession session, SchemaTableName source, SchemaTableName target) voidrenameNamespace(ConnectorSession session, String source, String target) voidrenameTable(ConnectorSession session, SchemaTableName from, SchemaTableName to) voidrenameView(ConnectorSession session, SchemaTableName source, SchemaTableName target) voidsetNamespacePrincipal(ConnectorSession session, String namespace, TrinoPrincipal principal) voidsetTablePrincipal(ConnectorSession session, SchemaTableName schemaTableName, TrinoPrincipal principal) voidsetViewPrincipal(ConnectorSession session, SchemaTableName schemaViewName, TrinoPrincipal principal) streamRelationColumns(ConnectorSession session, Optional<String> namespace, UnaryOperator<Set<SchemaTableName>> relationFilter, Predicate<SchemaTableName> isRedirected) streamRelationComments(ConnectorSession session, Optional<String> namespace, UnaryOperator<Set<SchemaTableName>> relationFilter, Predicate<SchemaTableName> isRedirected) tryGetColumnMetadata(ConnectorSession session, List<SchemaTableName> tables) Bulk load column metadata.voidunregisterTable(ConnectorSession session, SchemaTableName tableName) voidupdateMaterializedViewColumnComment(ConnectorSession session, SchemaTableName schemaViewName, String columnName, Optional<String> comment) voidupdateViewColumnComment(ConnectorSession session, SchemaTableName schemaViewName, String columnName, Optional<String> comment) voidupdateViewComment(ConnectorSession session, SchemaTableName schemaViewName, Optional<String> comment) Methods inherited from class io.trino.plugin.iceberg.catalog.AbstractTrinoCatalog
createMaterializedViewProperties, createMaterializedViewStorageTable, createNewTableName, deleteTableDirectory, getMaterializedViewDefinition, newCreateTableTransaction, toSpiMaterializedViewColumns, updateColumnComment, updateTableComment
-
Constructor Details
-
TrinoJdbcCatalog
public TrinoJdbcCatalog(CatalogName catalogName, TypeManager typeManager, IcebergTableOperationsProvider tableOperationsProvider, org.apache.iceberg.jdbc.JdbcCatalog jdbcCatalog, IcebergJdbcClient jdbcClient, TrinoFileSystemFactory fileSystemFactory, boolean useUniqueTableLocation, String defaultWarehouseDir)
-
-
Method Details
-
namespaceExists
-
listNamespaces
-
loadNamespaceMetadata
-
getNamespacePrincipal
-
createNamespace
public void createNamespace(ConnectorSession session, String namespace, Map<String, Object> properties, TrinoPrincipal owner) -
dropNamespace
-
setNamespacePrincipal
public void setNamespacePrincipal(ConnectorSession session, String namespace, TrinoPrincipal principal) -
renameNamespace
-
listTables
-
streamRelationColumns
public Optional<Iterator<RelationColumnsMetadata>> streamRelationColumns(ConnectorSession session, Optional<String> namespace, UnaryOperator<Set<SchemaTableName>> relationFilter, Predicate<SchemaTableName> isRedirected) -
streamRelationComments
public Optional<Iterator<RelationCommentMetadata>> streamRelationComments(ConnectorSession session, Optional<String> namespace, UnaryOperator<Set<SchemaTableName>> relationFilter, Predicate<SchemaTableName> isRedirected) -
newCreateTableTransaction
public 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) -
registerTable
public void registerTable(ConnectorSession session, SchemaTableName tableName, org.apache.iceberg.TableMetadata tableMetadata) -
unregisterTable
-
dropTable
-
dropCorruptedTable
-
renameTable
-
loadTable
public org.apache.iceberg.Table loadTable(ConnectorSession session, SchemaTableName schemaTableName) Description copied from interface:TrinoCatalogload an Iceberg table- Parameters:
session- Trino sessionschemaTableName- Trino schema and table name- Returns:
- Iceberg table loaded
-
tryGetColumnMetadata
public Map<SchemaTableName,List<ColumnMetadata>> tryGetColumnMetadata(ConnectorSession session, List<SchemaTableName> tables) Description copied from interface:TrinoCatalogBulk load column metadata. The returned map may contain fewer entries then asked for. -
updateViewComment
public void updateViewComment(ConnectorSession session, SchemaTableName schemaViewName, Optional<String> comment) -
updateViewColumnComment
public void updateViewColumnComment(ConnectorSession session, SchemaTableName schemaViewName, String columnName, Optional<String> comment) -
defaultTableLocation
-
setTablePrincipal
public void setTablePrincipal(ConnectorSession session, SchemaTableName schemaTableName, TrinoPrincipal principal) -
createView
public void createView(ConnectorSession session, SchemaTableName schemaViewName, ConnectorViewDefinition definition, boolean replace) -
renameView
-
setViewPrincipal
public void setViewPrincipal(ConnectorSession session, SchemaTableName schemaViewName, TrinoPrincipal principal) -
dropView
-
listViews
-
getViews
public Map<SchemaTableName,ConnectorViewDefinition> getViews(ConnectorSession session, Optional<String> namespace) - Specified by:
getViewsin interfaceTrinoCatalog- Overrides:
getViewsin classAbstractTrinoCatalog
-
getView
public Optional<ConnectorViewDefinition> getView(ConnectorSession session, SchemaTableName viewIdentifier) -
listMaterializedViews
public List<SchemaTableName> listMaterializedViews(ConnectorSession session, Optional<String> namespace) -
doGetMaterializedView
protected Optional<ConnectorMaterializedViewDefinition> doGetMaterializedView(ConnectorSession session, SchemaTableName schemaViewName) - Specified by:
doGetMaterializedViewin classAbstractTrinoCatalog
-
createMaterializedView
public void createMaterializedView(ConnectorSession session, SchemaTableName schemaViewName, ConnectorMaterializedViewDefinition definition, boolean replace, boolean ignoreExisting) -
updateMaterializedViewColumnComment
public void updateMaterializedViewColumnComment(ConnectorSession session, SchemaTableName schemaViewName, String columnName, Optional<String> comment) -
dropMaterializedView
-
getMaterializedView
public Optional<ConnectorMaterializedViewDefinition> getMaterializedView(ConnectorSession session, SchemaTableName schemaViewName) - Specified by:
getMaterializedViewin interfaceTrinoCatalog- Overrides:
getMaterializedViewin classAbstractTrinoCatalog
-
renameMaterializedView
public void renameMaterializedView(ConnectorSession session, SchemaTableName source, SchemaTableName target) -
redirectTable
public Optional<CatalogSchemaTableName> redirectTable(ConnectorSession session, SchemaTableName tableName, String hiveCatalogName)
-