hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Abhishek Singh Chouhan (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-16660) ArrayIndexOutOfBounds during the majorCompactionCheck in DateTieredCompaction
Date Tue, 20 Sep 2016 13:01:20 GMT
Abhishek Singh Chouhan created HBASE-16660:

             Summary: ArrayIndexOutOfBounds during the majorCompactionCheck in DateTieredCompaction
                 Key: HBASE-16660
                 URL: https://issues.apache.org/jira/browse/HBASE-16660
             Project: HBase
          Issue Type: Bug
          Components: Compaction
    Affects Versions: 0.98.20
            Reporter: Abhishek Singh Chouhan
            Assignee: Abhishek Singh Chouhan
             Fix For: 2.0.0, 1.4.0, 0.98.23

We get an ArrayIndexOutOfBoundsException during the major compaction check as follows
2016-09-19 05:04:18,287 ERROR [20.compactionChecker] regionserver.HRegionServer$CompactionChecker
- Caught exception
java.lang.ArrayIndexOutOfBoundsException: -2
        at org.apache.hadoop.hbase.regionserver.compactions.DateTieredCompactionPolicy.shouldPerformMajorCompaction(DateTieredCompactionPolicy.java:159)
        at org.apache.hadoop.hbase.regionserver.HStore.isMajorCompaction(HStore.java:1412)
        at org.apache.hadoop.hbase.regionserver.HRegionServer$CompactionChecker.chore(HRegionServer.java:1532)
        at org.apache.hadoop.hbase.Chore.run(Chore.java:80)
        at java.lang.Thread.run(Thread.java:745)

This happens due to the following lines in org.apache.hadoop.hbase.regionserver.compactions.DateTieredCompactionPolicy.selectMajorCompaction
int lowerWindowIndex = Collections.binarySearch(boundaries,
        minTimestamp == null ? Long.MAX_VALUE : file.getMinimumTimestamp());
      int upperWindowIndex = Collections.binarySearch(boundaries,
        file.getMaximumTimestamp() == null ? Long.MAX_VALUE : file.getMaximumTimestamp());
These return negative values if the element is not found and in the case the values are equal
we get the exception.

This message was sent by Atlassian JIRA

View raw message