André Schäfer created IGNITE-14340:
--------------------------------------

             Summary: Class with @QuerySqlField fields cannot be used multiple 
times in an aggregate
                 Key: IGNITE-14340
                 URL: https://issues.apache.org/jira/browse/IGNITE-14340
             Project: Ignite
          Issue Type: Bug
            Reporter: André Schäfer


Potential Regression of IGNITE-13216 ?

If a class that has fields annotated with @QuerySqlField (without name 
attribute) and should be used for multiple fields of a parent class, this 
results in a pseudo conflict and throws an exception.

e.g.
{code}
class Person { // parent
    @QuerySqlField
    Address contact; // first usage

    @QuerySqlField
    Address billing; // second usage
}

class Address { // nested
    @QuerySqlField
    String street;
}
{code}

leads to an exception like 

{code}
javax.cache.CacheException: Property with name 'street' already exists for 
value: QueryEntity [key=String, value=Person]
{code}

This is cause by a change in {{QueryEntityTypeDescriptor:172}}:
from {{String propName = prop.fullName();}}
to {{String propName = prop.name();}}

most likely to be able to use it for some hangling logic for the value 
attribute of the annotation.



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

Reply via email to