[jOOQ/jOOQ#11334] Field.getDataType(Configuration) resets nullability

This commit is contained in:
Lukas Eder 2021-01-29 14:07:22 +01:00
parent 17742be57b
commit a0449b67a4

View File

@ -461,7 +461,7 @@ public class DefaultDataType<T> extends AbstractDataTypeX<T> {
// If this is a SQLDataType find the most suited dialect-specific
// data type
if (getDialect() == null) {
DefaultDataType<?> dataType = TYPES_BY_SQL_DATATYPE[configuration.family().ordinal()]
DefaultDataType<T> dataType = (DefaultDataType<T>) TYPES_BY_SQL_DATATYPE[configuration.family().ordinal()]
// Be sure to reset length, precision, and scale, as those
// values were not registered in the below cache
@ -471,7 +471,7 @@ public class DefaultDataType<T> extends AbstractDataTypeX<T> {
// ... and then, set them back to the original value
// [#2710] TODO: Remove this logic along with cached data types
return (DataType<T>) dataType.length0(length).precision0(precision, scale);
return dataType.construct(precision, scale, length, nullability, collation, characterSet, identity, defaultValue);
}
// If this is already the dialect's specific data type, return this