I think the problem lies in the problem lies hier: https://github.com/hibernate/hibernate-orm/blob/6.1/hibernate-core/src/main/java/org/hibernate/persister/entity/AbstractEntityPersister.java#L6576 When Entity2 gets loaded the fields of Entity1 are already loaded and are not considered to be part of Entity2. In https://github.com/hibernate/hibernate-orm/blob/6.1/hibernate-core/src/main/java/org/hibernate/persister/entity/AbstractEntityPersister.java#L5151 are the mappings of Entity1 returned and only the setters of Entity1 are called. That ignores the child class (Entity2) totally. I wonder what the differences are between Overriding Properties and just declaring them |