deprecate the experimental (and buggy) feature hibernate.create_empty_composites.enabled

see HHH-11936
This commit is contained in:
Gavin 2022-12-29 20:51:40 +01:00 committed by Gavin King
parent b2586d5f2a
commit a03486dc55
1 changed files with 17 additions and 8 deletions

View File

@ -2252,17 +2252,26 @@ public interface AvailableSettings {
String AUTO_SESSION_EVENTS_LISTENER = "hibernate.session.events.auto";
/**
* [EXPERIMENTAL] Enable instantiation of composite/embedded objects when all
* attribute values are {@code null}. The default (and historical) behavior is
* that a {@code null} reference will be used to represent the composite when
* all of its attributes are {@code null}.
* <p>
* This is an experimental feature that has known issues. It should not be used
* in production until it is stabilized. See Hibernate JIRA issue HHH-11936 for
* details.
* Enable instantiation of composite/embedded objects when all attribute values
* are {@code null}. The default (and historical) behavior is that a {@code null}
* reference will be used to represent the composite value when all of its
* attributes are {@code null}.
*
* @apiNote This is an experimental feature that has known issues. It should not
* be used in production until it is stabilized. See Hibernate JIRA issue
* HHH-11936 for details.
*
* @deprecated It makes no sense at all to enable this at the global level for a
* persistence unit. If anything, it could be a setting specific to
* a given embeddable class. But, four years after the introduction of
* this feature, it's still marked experimental and has multiple known
* unresolved bugs. It's therefore time for those who advocated for
* this feature to accept defeat.
*
* @since 5.1
*/
@Incubating
@Deprecated(since = "6")
String CREATE_EMPTY_COMPOSITES_ENABLED = "hibernate.create_empty_composites.enabled";
/**