The GitHub Actions job "Groovy Snapshot Canary Build" on 
grails-core.git/fix/16688-h7-composite-user-type has failed.
Run started by GitHub user jdaugherty (triggered by jdaugherty).

Head commit for run:
4fa1565e18a3e208511ab052ab2ffba1a411e6b7 / James Daugherty 
<[email protected]>
Describe the value class, honor an explicit type and key unique composite user 
types once

A composite user type property was bound with its embeddable class as the
component class, so ComponentType.getReturnedClass() and the JPA attribute
described a template such as a record instead of the value class, and
whole-value HQL, criteria and finders saw the template. The component class
is now returnedClass(), as Hibernate's own binding of a composite type keeps
the attribute's value class and uses embeddable() only for the attributes.

A user-type registered for the value class applied whenever getUserType()
returned null, which includes a type alias such as 'serializable', so an
explicit per-property type lost to the registration and the column became a
component. The registration now applies only when the property mapping has
no type.

A unique property marked every attribute column unique, and a unique group
created one key per attribute column, so (20, EUR) was rejected after
(10, EUR). ColumnBinder.bindColumnWithoutUniqueness binds the attribute
columns without uniqueness, and CreateKeyForProps.createKeyForColumns creates
one key across all of them and the columns of the group.

The previous GrailsPropertyBinder constructor is restored, deprecated: it
binds everything but a composite user type, which it rejects with a
MappingException naming the missing CompositeUserTypeBinder.

Report URL: https://github.com/apache/grails-core/actions/runs/39641779976

With regards,
GitHub Actions via GitBox

Reply via email to