[
https://issues.apache.org/jira/browse/HBASE-1347?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12702667#action_12702667
]
atppp commented on HBASE-1347:
------------------------------
Thanks for the hint. Trunk Bytes class does run faster but that makes current
HRegion.java code faster too because Bytes.toLong is used in
incrementColumnValue() to return long. In fact this makes my quick fix code
even worse in terms of relative speed...
> HTable.incrementColumnValue does not take negative 'amount'
> -----------------------------------------------------------
>
> Key: HBASE-1347
> URL: https://issues.apache.org/jira/browse/HBASE-1347
> Project: Hadoop HBase
> Issue Type: Improvement
> Components: client
> Affects Versions: 0.19.1
> Environment: Ubuntu 8.10
> Reporter: atppp
> Priority: Minor
> Fix For: 0.19.2
>
>
> Apparently HRegion.binaryIncrement() assumes argument 'amount' is always
> positive. It would be nice to support decrement operation. In my application,
> a counter can go both up and down.
> Quick fix is
> public byte [] binaryIncrement(byte [] value, long amount) {
> return Bytes.toBytes(Bytes.toLong(value) + amount);
> }
> but it is 2x~3x slower than current implementation for small positive
> 'amount' value. I have not yet found a good implementation to support
> negative 'amount' argument, AND match the speed of current implementation.
> Anyway, I just want to throw this out there and see if anybody is interested
> in negative 'amount' support.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.