Details
Description
hbase-common/
org.apache.hadoop.hbase.util.Bytes:
public static int putBigDecimal(byte[] bytes, int offset, BigDecimal val) {
if (bytes == null)
byte[] valueBytes = val.unscaledValue().toByteArray();
byte[] result = new byte[valueBytes.length + SIZEOF_INT];
offset = putInt(result, offset, val.scale());
return putBytes(result, offset, valueBytes, 0, valueBytes.length); // this one, bytes is not used
}
Test:
byte[] bytes = new byte[64];
BigDecimal bigDecimal = new BigDecimal("100.10");
Bytes.putBigDecimal(bytes, 4, bigDecimal);
System.out.println(Arrays.toString(bytes)); // invalid
Suggest:
public static int putBigDecimal(byte[] bytes, int offset, BigDecimal val)