You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Valentin Kulichenko (JIRA)" <ji...@apache.org> on 2016/07/01 00:55:10 UTC

[jira] [Created] (IGNITE-3406) Interceptor and continuous query can get incorrect old value during rebalancing

Valentin Kulichenko created IGNITE-3406:
-------------------------------------------

             Summary: Interceptor and continuous query can get incorrect old value during rebalancing
                 Key: IGNITE-3406
                 URL: https://issues.apache.org/jira/browse/IGNITE-3406
             Project: Ignite
          Issue Type: Bug
          Components: cache
    Affects Versions: 1.6
            Reporter: Valentin Kulichenko
             Fix For: 1.7


During the rebalancing the old value passed to interceptor or continuous query can't be wrong due to scenarios described below.

Scenario 1.
# New node joins.
# Update request arrives to the new node before the entry for the same key is rebalanced to this node.
# Listeners are notified with {{null}} old value.

In this case we should use {{GridDhtForceKeysRequest}} to get the old value.

Scenario 2.
# Entry is updated on primary node.
# New backup node joins and the entry with already updated value is rebalanced from the primary node.
# Update request arrives to this new backup node.
# Listeners are notified with the old value which is the same as new value.

In this case we should send the old value with the update request in case there is ongoing rebalancing and cache has interceptor configured or continuous queries registered.



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