Package io.trino.plugin.hive
Class HiveMetastoreClosure
- java.lang.Object
-
- io.trino.plugin.hive.HiveMetastoreClosure
-
public class HiveMetastoreClosure extends Object
-
-
Constructor Summary
Constructors Constructor Description HiveMetastoreClosure(HiveMetastore delegate)Do not use this directly.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidabortTransaction(long transactionId)voidacquireSharedReadLock(AcidTransactionOwner transactionOwner, String queryId, long transactionId, List<SchemaTableName> fullTables, List<HivePartition> partitions)voidacquireTableWriteLock(AcidTransactionOwner transactionOwner, String queryId, long transactionId, String dbName, String tableName, org.apache.hadoop.hive.metastore.api.DataOperationType operation, boolean isPartitioned)voidaddColumn(String databaseName, String tableName, String columnName, HiveType columnType, String columnComment)voidaddDynamicPartitions(String dbName, String tableName, List<String> partitionNames, long transactionId, long writeId, AcidOperation operation)voidaddPartitions(String databaseName, String tableName, List<PartitionWithStatistics> partitions)longallocateWriteId(String dbName, String tableName, long transactionId)voidalterPartition(String databaseName, String tableName, PartitionWithStatistics partition)voidalterPartitions(String dbName, String tableName, List<Partition> partitions, long writeId)voidalterTransactionalTable(Table table, long transactionId, long writeId, PrincipalPrivileges principalPrivileges)voidcommentColumn(String databaseName, String tableName, String columnName, Optional<String> comment)voidcommentTable(String databaseName, String tableName, Optional<String> comment)voidcommitTransaction(long transactionId)voidcreateDatabase(Database database)voidcreateRole(String role, String grantor)voidcreateTable(Table table, PrincipalPrivileges principalPrivileges)voiddropColumn(String databaseName, String tableName, String columnName)voiddropDatabase(String databaseName, boolean deleteData)voiddropPartition(String databaseName, String tableName, List<String> parts, boolean deleteData)voiddropRole(String role)voiddropTable(String databaseName, String tableName, boolean deleteData)List<String>getAllDatabases()List<String>getAllTables(String databaseName)List<String>getAllViews(String databaseName)Optional<String>getConfigValue(String name)Optional<Database>getDatabase(String databaseName)Optional<Partition>getPartition(String databaseName, String tableName, List<String> partitionValues)Optional<List<String>>getPartitionNamesByFilter(String databaseName, String tableName, List<String> columnNames, TupleDomain<String> partitionKeysFilter)Map<String,Optional<Partition>>getPartitionsByNames(String databaseName, String tableName, List<String> partitionNames)Map<String,PartitionStatistics>getPartitionStatistics(String databaseName, String tableName, Set<String> partitionNames)Set<ColumnStatisticType>getSupportedColumnStatistics(Type type)Optional<Table>getTable(String databaseName, String tableName)PartitionStatisticsgetTableStatistics(String databaseName, String tableName)List<String>getTablesWithParameter(String databaseName, String parameterKey, String parameterValue)StringgetValidWriteIds(List<SchemaTableName> tables, long currentTransactionId)voidgrantRoles(Set<String> roles, Set<HivePrincipal> grantees, boolean adminOption, HivePrincipal grantor)voidgrantTablePrivileges(String databaseName, String tableName, String tableOwner, HivePrincipal grantee, HivePrincipal grantor, Set<HivePrivilegeInfo.HivePrivilege> privileges, boolean grantOption)Set<RoleGrant>listGrantedPrincipals(String role)Set<RoleGrant>listRoleGrants(HivePrincipal principal)Set<String>listRoles()Set<HivePrivilegeInfo>listTablePrivileges(String databaseName, String tableName, Optional<String> tableOwner, Optional<HivePrincipal> principal)longopenTransaction(AcidTransactionOwner transactionOwner)voidrenameColumn(String databaseName, String tableName, String oldColumnName, String newColumnName)voidrenameDatabase(String databaseName, String newDatabaseName)voidrenameTable(String databaseName, String tableName, String newDatabaseName, String newTableName)voidreplaceTable(String databaseName, String tableName, Table newTable, PrincipalPrivileges principalPrivileges)voidrevokeRoles(Set<String> roles, Set<HivePrincipal> grantees, boolean adminOption, HivePrincipal grantor)voidrevokeTablePrivileges(String databaseName, String tableName, String tableOwner, HivePrincipal grantee, HivePrincipal grantor, Set<HivePrivilegeInfo.HivePrivilege> privileges, boolean grantOption)voidsendTransactionHeartbeat(long transactionId)voidsetDatabaseOwner(String databaseName, HivePrincipal principal)voidsetTableOwner(String databaseName, String tableName, HivePrincipal principal)voidupdatePartitionStatistics(String databaseName, String tableName, String partitionName, Function<PartitionStatistics,PartitionStatistics> update)voidupdatePartitionStatistics(String databaseName, String tableName, Map<String,Function<PartitionStatistics,PartitionStatistics>> updates)voidupdateTableStatistics(String databaseName, String tableName, AcidTransaction transaction, Function<PartitionStatistics,PartitionStatistics> update)voidupdateTableWriteId(String dbName, String tableName, long transactionId, long writeId, OptionalLong rowCountChange)
-
-
-
Constructor Detail
-
HiveMetastoreClosure
public HiveMetastoreClosure(HiveMetastore delegate)
Do not use this directly. Instead, the closure should be fetched from the current SemiTransactionalHiveMetastore, which can be fetched from the current HiveMetadata.
-
-
Method Detail
-
getSupportedColumnStatistics
public Set<ColumnStatisticType> getSupportedColumnStatistics(Type type)
-
getTableStatistics
public PartitionStatistics getTableStatistics(String databaseName, String tableName)
-
getPartitionStatistics
public Map<String,PartitionStatistics> getPartitionStatistics(String databaseName, String tableName, Set<String> partitionNames)
-
updateTableStatistics
public void updateTableStatistics(String databaseName, String tableName, AcidTransaction transaction, Function<PartitionStatistics,PartitionStatistics> update)
-
updatePartitionStatistics
public void updatePartitionStatistics(String databaseName, String tableName, String partitionName, Function<PartitionStatistics,PartitionStatistics> update)
-
updatePartitionStatistics
public void updatePartitionStatistics(String databaseName, String tableName, Map<String,Function<PartitionStatistics,PartitionStatistics>> updates)
-
getTablesWithParameter
public List<String> getTablesWithParameter(String databaseName, String parameterKey, String parameterValue)
-
createDatabase
public void createDatabase(Database database)
-
dropDatabase
public void dropDatabase(String databaseName, boolean deleteData)
-
setDatabaseOwner
public void setDatabaseOwner(String databaseName, HivePrincipal principal)
-
setTableOwner
public void setTableOwner(String databaseName, String tableName, HivePrincipal principal)
-
createTable
public void createTable(Table table, PrincipalPrivileges principalPrivileges)
-
replaceTable
public void replaceTable(String databaseName, String tableName, Table newTable, PrincipalPrivileges principalPrivileges)
-
renameTable
public void renameTable(String databaseName, String tableName, String newDatabaseName, String newTableName)
-
commentTable
public void commentTable(String databaseName, String tableName, Optional<String> comment)
-
commentColumn
public void commentColumn(String databaseName, String tableName, String columnName, Optional<String> comment)
-
addColumn
public void addColumn(String databaseName, String tableName, String columnName, HiveType columnType, String columnComment)
-
renameColumn
public void renameColumn(String databaseName, String tableName, String oldColumnName, String newColumnName)
-
getPartition
public Optional<Partition> getPartition(String databaseName, String tableName, List<String> partitionValues)
-
getPartitionNamesByFilter
public Optional<List<String>> getPartitionNamesByFilter(String databaseName, String tableName, List<String> columnNames, TupleDomain<String> partitionKeysFilter)
-
getPartitionsByNames
public Map<String,Optional<Partition>> getPartitionsByNames(String databaseName, String tableName, List<String> partitionNames)
-
addPartitions
public void addPartitions(String databaseName, String tableName, List<PartitionWithStatistics> partitions)
-
dropPartition
public void dropPartition(String databaseName, String tableName, List<String> parts, boolean deleteData)
-
alterPartition
public void alterPartition(String databaseName, String tableName, PartitionWithStatistics partition)
-
dropRole
public void dropRole(String role)
-
grantRoles
public void grantRoles(Set<String> roles, Set<HivePrincipal> grantees, boolean adminOption, HivePrincipal grantor)
-
revokeRoles
public void revokeRoles(Set<String> roles, Set<HivePrincipal> grantees, boolean adminOption, HivePrincipal grantor)
-
listRoleGrants
public Set<RoleGrant> listRoleGrants(HivePrincipal principal)
-
grantTablePrivileges
public void grantTablePrivileges(String databaseName, String tableName, String tableOwner, HivePrincipal grantee, HivePrincipal grantor, Set<HivePrivilegeInfo.HivePrivilege> privileges, boolean grantOption)
-
revokeTablePrivileges
public void revokeTablePrivileges(String databaseName, String tableName, String tableOwner, HivePrincipal grantee, HivePrincipal grantor, Set<HivePrivilegeInfo.HivePrivilege> privileges, boolean grantOption)
-
listTablePrivileges
public Set<HivePrivilegeInfo> listTablePrivileges(String databaseName, String tableName, Optional<String> tableOwner, Optional<HivePrincipal> principal)
-
openTransaction
public long openTransaction(AcidTransactionOwner transactionOwner)
-
commitTransaction
public void commitTransaction(long transactionId)
-
abortTransaction
public void abortTransaction(long transactionId)
-
sendTransactionHeartbeat
public void sendTransactionHeartbeat(long transactionId)
-
acquireSharedReadLock
public void acquireSharedReadLock(AcidTransactionOwner transactionOwner, String queryId, long transactionId, List<SchemaTableName> fullTables, List<HivePartition> partitions)
-
getValidWriteIds
public String getValidWriteIds(List<SchemaTableName> tables, long currentTransactionId)
-
acquireTableWriteLock
public void acquireTableWriteLock(AcidTransactionOwner transactionOwner, String queryId, long transactionId, String dbName, String tableName, org.apache.hadoop.hive.metastore.api.DataOperationType operation, boolean isPartitioned)
-
updateTableWriteId
public void updateTableWriteId(String dbName, String tableName, long transactionId, long writeId, OptionalLong rowCountChange)
-
alterPartitions
public void alterPartitions(String dbName, String tableName, List<Partition> partitions, long writeId)
-
addDynamicPartitions
public void addDynamicPartitions(String dbName, String tableName, List<String> partitionNames, long transactionId, long writeId, AcidOperation operation)
-
alterTransactionalTable
public void alterTransactionalTable(Table table, long transactionId, long writeId, PrincipalPrivileges principalPrivileges)
-
-