hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "HBase Review Board (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HBASE-2946) Increment multiple columns in a row at once
Date Mon, 25 Oct 2010 03:52:19 GMT

    [ https://issues.apache.org/jira/browse/HBASE-2946?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12924441#action_12924441
] 

HBase Review Board commented on HBASE-2946:
-------------------------------------------

Message from: "Jonathan Gray" <jgray@apache.org>


bq.  On 2010-10-24 20:05:55, Ryan Rawson wrote:
bq.  > trunk/src/main/java/org/apache/hadoop/hbase/io/HbaseObjectWritable.java, line 195
bq.  > <http://review.cloudera.org/r/1088/diff/2/?file=15905#file15905line195>
bq.  >
bq.  >     adding trailing spaces
bq.  >

that's my patch removing trailing spaces


bq.  On 2010-10-24 20:05:55, Ryan Rawson wrote:
bq.  > trunk/src/main/java/org/apache/hadoop/hbase/io/HbaseObjectWritable.java, line 201
bq.  > <http://review.cloudera.org/r/1088/diff/2/?file=15905#file15905line201>
bq.  >
bq.  >     adding more trailing spaces, your ide should have a feature to strip these

same here... i'm on the right :)


bq.  On 2010-10-24 20:05:55, Ryan Rawson wrote:
bq.  > trunk/src/main/java/org/apache/hadoop/hbase/regionserver/MemStore.java, line 495
bq.  > <http://review.cloudera.org/r/1088/diff/2/?file=15909#file15909line495>
bq.  >
bq.  >     yeah you cant compare against memstoreTS because if you have this in here you
wont be able to ever increment values that were inserted into the future. you'd just leave
them there and continually see it in the 'get' part and then in this code bit leave it in
place and create a new KV that is masked by the future KV.
bq.  >     
bq.  >     It won't be possible for that insert to be part of an uncommitted change because
of the rowlock however. So no atomic-rules will have been broken.

i'm not sure i follow.  am i doing it wrong?  this should be exactly the same as what's there.

also, we are breaking the atomic-rules across the Increment.  Each column is not broken but
across them it is (for reads not writes).

It seems like we could use RWCC though for increments.  I think it's fine that if you're using
increment you can never write data into it w/ another API (or really, with manual timestamps).


bq.  On 2010-10-24 20:05:55, Ryan Rawson wrote:
bq.  > trunk/src/main/java/org/apache/hadoop/hbase/regionserver/MemStore.java, line 377
bq.  > <http://review.cloudera.org/r/1088/diff/2/?file=15909#file15909line377>
bq.  >
bq.  >     I'm not sure how this code is optional for your new 'upsert', here are some
use cases that I found painful:
bq.  >     
bq.  >     - when the KV is in snapshot we can create new KVs in memstore with the same
TS.  This means you have a dup and before we had this new 'dup' code it ruined counts badly.
bq.  >     - the Math.max() bit it to ensure the new KV isnt being created in the past
a bit and accidently duplicating  a timestamp inside the snapshot.

what do you mean by optional?  there shouldn't be any real difference.  this code is basically
the exact same code that was there but now pulled into a method that can be reused.


bq.  On 2010-10-24 20:05:55, Ryan Rawson wrote:
bq.  > trunk/src/main/java/org/apache/hadoop/hbase/regionserver/MemStore.java, line 466
bq.  > <http://review.cloudera.org/r/1088/diff/2/?file=15909#file15909line466>
bq.  >
bq.  >     im not sure i like the name upsert, it is too rdbms-y for me.
bq.  >     
bq.  >     I need to poke more at this, but i prever the matchingRow() call, it encapsulates
the getRowOffset junk, which leaks wayyy too much all over the place.
bq.  >     
bq.  >

Sure, could use those calls.  Not even sure why I changed this, wrote that part of this patch
a few weeks ago.

And it's an "update if it exists, insert if not" operation which I think of as an upsert operation.
 Open to whatever tho.


- Jonathan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://review.cloudera.org/r/1088/#review1641
-----------------------------------------------------------





> Increment multiple columns in a row at once
> -------------------------------------------
>
>                 Key: HBASE-2946
>                 URL: https://issues.apache.org/jira/browse/HBASE-2946
>             Project: HBase
>          Issue Type: New Feature
>          Components: client, regionserver
>            Reporter: Jonathan Gray
>            Assignee: Jonathan Gray
>
> Currently there is no way to do multiple increments to a single row in one RPC.  This
jira is about adding an HTable and HRegionInterface method to increment multiple columns within
a single row at once.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message