You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by jg...@apache.org on 2010/08/19 00:27:59 UTC
svn commit: r986969 - in /hbase/trunk: CHANGES.txt
src/main/java/org/apache/hadoop/hbase/filter/BinaryPrefixComparator.java
src/main/java/org/apache/hadoop/hbase/filter/ColumnPrefixFilter.java
Author: jgray
Date: Wed Aug 18 22:27:58 2010
New Revision: 986969
URL: http://svn.apache.org/viewvc?rev=986969&view=rev
Log:
HBASE-2928 Fault in logic in BinaryPrefixComparator leads to ArrayIndexOutOfBoundsException (pranav via jgray)
Modified:
hbase/trunk/CHANGES.txt
hbase/trunk/src/main/java/org/apache/hadoop/hbase/filter/BinaryPrefixComparator.java
hbase/trunk/src/main/java/org/apache/hadoop/hbase/filter/ColumnPrefixFilter.java
Modified: hbase/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hbase/trunk/CHANGES.txt?rev=986969&r1=986968&r2=986969&view=diff
==============================================================================
--- hbase/trunk/CHANGES.txt (original)
+++ hbase/trunk/CHANGES.txt Wed Aug 18 22:27:58 2010
@@ -480,6 +480,8 @@ Release 0.21.0 - Unreleased
(Libor Dener via Stack)
HBASE-2923 Deadlock between HRegion.internalFlushCache and close
HBASE-2927 BaseScanner gets stale HRegionInfo in some race cases
+ HBASE-2928 Fault in logic in BinaryPrefixComparator leads to
+ ArrayIndexOutOfBoundsException (pranav via jgray)
IMPROVEMENTS
HBASE-1760 Cleanup TODOs in HTable
Modified: hbase/trunk/src/main/java/org/apache/hadoop/hbase/filter/BinaryPrefixComparator.java
URL: http://svn.apache.org/viewvc/hbase/trunk/src/main/java/org/apache/hadoop/hbase/filter/BinaryPrefixComparator.java?rev=986969&r1=986968&r2=986969&view=diff
==============================================================================
--- hbase/trunk/src/main/java/org/apache/hadoop/hbase/filter/BinaryPrefixComparator.java (original)
+++ hbase/trunk/src/main/java/org/apache/hadoop/hbase/filter/BinaryPrefixComparator.java Wed Aug 18 22:27:58 2010
@@ -42,8 +42,12 @@ public class BinaryPrefixComparator exte
@Override
public int compareTo(byte [] value) {
- return Bytes.compareTo(this.value, 0, this.value.length, value, 0,
- this.value.length);
+ if (this.value.length <= value.length) {
+ return Bytes.compareTo(this.value, 0, this.value.length, value, 0,
+ this.value.length);
+ } else {
+ return Bytes.compareTo(this.value, value);
+ }
}
}
Modified: hbase/trunk/src/main/java/org/apache/hadoop/hbase/filter/ColumnPrefixFilter.java
URL: http://svn.apache.org/viewvc/hbase/trunk/src/main/java/org/apache/hadoop/hbase/filter/ColumnPrefixFilter.java?rev=986969&r1=986968&r2=986969&view=diff
==============================================================================
--- hbase/trunk/src/main/java/org/apache/hadoop/hbase/filter/ColumnPrefixFilter.java (original)
+++ hbase/trunk/src/main/java/org/apache/hadoop/hbase/filter/ColumnPrefixFilter.java Wed Aug 18 22:27:58 2010
@@ -20,9 +20,7 @@
package org.apache.hadoop.hbase.filter;
-import org.apache.hadoop.hbase.HConstants;
import org.apache.hadoop.hbase.KeyValue;
-import org.apache.hadoop.hbase.KeyValue.Type;
import org.apache.hadoop.hbase.util.Bytes;
import java.io.DataOutput;