You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Yaroslav Molochkov (Jira)" <ji...@apache.org> on 2021/02/20 07:37:00 UTC

[jira] [Comment Edited] (IGNITE-14214) Incorrect merge query when using oracle dialect

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

Yaroslav Molochkov edited comment on IGNITE-14214 at 2/20/21, 7:36 AM:
-----------------------------------------------------------------------

[~tledkov-gridgain], hello! Could you please take look?


was (Author: yamolochkov):
[~alex_pl], could you please take look?

> Incorrect merge query when using oracle dialect
> -----------------------------------------------
>
>                 Key: IGNITE-14214
>                 URL: https://issues.apache.org/jira/browse/IGNITE-14214
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 2.10, 2.9.1
>            Reporter: Yaroslav Molochkov
>            Assignee: Yaroslav Molochkov
>            Priority: Major
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> If table contains only keys (e.g. relationship table) then returned query contains empty update fields and resulting syntax is incorrect. 
> Consider the following example:
> org.apache.ignite.cache.store.jdbc.dialect.OracleDialect#mergeQuery accepts key and val collections. The problem is relevant if val collection is empty.
> {code:java}
> return String.format("MERGE INTO %s t" +
>     " USING (SELECT %s FROM dual) v" +
>     "  ON %s" +
>     " WHEN MATCHED THEN" +
>     "  UPDATE SET %s" +
>     " WHEN NOT MATCHED THEN" +
>     "  INSERT (%s) VALUES (%s)", fullTblName, selCols, match, setCols, colsLst, valuesCols);
> {code}



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