[
https://issues.apache.org/jira/browse/CAY-2840?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17814484#comment-17814484
]
Jadon Hansell commented on CAY-2840:
------------------------------------
Created a [PR|https://github.com/apache/cayenne/pull/604] containing a failing
test and a potential solution that passes the tests.
> Vertical Inheritance: Missing subclass attributes with joint prefetch
> ---------------------------------------------------------------------
>
> Key: CAY-2840
> URL: https://issues.apache.org/jira/browse/CAY-2840
> Project: Cayenne
> Issue Type: Bug
> Components: Core Library
> Affects Versions: 4.2, 5.0-M1
> Reporter: Jadon Hansell
> Priority: Major
> Time Spent: 10m
> Remaining Estimate: 0h
>
> If you use a joint prefetch a belongs-to relationship whose target is using
> vertical inheritance, the attributes on the child class are set to null
> instead of using the results from the database.
> It looks like this is happening when the attribute is read in
> DescriptorColumnExtractor.visitAttribute, it includes the 'p:' prefetch
> prefix in the data row key that gets built. Later, the data row result is
> read from a map without the prefix in the key, and is not found. This only
> happens on a joint prefetch, disjoint and disjointById work correctly.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)