HHH-14744 : Refactor contextual information for SchemaManagementTool to be more easily extended by Hibernate Reactive
1. Add CockroachDB192Dialect#getNameQualifierSupport and #buildIdentifierHelper. 2. Change semantics for AbstractInformationExtractorImpl#processIndexInfoResultSet to be more friendly to subclasses.
This commit is contained in:
parent
f4f4d49da0
commit
a70b994526
|
@ -28,6 +28,10 @@ import org.hibernate.dialect.identity.IdentityColumnSupport;
|
|||
import org.hibernate.dialect.pagination.AbstractLimitHandler;
|
||||
import org.hibernate.dialect.pagination.LimitHandler;
|
||||
import org.hibernate.dialect.pagination.LimitHelper;
|
||||
import org.hibernate.engine.jdbc.env.spi.IdentifierCaseStrategy;
|
||||
import org.hibernate.engine.jdbc.env.spi.IdentifierHelper;
|
||||
import org.hibernate.engine.jdbc.env.spi.IdentifierHelperBuilder;
|
||||
import org.hibernate.engine.jdbc.env.spi.NameQualifierSupport;
|
||||
import org.hibernate.engine.spi.RowSelection;
|
||||
import org.hibernate.exception.LockAcquisitionException;
|
||||
import org.hibernate.exception.spi.SQLExceptionConversionDelegate;
|
||||
|
@ -658,4 +662,23 @@ public class CockroachDB192Dialect extends Dialect {
|
|||
public boolean canCreateSchema() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public NameQualifierSupport getNameQualifierSupport() {
|
||||
// This method is overridden so the correct value will be returned when
|
||||
// DatabaseMetaData is not available.
|
||||
return NameQualifierSupport.SCHEMA;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IdentifierHelper buildIdentifierHelper(IdentifierHelperBuilder builder, DatabaseMetaData dbMetaData)
|
||||
throws SQLException {
|
||||
|
||||
if ( dbMetaData == null ) {
|
||||
builder.setUnquotedCaseStrategy( IdentifierCaseStrategy.LOWER );
|
||||
builder.setQuotedCaseStrategy( IdentifierCaseStrategy.MIXED );
|
||||
}
|
||||
|
||||
return super.buildIdentifierHelper( builder, dbMetaData );
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1029,18 +1029,13 @@ public abstract class AbstractInformationExtractorImpl implements InformationExt
|
|||
* in conjunction with a table's index descriptions
|
||||
* </li>
|
||||
* <li>
|
||||
* {@link DatabaseMetaData#tableIndexClustered} -
|
||||
* this is a clustered index
|
||||
* </li>
|
||||
* <li>
|
||||
* {@link DatabaseMetaData#tableIndexHashed} -
|
||||
* this is a hashed index
|
||||
* </li>
|
||||
* <li>
|
||||
* {@link DatabaseMetaData#tableIndexOther} -
|
||||
* this is some other style of index
|
||||
* Any value other than {@link DatabaseMetaData#tableIndexStatistic} -
|
||||
* this indicates that a table's index description
|
||||
* (not statisics) is being returned.
|
||||
* </li>
|
||||
* </ul>
|
||||
* NOTE: Hibernate ignores statistics and does not
|
||||
* care about the actual type of index.
|
||||
* </li>
|
||||
* <li>
|
||||
* column label {@link #getResultSetColumnNameLabel} -
|
||||
|
|
Loading…
Reference in New Issue