in grails-datastore-gorm-hibernate/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsDomainBinder.java [758:781]
protected void bindColumnConfigToColumn(PersistentProperty property, Column column, ColumnConfig columnConfig) {
final PropertyConfig mappedForm = property != null ? (PropertyConfig) property.getMapping().getMappedForm() : null;
boolean allowUnique = mappedForm != null && !mappedForm.isUniqueWithinGroup();
if (columnConfig == null) {
return;
}
if (columnConfig.getLength() != -1) {
column.setLength(columnConfig.getLength());
}
if (columnConfig.getPrecision() != -1) {
column.setPrecision(columnConfig.getPrecision());
}
if (columnConfig.getScale() != -1) {
column.setScale(columnConfig.getScale());
}
if (columnConfig.getSqlType() != null && !columnConfig.getSqlType().isEmpty()) {
column.setSqlType(columnConfig.getSqlType());
}
if(allowUnique) {
column.setUnique(columnConfig.getUnique());
}
}