You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "André Schäfer (Jira)" <ji...@apache.org> on 2021/03/18 13:20:00 UTC

[jira] [Updated] (IGNITE-14338) Unable to use same class with @QuerySqlField for multiple times for field.

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

André Schäfer updated IGNITE-14338:
-----------------------------------
    Priority: Critical  (was: Major)

> Unable to use same class with @QuerySqlField for multiple times for field.
> --------------------------------------------------------------------------
>
>                 Key: IGNITE-14338
>                 URL: https://issues.apache.org/jira/browse/IGNITE-14338
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 2.9, 2.10, 2.9.1
>            Reporter: André Schäfer
>            Priority: Critical
>
> Potential Regression of IGNITE-13216 ?
> When a Class with @QuerySqlField annotated fields is used for fields of the parent entity multiple time, this results in a pseudo conflict.
> e.g. 
> {code:java}
> class Address { // nested
>     @QuerySqlField
>     String street;
> }
> class Person { // parent
>     @QuerySqlField
>     String name;
>     @QuerySqlField
>     Address contact; // first usage
>     @QuerySqlField
>     Address billing; // second usage
> }
>  {code}
> Leads to an Exception like
> {code:java}
>  javax.cache.CacheException: Property with name 'street' already exists for value: QueryEntity [key=String, value=Address]{code}
> Most likely this is caused by the change in
> {{QueryEntityTypeDescriptor:172}}
> from {{String propName = prop.fullName();}}
> to {{String propName = prop.name();}} 
> to be able to perform a check with the annotations name value.
>  
>  
>  



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