You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Artem Shutak (JIRA)" <ji...@apache.org> on 2015/10/08 12:22:26 UTC

[jira] [Updated] (IGNITE-1635) Cache.invoke() can work wrong in a failover scenario

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

Artem Shutak updated IGNITE-1635:
---------------------------------
    Attachment: logsAndEtc.zip

Added logs, thread dumps, configurations

> Cache.invoke() can work wrong in a failover scenario
> ----------------------------------------------------
>
>                 Key: IGNITE-1635
>                 URL: https://issues.apache.org/jira/browse/IGNITE-1635
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Artem Shutak
>            Assignee: Artem Shutak
>             Fix For: ignite-1.5
>
>         Attachments: logsAndEtc.zip
>
>
> In process of working on IGNITE-1397 (Load/consistency test framework) I've faced with a wrong cache state after Cache.invoke().
> Configuration:
> - 1 client node
> - 3 server nodes (1 backup)
> - duration - 3 hours
> - one random server node is killed every 10 min and after 2 minutes started again
> h5. Transactional invoke retry consistency
> Each client generates a random integer K in a limited range (say, [0, 100000]) and creates a batch of 5 (may be configured) keys in the form 'key-' + K + '-' + n + '-1', 'key-' + K + '-' + n + '-2', ... where n is a unique sequence number assigned to the client. Each client maintains a local map that it updates together with cache. Client invokes an increment closure for all generated keys (no explicit transaction is used) and atomically increments value for corresponding keys in the local map. No exceptions must be thrown to the user code. To validate cache contents, all writes from the client should be stopped, values in the local map must be equal to the values in the cache.
> After 25 min in logs of client: {{Got different values [key='key-89611-0-3', cacheVal=213, localMapVal=214]}}.
> All other "key-89611-0-*" keys in cache have value 214. For the key 'key-89611-0-3' incremental cache invoke didn't happen.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)