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

Moldachev Sergey commented on IGNITE-8550:
------------------------------------------

[~slukyanov] [~kuaw26] Thank you for review, I'll take into account the 
comments!

[~slukyanov] I have a some questions:
1) Do we have any MySQL instances on TC for integration tests?
2) If answer on first question is Yes. Could you please provide some test with 
MySQL (if they exist of course)?

Thank you very much :)

> CacheAbstractJdbcStore expects merge to always return 1 but MySQL may also 
> return 2 or 0
> ----------------------------------------------------------------------------------------
>
>                 Key: IGNITE-8550
>                 URL: https://issues.apache.org/jira/browse/IGNITE-8550
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>            Reporter: Stanislav Lukyanov
>            Assignee: Moldachev Sergey
>            Priority: Minor
>              Labels: newbie
>             Fix For: 2.8
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> CacheAbstractJdbcStore.write attempts to execute a merge update if it is 
> available, and expects the merge to always return 1 (as the number of updated 
> entries is always 1).
> However, MySQL's `INSERT ... ON DUPLICATE KEY UPDATE` 
> (https://dev.mysql.com/doc/refman/8.0/en/insert-on-duplicate.html) may return 
> 0 or 2, depending on what was updated:
> {quote}With ON DUPLICATE KEY UPDATE, the affected-rows value per row is 1 if 
> the row is inserted as a new row, 2 if an existing row is updated, and 0 if 
> an existing row is set to its current values.{quote}
> Because of that, CacheAbstractJdbcStore may report a false warning.
> Need to consider either removing the warning or special-case the MySQL 
> dialect to allow to return values other than 1.



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

Reply via email to