Skip to content

Commit cd3b9c7

Browse files
authored
Merge pull request #210 from Zhou-jw/adjust_construct_newkv_in_buildBatchOperation
fix [multi cf] put random binary column
2 parents e112694 + 618fcca commit cd3b9c7

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

src/main/java/com/alipay/oceanbase/hbase/OHTable.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2176,11 +2176,14 @@ private BatchOperation buildBatchOperation(String tableName, List<? extends Row>
21762176
for (KeyValue kv : keyValueList) {
21772177
singleOpResultNum++;
21782178
if (isTableGroup) {
2179-
KeyValue new_kv = modifyQualifier(kv,
2180-
(Bytes.toString(family) + "." + Bytes.toString(kv.getQualifier()))
2181-
.getBytes());
2179+
byte[] oldQualifier = kv.getQualifier();
2180+
byte[] newQualifier = new byte[family.length + 1/* length of "." */ + oldQualifier.length];
2181+
System.arraycopy(family, 0, newQualifier, 0, family.length);
2182+
newQualifier[family.length] = 0x2E; // 0x2E in utf-8 is "."
2183+
System.arraycopy(oldQualifier, 0, newQualifier, family.length +1, oldQualifier.length );
2184+
KeyValue newKV = modifyQualifier(kv, newQualifier);
21822185
batch
2183-
.addOperation(buildMutation(new_kv, INSERT_OR_UPDATE, true, put.getTTL()));
2186+
.addOperation(buildMutation(newKV, INSERT_OR_UPDATE, true, put.getTTL()));
21842187
} else {
21852188
batch.addOperation(buildMutation(kv, INSERT_OR_UPDATE, false, put.getTTL()));
21862189
}

0 commit comments

Comments
 (0)