[ 
https://issues.apache.org/jira/browse/HBASE-14811?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Elliott Clark resolved HBASE-14811.
-----------------------------------
    Resolution: Duplicate

> HBaseInterClusterReplicationEndpoint retry logic is broken
> ----------------------------------------------------------
>
>                 Key: HBASE-14811
>                 URL: https://issues.apache.org/jira/browse/HBASE-14811
>             Project: HBase
>          Issue Type: Bug
>          Components: Replication
>    Affects Versions: 2.0.0, 1.0.2, 1.2.0, 1.2.1, 0.98.16
>            Reporter: Ashu Pachauri
>            Assignee: Ashu Pachauri
>            Priority: Critical
>
> In HBaseInterClusterReplicationEndpoint, we do something like this:
> {code}
> entryLists.remove(f.get());
> {code}
> where f.get() returns an ordinal number which represents the index of the 
> element in the entryLists that just succeeded replicating. We remove these 
> entries because we want to retry with remaining elements in the list in case 
> of a failure. Since entryLists is an ArrayList, the subsequent elements are 
> shifted left in case we remove an element. This breaks the intended 
> functionality. The fix is to reverse sort the ordinals and then perform the 
> deletion in one go.



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

Reply via email to