Package io.trino.plugin.iceberg.catalog
Class AbstractIcebergTableOperations
java.lang.Object
io.trino.plugin.iceberg.catalog.AbstractIcebergTableOperations
- All Implemented Interfaces:
IcebergTableOperations,org.apache.iceberg.TableOperations
- Direct Known Subclasses:
AbstractMetastoreTableOperations,GlueIcebergTableOperations
@NotThreadSafe
public abstract class AbstractIcebergTableOperations
extends Object
implements IcebergTableOperations
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.apache.iceberg.TableMetadataprotected Stringprotected final Stringprotected final org.apache.iceberg.io.FileIOprotected static final Stringprotected final ConnectorSessionprotected booleanprotected static final StorageFormatprotected final Stringprotected int -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractIcebergTableOperations(org.apache.iceberg.io.FileIO fileIo, ConnectorSession session, String database, String table, Optional<String> owner, Optional<String> location) -
Method Summary
Modifier and TypeMethodDescriptionvoidcommit(org.apache.iceberg.TableMetadata base, org.apache.iceberg.TableMetadata metadata) protected abstract voidcommitNewTable(org.apache.iceberg.TableMetadata metadata) protected abstract voidcommitToExistingTable(org.apache.iceberg.TableMetadata base, org.apache.iceberg.TableMetadata metadata) org.apache.iceberg.TableMetadatacurrent()protected abstract StringgetRefreshedLocation(boolean invalidateCaches) protected SchemaTableNamevoidinitializeFromMetadata(org.apache.iceberg.TableMetadata tableMetadata) org.apache.iceberg.io.FileIOio()org.apache.iceberg.io.LocationProvidermetadataFileLocation(String filename) protected static StringmetadataFileLocation(org.apache.iceberg.TableMetadata metadata, String filename) protected static StringnewTableMetadataFilePath(org.apache.iceberg.TableMetadata meta, int newVersion) protected static intparseVersion(String metadataLocation) org.apache.iceberg.TableMetadatarefresh()org.apache.iceberg.TableMetadatarefresh(boolean invalidateCaches) protected voidrefreshFromMetadataLocation(String newLocation) toHiveColumns(List<org.apache.iceberg.types.Types.NestedField> columns) protected StringwriteNewMetadata(org.apache.iceberg.TableMetadata metadata, int newVersion) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.iceberg.TableOperations
encryption, newSnapshotId, temp
-
Field Details
-
METADATA_FOLDER_NAME
- See Also:
-
STORAGE_FORMAT
-
session
-
database
-
tableName
-
owner
-
location
-
fileIo
protected final org.apache.iceberg.io.FileIO fileIo -
currentMetadata
protected org.apache.iceberg.TableMetadata currentMetadata -
currentMetadataLocation
-
shouldRefresh
protected boolean shouldRefresh -
version
protected int version
-
-
Constructor Details
-
AbstractIcebergTableOperations
-
-
Method Details
-
initializeFromMetadata
public void initializeFromMetadata(org.apache.iceberg.TableMetadata tableMetadata) - Specified by:
initializeFromMetadatain interfaceIcebergTableOperations
-
current
public org.apache.iceberg.TableMetadata current()- Specified by:
currentin interfaceorg.apache.iceberg.TableOperations
-
refresh
public org.apache.iceberg.TableMetadata refresh()- Specified by:
refreshin interfaceorg.apache.iceberg.TableOperations
-
refresh
public org.apache.iceberg.TableMetadata refresh(boolean invalidateCaches) -
commit
public void commit(@Nullable org.apache.iceberg.TableMetadata base, org.apache.iceberg.TableMetadata metadata) - Specified by:
commitin interfaceorg.apache.iceberg.TableOperations
-
getRefreshedLocation
-
commitNewTable
protected abstract void commitNewTable(org.apache.iceberg.TableMetadata metadata) -
commitToExistingTable
protected abstract void commitToExistingTable(org.apache.iceberg.TableMetadata base, org.apache.iceberg.TableMetadata metadata) -
io
public org.apache.iceberg.io.FileIO io()- Specified by:
ioin interfaceorg.apache.iceberg.TableOperations
-
metadataFileLocation
- Specified by:
metadataFileLocationin interfaceorg.apache.iceberg.TableOperations
-
locationProvider
public org.apache.iceberg.io.LocationProvider locationProvider()- Specified by:
locationProviderin interfaceorg.apache.iceberg.TableOperations
-
getSchemaTableName
-
writeNewMetadata
-
refreshFromMetadataLocation
-
newTableMetadataFilePath
protected static String newTableMetadataFilePath(org.apache.iceberg.TableMetadata meta, int newVersion) -
metadataFileLocation
-
parseVersion
-
toHiveColumns
-