[ 
https://issues.apache.org/jira/browse/IGNITE-10824?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16743004#comment-16743004
 ] 

Taras Ledkov edited comment on IGNITE-10824 at 1/15/19 12:33 PM:
-----------------------------------------------------------------

[~pkouznet],
1. please pay attention to concurrent access to the {{GridH2RowDescriptor}} and 
the columns {{HashMap}} at the H2 table.
Does acquire the shared lock on the table makes sense inside the 
{{verifyDmlColumns}}?
2. COPY command doesn't work with native SQL. But the test 
{{IgniteCacheSqlDmlErrorSelfTest#testCopyMixingPlaceholderAndFields}} check 
only plan builder. So you can remove the code to fill CSV file 
{{IgniteCacheSqlDmlErrorSelfTest#createTmpCsvFileWithContent}} and use any file 
name.


was (Author: tledkov-gridgain):
[~pkouznet], please pay attention to concurrent access to the 
{{GridH2RowDescriptor}} and the columns {{HashMap}} at the H2 table.
Does acquire the shared lock on the table makes sense inside the 
{{verifyDmlColumns}}?

> SQL: mixing _key and key columns in the DML queries must be disallowed
> ----------------------------------------------------------------------
>
>                 Key: IGNITE-10824
>                 URL: https://issues.apache.org/jira/browse/IGNITE-10824
>             Project: Ignite
>          Issue Type: Bug
>          Components: sql
>            Reporter: Pavel Kuznetsov
>            Assignee: Pavel Kuznetsov
>            Priority: Minor
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> DML should contain either placeholder for _key (_val) or subset of key 
> (value) columns but not both. Also we should keep in mind _key/_value aliases
> Given table with primary key column {{id}} and value column {{salary}}. Next 
> queries should be validated to parsing error:
> {code:sql}
> INSERT INTO TEST_TABLE (_key, id, salary) VALUES (1, 2, 42);
> UPDATE TEST_TABLE SET _val = 1, salary = 2;
> {code}   



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to