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

ASF subversion and git services commented on GEODE-2674:
--------------------------------------------------------

Commit 1602a2683408ef608554d4c22a8e7c8c61f3e946 in geode's branch 
refs/heads/develop from [~upthewaterspout]
[ https://git-wip-us.apache.org/repos/asf?p=geode.git;h=1602a26 ]

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)

Reply via email to