You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by te...@apache.org on 2013/08/02 22:49:32 UTC
svn commit: r1509854 - in /hbase/branches/0.95:
hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java
Author: tedyu
Date: Fri Aug 2 20:49:31 2013
New Revision: 1509854
URL: http://svn.apache.org/r1509854
Log:
HBASE-9115 HTableInterface.append operation may overwrites values (Ted Yu)
Modified:
hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java
hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java
Modified: hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java?rev=1509854&r1=1509853&r2=1509854&view=diff
==============================================================================
--- hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java (original)
+++ hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Append.java Fri Aug 2 20:49:31 2013
@@ -111,8 +111,15 @@ public class Append extends Mutation {
}
// Cast so explicit list type rather than ? extends Cell. Help the compiler out. See
// http://stackoverflow.com/questions/6474784/java-using-generics-with-lists-and-interfaces
- ((List<KeyValue>)list).add(kv);
+ List<KeyValue> l = (List<KeyValue>)list;
+ // find where the new entry should be placed in the List
+ int idx = 0;
+ for (KeyValue keyval : l) {
+ if (Bytes.compareTo(kv.getQualifier(), keyval.getQualifier()) < 0) break;
+ idx ++;
+ }
+ l.add(idx, kv);
this.familyMap.put(family, list);
return this;
}
-}
\ No newline at end of file
+}
Modified: hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java?rev=1509854&r1=1509853&r2=1509854&view=diff
==============================================================================
--- hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java (original)
+++ hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide.java Fri Aug 2 20:49:31 2013
@@ -4373,7 +4373,7 @@ public class TestFromClientSide {
byte[] v1 = Bytes.toBytes("42");
byte[] v2 = Bytes.toBytes("23");
byte [][] QUALIFIERS = new byte [][] {
- Bytes.toBytes("a"), Bytes.toBytes("b")
+ Bytes.toBytes("b"), Bytes.toBytes("a")
};
Append a = new Append(ROW);
a.add(FAMILY, QUALIFIERS[0], v1);