public class JdbcCatalog extends AbstractCatalog
AbstractCatalog.TableMeta
Catalog.ColumnAlreadyExistException, Catalog.ColumnNotExistException, Catalog.DatabaseAlreadyExistException, Catalog.DatabaseNotEmptyException, Catalog.DatabaseNotExistException, Catalog.Loader, Catalog.PartitionNotExistException, Catalog.ProcessSystemDatabaseException, Catalog.TableAlreadyExistException, Catalog.TableNotExistException, Catalog.ViewAlreadyExistException, Catalog.ViewNotExistException
Modifier and Type | Field and Description |
---|---|
static String |
PROPERTY_PREFIX |
catalogOptions, fileIO, lineageMetaFactory, tableDefaultOptions
COMMENT_PROP, DB_LOCATION_PROP, DB_SUFFIX, DEFAULT_DATABASE, HIVE_LAST_UPDATE_TIME_PROP, LAST_UPDATE_TIME_PROP, NUM_FILES_PROP, NUM_ROWS_PROP, OWNER_PROP, SYSTEM_BRANCH_PREFIX, SYSTEM_DATABASE_NAME, SYSTEM_TABLE_SPLITTER, TABLE_DEFAULT_OPTION_PREFIX, TOTAL_SIZE_PROP
Modifier | Constructor and Description |
---|---|
protected |
JdbcCatalog(FileIO fileIO,
String catalogKey,
Options options,
String warehouse) |
Modifier and Type | Method and Description |
---|---|
boolean |
allowUpperCase()
Return a boolean that indicates whether this catalog allow upper case.
|
protected void |
alterTableImpl(Identifier identifier,
List<SchemaChange> changes) |
void |
close() |
protected void |
createDatabaseImpl(String name,
Map<String,String> properties) |
protected void |
createTableImpl(Identifier identifier,
Schema schema) |
Optional<CatalogLockFactory> |
defaultLockFactory() |
protected void |
dropDatabaseImpl(String name) |
protected void |
dropTableImpl(Identifier identifier) |
JdbcClientPool |
getConnections() |
protected Database |
getDatabaseImpl(String databaseName) |
protected TableSchema |
getDataTableSchema(Identifier identifier) |
List<String> |
listDatabases()
Get the names of all databases in this catalog.
|
protected List<String> |
listTablesImpl(String databaseName) |
Optional<CatalogLockContext> |
lockContext() |
protected void |
renameTableImpl(Identifier fromTable,
Identifier toTable) |
String |
warehouse()
Warehouse root path containing all database directories in this catalog.
|
allowCustomTablePath, allTablePaths, alterTable, assertMainBranch, checkNotBranch, checkNotSystemDatabase, checkNotSystemTable, createDatabase, createFormatTable, createPartition, createTable, dropDatabase, dropPartition, dropTable, fileIO, getDatabase, getDataOrFormatTable, getDataTableMeta, getTable, getTableLocation, isSpecifiedSystemTable, isSystemDatabase, isTableInSystemDatabase, listDatabasesInFileSystem, listPartitions, listTables, listTablesInFileSystem, lockEnabled, lockFactory, metastoreClientFactory, newDatabasePath, newDatabasePath, newTableLocation, objectFileIO, options, renameTable, tableExistsInFileSystem, tableSchemaInFileSystem, validateFieldNameCaseInsensitive, validateIdentifierNameCaseInsensitive
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
alterTable, createDatabase, createView, dropView, getView, invalidateTable, listViews, renameView, repairCatalog, repairDatabase, repairTable, tableDefaultOptions, validateCaseInsensitive, validateCaseInsensitive
public static final String PROPERTY_PREFIX
@VisibleForTesting public JdbcClientPool getConnections()
public String warehouse()
Catalog
public List<String> listDatabases()
Catalog
protected Database getDatabaseImpl(String databaseName) throws Catalog.DatabaseNotExistException
getDatabaseImpl
in class AbstractCatalog
Catalog.DatabaseNotExistException
protected void createDatabaseImpl(String name, Map<String,String> properties)
createDatabaseImpl
in class AbstractCatalog
protected void dropDatabaseImpl(String name)
dropDatabaseImpl
in class AbstractCatalog
protected List<String> listTablesImpl(String databaseName)
listTablesImpl
in class AbstractCatalog
protected void dropTableImpl(Identifier identifier)
dropTableImpl
in class AbstractCatalog
protected void createTableImpl(Identifier identifier, Schema schema)
createTableImpl
in class AbstractCatalog
protected void renameTableImpl(Identifier fromTable, Identifier toTable)
renameTableImpl
in class AbstractCatalog
protected void alterTableImpl(Identifier identifier, List<SchemaChange> changes) throws Catalog.TableNotExistException, Catalog.ColumnAlreadyExistException, Catalog.ColumnNotExistException
alterTableImpl
in class AbstractCatalog
Catalog.TableNotExistException
Catalog.ColumnAlreadyExistException
Catalog.ColumnNotExistException
protected TableSchema getDataTableSchema(Identifier identifier) throws Catalog.TableNotExistException
getDataTableSchema
in class AbstractCatalog
Catalog.TableNotExistException
public boolean allowUpperCase()
Catalog
allowUpperCase
in interface Catalog
allowUpperCase
in class AbstractCatalog
public Optional<CatalogLockFactory> defaultLockFactory()
defaultLockFactory
in class AbstractCatalog
public Optional<CatalogLockContext> lockContext()
lockContext
in class AbstractCatalog
Copyright © 2023–2024 The Apache Software Foundation. All rights reserved.