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

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

Commit efc526a1dcd6f27f8456337094657620b31de65a in geode's branch 
refs/heads/develop from Alberto Gomez
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=efc526a ]

GEODE-9735: Do not copy entries that have been updated after the comm… (#7003)

* GEODE-9735: Do not copy entries that have been updated after the command was 
run

* GEODE-9735: check if concurrencyChecksEnabled is true to use timestamps

> Avoid wan-copy region command to copy entries updated after it started
> ----------------------------------------------------------------------
>
>                 Key: GEODE-9735
>                 URL: https://issues.apache.org/jira/browse/GEODE-9735
>             Project: Geode
>          Issue Type: Improvement
>          Components: wan
>            Reporter: Alberto Gomez
>            Assignee: Alberto Gomez
>            Priority: Major
>              Labels: pull-request-available
>
> The wan-copy region command must not copy entries that have been created or 
> updated after the command has started to copy entries.
> There are two reasons for this:
>  * Efficiency: entries copied after the command has been started will be 
> replicated by the gateway sender anyway so the copying of these entries by 
> the command will be a waste of processing resources and duplicated events 
> will arrive to the remote site.
>  * Problematic reordering of events in the receiving side: if an entry is 
> modified in the same millisecond in the source site and the wan-copy region 
> command tries to copy this entry, it might happen that the command reads the 
> first version of the entry and sends it to the remote site. The gateway 
> sender will also send two events to the remote site, one with the first 
> version of the entry and one with the second. If the event of the wan-copy 
> region command containing the first version of the entry arrives to the 
> remote site after the second event sent by the gateway sender, it will 
> overwrite the second version causing an inconsistency between the two sites. 
> The reason is that the granularity of the timestamp of events is of 
> milliseconds and therefore the conflict resolver on the receiving side will 
> not be able to detect that the event sent by the command is prior to the one 
> received by the gateway sender.
> If entries updated while the command is running are not copied by the 
> command, this problem is avoided.
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to