You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Amelchev Nikita (Jira)" <ji...@apache.org> on 2021/03/17 06:10:00 UTC

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

     [ https://issues.apache.org/jira/browse/IGNITE-14214?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Amelchev Nikita reassigned IGNITE-14214:
----------------------------------------

    Assignee: Amelchev Nikita  (was: Yaroslav Molochkov)

> 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: Amelchev Nikita
>            Priority: Major
>          Time Spent: 0.5h
>  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)