hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ted Yu <yuzhih...@gmail.com>
Subject Re: HBase thrift API - Mutation store a float in a column
Date Fri, 03 May 2013 13:47:03 GMT
Looking at
http://docs.oracle.com/javase/6/docs/api/java/nio/ByteBuffer.html#putFloat(float):

... into this buffer at the current position, and then increments the
position by four.

In TBaseHelper:

  public static int byteBufferToByteArray(ByteBuffer byteBuffer, byte[]
target, int offset) {

    int remaining = byteBuffer.remaining();

    System.arraycopy(byteBuffer.array(),

        byteBuffer.arrayOffset() + byteBuffer.position(),
I think you need to rewind before calling mutation.setValue().

On Fri, May 3, 2013 at 6:35 AM, Nicolas Seyvet
<nicolas.seyvet@ericsson.com>wrote:

> The initial value is 12.0, the resulting is always =\x00\x00\x00\x00
>
> Even if I put something bigger or smaller.
>
> -----Original Message-----
> From: manoj p [mailto:eorstvz@gmail.com]
> Sent: Friday, May 03, 2013 3:31 PM
> To: user@hbase.apache.org
> Subject: Re: HBase thrift API - Mutation store a float in a column
>
> HBase stores values as byte arrays. When a float value is converted to
> byte, there is a possibility of data truncation.
>
> I guess the precision loss that happens due to data truncation might be
> the reason for getting the same value 0 repeatedly.
>
> BR/Manoj
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message