HBASE-9115 HTableInterface.append operation may overwrites values (Ted Yu)
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1509849 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
1a76ba5336
commit
5b89721c1e
@ -111,8 +111,15 @@ public class Append extends Mutation {
|
|||||||
}
|
}
|
||||||
// Cast so explicit list type rather than ? extends Cell. Help the compiler out. See
|
// 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
|
// 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);
|
this.familyMap.put(family, list);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4373,7 +4373,7 @@ public class TestFromClientSide {
|
|||||||
byte[] v1 = Bytes.toBytes("42");
|
byte[] v1 = Bytes.toBytes("42");
|
||||||
byte[] v2 = Bytes.toBytes("23");
|
byte[] v2 = Bytes.toBytes("23");
|
||||||
byte [][] QUALIFIERS = new byte [][] {
|
byte [][] QUALIFIERS = new byte [][] {
|
||||||
Bytes.toBytes("a"), Bytes.toBytes("b")
|
Bytes.toBytes("b"), Bytes.toBytes("a")
|
||||||
};
|
};
|
||||||
Append a = new Append(ROW);
|
Append a = new Append(ROW);
|
||||||
a.add(FAMILY, QUALIFIERS[0], v1);
|
a.add(FAMILY, QUALIFIERS[0], v1);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user