Details
Description
While converting the request back to Increment using ProtobufUtil.toIncrement we incorrectly use the optimization to avoid copying the byte array(HBaseZeroCopyByteString#zeroCopyGetBytes) on a BoundedByteString. The optimization was only meant for LiteralByteString where it is safe to use the backing byte array, however it ends up being used to BoundedByteString which is a subclass of LiteralByteString. This essentially breaks increments since we end up creating wrong cells on the server side.
Attachments
Issue Links
- blocks
-
HBASE-23220 Release 1.6.0
- Resolved
-
HBASE-23743 Release 1.4.13
- Resolved
- is broken by
-
HBASE-18026 ProtobufUtil seems to do extra array copying
- Resolved
- links to