Today, we published a new maintenance release of Hibernate ORM 6.2: 6.2.4.Final.

What’s new

This release includes several bug fixes and small performance improvements.

Type pollution improvements

We keep gradually improving Hibernate’s performance, with special regard to the type pollution issue currently affecting the JDK (see HHH-16629).

Hibernate Gradle plugin

Dropped support for JPA static metamodel generation

Support for JPA static metamodel generation in the Hibernate Gradle plugin was dropped. You can find more details here.

Bugfixes

Entity associations and joins

We have fixed some issues related to the handling of entity associations and joins:

  • We now avoid joining tables in more scenarios and should only introduce joins when really needed (see HHH-16691).

  • An error was causing a result multiplication when both FetchMode.JOIN and batching were used for retrieving @OneToMany associated items (see HHH-16570).

  • We now throw an appropriate error when an entity join that is not a cross join doesn’t define an on clause (see HHH-16495).

  • A lazy association in a @Cacheable entity was already retrieved as initialized (see HHH-16613).

Query caching

We have fixed several bugs related to query caches, specifically regarding the key used for the cache:

  • The query cache key was not correctly serializable when working with an enabled @Filter or @TenantId (see HHH-16385).

  • @Filter parameters were not included in the query cache key causing some inconsistent results when using different values (see HHH-16617).

  • Query parameters were not always processed in the same order when generating the query cache key, causing sporadic cache misses expecially with a high number of parameters and criteria queries (see HHH-16594).

Map type associations

We have a couple bugs related to Map type associations:

  • Using the @MapKey annotation led to wrongly generated SQL for inserts in some cases (see HHH-16370).

  • An error was encountered when using an Embeddable typed element collection in a map association (see HHH-16540).

Null Pointer Exceptions

The latest Hibernate updates introduced a couple cases triggering a NullPointerException that were fixed:

  • An NPE was encountered when generating the mapping metamodel if inheritance was used for an @IdClass (see HHH-16664).

  • An entity with an @Any annotated attribute caused a null pointer when merging (see HHH-16532).

There are many more improvements and bugfixes included in this version. You can find the full list of changes here.

Conclusion

For additional details, see:

Feedback, issues, ideas?

To get in touch, use the usual channels:


Back to top