[
https://issues.apache.org/jira/browse/IGNITE-10645?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16717438#comment-16717438
]
Pavel Kuznetsov commented on IGNITE-10645:
------------------------------------------
Now there are some thests that have configuration:
{noformat}
LinkedHashMap<String, String> fields = new LinkedHashMap<>();
fields.put("keyStr", String.class.getName());
fields.put("keyLong", Long.class.getName());
fields.put("keyPojo", Pojo.class.getName());
fields.put("valStr", String.class.getName());
fields.put("valLong", Long.class.getName());
fields.put("valPojo", Pojo.class.getName());
ent = new QueryEntiry (Key.class.getName(), Value.class.getName())
.setFields(fields)
{noformat}
It's expected that engine somehow understands that field "keyStr" belongs to a
key, which is wrong.
Updating such tests.
> SQL properties ownership flag should be set at configuration parsing, not
> query execution.
> ------------------------------------------------------------------------------------------
>
> Key: IGNITE-10645
> URL: https://issues.apache.org/jira/browse/IGNITE-10645
> Project: Ignite
> Issue Type: Bug
> Components: sql
> Reporter: Pavel Kuznetsov
> Assignee: Pavel Kuznetsov
> Priority: Major
>
> At processing time, query entities are transformed and validated, table
> descriptors with properties are created.
> Now in some case (thre's no keyFields and key is of complex non-sql type),
> ownership flag of query property is calculated at execution time (for example
> at first put()):
> https://github.com/apache/ignite/blob/dcdb27a24a450f63487290360b265e1570534629/modules/core/src/main/java/org/apache/ignite/internal/processors/query/property/QueryBinaryProperty.java#L132
> So we can't access metadata, that uses this not-yet-initialized field before
> we put the data.
> But we already have all necessary info to set this field at processing time.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)