private boolean overflowColumnExists(String shortTableName) { // All table names in user_tab_cols are upper case return conns.get().selectExistsUnregisteredQuery( "SELECT 1 FROM user_tab_cols WHERE TABLE_NAME = ? AND COLUMN_NAME = 'OVERFLOW'", shortTableName.toUpperCase()); }
@Override public boolean exists() { return conns.get().selectExistsUnregisteredQuery( "SELECT 1 FROM " + config.metadataTable().getQualifiedName() + " WHERE table_name = ?", tableRef.getQualifiedName()); }
@Override public void create(byte[] tableMetadata) { if (conns.get().selectExistsUnregisteredQuery( "SELECT 1 FROM " + config.metadataTable().getQualifiedName() + " WHERE table_name = ?", tableName.getQualifiedName())) {
private boolean overflowColumnExists(String shortTableName) { // All table names in user_tab_cols are upper case return conns.get().selectExistsUnregisteredQuery( "SELECT 1 FROM user_tab_cols WHERE TABLE_NAME = ? AND COLUMN_NAME = 'OVERFLOW'", shortTableName.toUpperCase()); }
@Override public void create(byte[] tableMetadata) { boolean needsOverflow = needsOverflow(tableMetadata); if (conns.get().selectExistsUnregisteredQuery( "SELECT 1 FROM " + config.metadataTable().getQualifiedName() + " WHERE table_name = ?", tableRef.getQualifiedName())) { if (needsOverflow) { TableValueStyle existingStyle = valueStyleCache.getTableType(conns, tableRef, config.metadataTable()); if (existingStyle != TableValueStyle.OVERFLOW) { throwForMissingOverflowTable(); } } return; } String shortTableName = createTable(needsOverflow); if (needsOverflow && !overflowColumnExists(shortTableName)) { throwForMissingOverflowTable(); } if (needsOverflow && config.overflowMigrationState() != OverflowMigrationState.UNSTARTED) { createOverflowTable(); } insertIgnoringConstraintViolation(needsOverflow, "INSERT INTO " + config.metadataTable().getQualifiedName() + " (table_name, table_size) VALUES (?, ?)" ); }
@Override public boolean exists() { return conns.get().selectExistsUnregisteredQuery( "SELECT 1 FROM " + config.metadataTable().getQualifiedName() + " WHERE table_name = ?", tableRef.getQualifiedName()); }
@Override public void create(byte[] tableMetadata) { if (conns.get().selectExistsUnregisteredQuery( "SELECT 1 FROM " + config.metadataTable().getQualifiedName() + " WHERE table_name = ?", tableName.getQualifiedName())) {
@Override public void create(byte[] tableMetadata) { boolean needsOverflow = needsOverflow(tableMetadata); if (conns.get().selectExistsUnregisteredQuery( "SELECT 1 FROM " + config.metadataTable().getQualifiedName() + " WHERE table_name = ?", tableRef.getQualifiedName())) { if (needsOverflow) { TableValueStyle existingStyle = valueStyleCache.getTableType(conns, tableRef, config.metadataTable()); if (existingStyle != TableValueStyle.OVERFLOW) { throwForMissingOverflowTable(); } } return; } String shortTableName = createTable(needsOverflow); if (needsOverflow && !overflowColumnExists(shortTableName)) { throwForMissingOverflowTable(); } if (needsOverflow && config.overflowMigrationState() != OverflowMigrationState.UNSTARTED) { createOverflowTable(); } insertIgnoringConstraintViolation(needsOverflow, "INSERT INTO " + config.metadataTable().getQualifiedName() + " (table_name, table_size) VALUES (?, ?)" ); }