Skip to content

Configuration property to work with database schemas generated for Hibernate ORM 5.6 #31475

@yrodiere

Description

@yrodiere

Description

Hibernate ORM 6 changes a few defaults regarding database schemas, and that could be a problem for pre-existing applications that migrate to Quarkus 3 + ORM 6.

We need to add a unique, per-PU property that would switch several configuration properties to their "legacy" value so that Hibernate ORM 6 continues to work with those "legacy" database schemas.

Ideally, those configuration properties should be overrideable through quarkus.hibernate-orm.unsupported-properties, so that people can iterate when migrating.

The exact list of properties set by that will be automatically overridden needs to be documented somewhere; though I believe a link to the source would be enough, if the source is a single class that is focused only on this overriding and isn't overly complex.

Implementation ideas

E.g.:

quarkus.hibernate-orm.schema.compatibility = 5.6

Limitations

For now, we will have a global property for all persistence units but that seems like an acceptable limitation.

This compatibility property is specifically about the database schema. It doesn't improve the compatibility for annotations and API changes.

List of compatibility issues

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Done

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions