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:19:00 UTC
[jira] [Commented] (IGNITE-14340) Class with @QuerySqlField fields
cannot be used multiple times in an aggregate
[ https://issues.apache.org/jira/browse/IGNITE-14340?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17304138#comment-17304138 ]
André Schäfer commented on IGNITE-14340:
----------------------------------------
Sorry, i was confused by jira error message
> 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
> Priority: Major
>
> 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)