You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Nikita Timofeev (Jira)" <ji...@apache.org> on 2021/03/12 07:00:07 UTC

[jira] [Closed] (CAY-2693) Abstract subentities do not have rows materialized correctly

     [ https://issues.apache.org/jira/browse/CAY-2693?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Nikita Timofeev closed CAY-2693.
--------------------------------
    Resolution: Fixed

*4.2*: https://github.com/apache/cayenne/commit/21cda9370698e7223263c9269b5ce63f15bb3ffb

> Abstract subentities do not have rows materialized correctly
> ------------------------------------------------------------
>
>                 Key: CAY-2693
>                 URL: https://issues.apache.org/jira/browse/CAY-2693
>             Project: Cayenne
>          Issue Type: Bug
>          Components: Database integration
>    Affects Versions: 4.1
>            Reporter: John Larson
>            Assignee: Nikita Timofeev
>            Priority: Minor
>              Labels: query-lifecycle, query_generator
>             Fix For: 4.2.M3
>
>         Attachments: EntityInheritanceTree.java
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Given an inheritance tree such as (qualifiers are in parentheses):
> abstract class A
> concrete class B extends A (type = 0)
> abstract class C extends A
> concrete class D extends C (type = 1)
> concrete class E extends C (type=2)
> and single-table inheritance.
> When querying on class A and results include a row of type D, EntityInheritanceTree will return C as the matching entity. In fact, even if the results include a row of type B, if entityMatchingRow will return C if it is checked before entity B.
> Also, qualifierForEntityAndSubclasses will return a null qualifier for type C when it should really return (type =1) or (type = 2).
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)