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

Ashu Pachauri updated HBASE-14777:
----------------------------------
    Attachment: HBASE-14777-1.patch

V1: 
I am not sure how [~Bhupendra] actually encountered the issue, because there is 
another bug that actually masks the issue mentioned here.

Doing Future<Integer>#get() returns an Integer object and using this Integer 
object in ArrayList#remove calls the overloaded ArrayList#remove(Object) method 
(no auto-unboxing will happen since this method exists), which basically means 
that it does not remove anything.

However, if you replace Integer with an int , you will encounter the 
ArrayIndexOutofBoundsException.

Anyways, I fixed both the issues and added a simple unit test to test inter 
cluster replication on mini clusters.

> Replication fails with IndexOutOfBoundsException
> ------------------------------------------------
>
>                 Key: HBASE-14777
>                 URL: https://issues.apache.org/jira/browse/HBASE-14777
>             Project: HBase
>          Issue Type: Bug
>          Components: Replication
>            Reporter: Bhupendra Kumar Jain
>            Assignee: Bhupendra Kumar Jain
>            Priority: Critical
>             Fix For: 2.0.0, 1.2.0, 1.3.0
>
>         Attachments: HBASE-14777-1.patch, HBASE-14777.patch
>
>
> Replication fails with IndexOutOfBoundsException 
> {code}
> regionserver.ReplicationSource$ReplicationSourceWorkerThread(939): 
> org.apache.hadoop.hbase.replication.regionserver.HBaseInterClusterReplicationEndpoint
>  threw unknown exception:java.lang.IndexOutOfBoundsException: Index: 1, Size: 
> 1
>       at java.util.ArrayList.rangeCheck(Unknown Source)
>       at java.util.ArrayList.remove(Unknown Source)
>       at 
> org.apache.hadoop.hbase.replication.regionserver.HBaseInterClusterReplicationEndpoint.replicate(HBaseInterClusterReplicationEndpoint.java:222)
> {code}
> Its happening due to incorrect removal of entries from the replication 
> entries list. 



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

Reply via email to