Make sure the schema tool does not miss columns from abstract entity classes in a STI tree #10387
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR fixes
SchemaToolso it does not miss fields inherited from abstract@Entityclasses in the middle of a single table inheritance (STI) tree, when these classes are not listed in the Discriminator Map (DM).Abstract entitiy classes not listed in the DM will not show up in the root entity's ClassMetadata
subClassesproperty. Fields inherited from them will show up in the field mapping metadata for subclasses, withinherited => ...being set.The Schema Tool would skip these inherited fields, probably based on the assumption that they will be taken care of when the declaring class is processed. This, however, did not happen for abstract classes not listed in the DM.
Update #10389 discusses whether it should in fact be a requirement to list also
abstractclasses in the DM, which might make this issue go away (masking it).Update 2 #10411 fixes this by making sure the missing
subClassesare filled in