[ https://issues.apache.org/jira/browse/GEODE-2674?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15928462#comment-15928462 ]
ASF GitHub Bot commented on GEODE-2674: --------------------------------------- GitHub user upthewaterspout opened a pull request: https://github.com/apache/geode/pull/427 GEODE-2674: Changing the lucene listener to get from the region Rather than use the value that is in the queue, use the latest value from the region to update the lucene index. This ensures that even if the queue contains spurious events due to retries or other issues, we put the correct value in the index. This also potentially saves memory and disk space for the queue, because the queue does not need to hold the value for the entry. @boglesby @gesterzhou @jhuynh1 @ladyVader @nabarunnag You can merge this pull request into a Git repository by running: $ git pull https://github.com/upthewaterspout/incubator-geode feature/GEODE-2674 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/geode/pull/427.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #427 ---- commit 9f9439ab0ec6c2a0221e78aa5825e9a0759bac80 Author: Dan Smith <upthewatersp...@apache.org> Date: 2017-03-15T20:23:20Z GEODE-2674: Changing the lucene listener to fetch the value from the region Rather than use the value that is in the queue, use the latest value from the region to update the lucene index. This ensures that even if the queue contains spurious events due to retries or other issues, we put the correct value in the index. This also potentially saves memory and disk space for the queue, because the queue does not need to hold the value for the entry. ---- > Lucene index is out of sync with data region due to retried event > ----------------------------------------------------------------- > > Key: GEODE-2674 > URL: https://issues.apache.org/jira/browse/GEODE-2674 > Project: Geode > Issue Type: Bug > Reporter: Dan Smith > Assignee: Dan Smith > > We're seeing issues where the data in the lucene index does not match the > data in a region. Here's what I see happening > # An accessor starts doing a put > # The put goes to the current primary > # Primary distributes the put to the secondary > # Primary closes it's cache > # New primary does a destroy on the same entry > # The accessor retries the put because the old primary closed the cache > # The retried put is added to the queue, after the destroy. But it is not > added to the region, because the region detects that it is a retry. > # The lucene index applies the put. Now there is an extra entry in the index > that is not in the region. -- This message was sent by Atlassian JIRA (v6.3.15#6346)