[ https://issues.apache.org/jira/browse/IGNITE-3406?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15395170#comment-15395170 ]
Dmitry Karachentsev commented on IGNITE-3406: --------------------------------------------- Able to reproduce only first case, only for interceptor, and only for TRANSACTIONAL cache. Fix requires deeper investigation of how tx cache works. > 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 > Assignee: Dmitry Karachentsev > 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)