[ https://issues.apache.org/jira/browse/HBASE-21617?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16725720#comment-16725720 ]
apcahephoenix edited comment on HBASE-21617 at 12/20/18 9:50 AM: ----------------------------------------------------------------- Thanks Zheng Hu, reviews link is [https://reviews.apache.org/r/69611/] was (Author: apcahephoenix): Thanks Zheng Hu, reviews link is [https://reviews.apache.org/r/69611/][^Bytes_HBASE_21617.patch] > HBase Bytes.putBigDecimal error > ------------------------------- > > Key: HBASE-21617 > URL: https://issues.apache.org/jira/browse/HBASE-21617 > Project: HBase > Issue Type: Bug > Components: util > Affects Versions: 2.1.0, 2.0.0, 2.1.1 > Environment: JDK 1.8 > Reporter: apcahephoenix > Priority: Major > Attachments: Bytes.java, Bytes_HBASE_21617.patch, TestBytes.java, > TestBytes_HBASE_21617.patch > > > *hbase-common/* > *org.apache.hadoop.hbase.util.Bytes:* > public static int putBigDecimal(byte[] bytes, int offset, BigDecimal val) { > if (bytes == null){ > return offset; > } > byte[] valueBytes = val.unscaledValue().toByteArray(); > byte[] result = new byte[valueBytes.length + SIZEOF_INT]; > offset = putInt(result, offset, val.scale()); > {color:#d04437}return putBytes(result, offset, valueBytes, 0, > valueBytes.length); // this one, bytes is not used{color} > } > *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) { > byte[] valueBytes = toBytes(val); > return putBytes(bytes, offset, valueBytes, 0, valueBytes.length); > } -- This message was sent by Atlassian JIRA (v7.6.3#76005)