Metamodel contains managed types related to dynamic-map entities that have been excluded.

Description

Prior to 5.2+ specific managed types could be excluded from the metamodel generation process by specifying `ignoreUnsupported`; however, since the merging of HEM into Core this is no longer being honored.

In 5.2+, when a dynamic-map based entity-type is found, it is excluded from the metamodel. None of the prior `ignoreUnsupported` or the non-deprecated equivalent are being applied; ergo dynamic-map entity types are just out-right excluded all the time.

The problem this causes is that the metamodel is inconsistent. We still return embeddable managed types that reference that entity-type as the parent; however we don't return the entity type as a managed type.

For 5.2+ we should either

1. Exclude embeddable types that are owned by dynamic-map entity-types since they're excluded.
2. Include dynamic-map entity-types as we did prior to 5.2 and make sure both the deprecated setting `ignoreUnsupported` and its non-deprecated equivalent handle filtering properly.

See https://discourse.hibernate.org/t/why-is-java-util-map-a-managed-type-for-hibernate-when-entity-is-audited/1113 for a discussion.
See

Activity

Show:

Chris Cranford August 3, 2018 at 4:44 PM

After discussion, we agreed we should make sure that the behavior works as it did in 5.1 and prior, thus we'll implement (2).

Fixed

Details

Assignee

Reporter

Worked in

Components

Fix versions

Affects versions

Priority

Created July 30, 2018 at 2:36 PM
Updated August 14, 2018 at 12:24 PM
Resolved August 7, 2018 at 2:54 PM