Hi Lars, To be honest its just an initial gut feel. I haven't thought the issue through and I wonder if there are any downsides like dead locks or if some code goes awry how to recover.
I understand that its on the server side, and that's why I'm a little concerned. On Aug 7, 2012, at 8:05 PM, lars hofhansl <[email protected]> wrote: > Hi Mike, > > do you have a specific downside in mind?The built-in checkAndSet type > operations do the same. > Coprocessors are an extension mechanism for HBase, not to be compared with > (say) server side stored procedures in relational databases. > > (the canonical example is that nothing stops a RegionObserver implementation > from calling System.exit(), taking the RegionServer with it). > > > -- Lars > > > > ----- Original Message ----- > From: Michael Segel <[email protected]> > To: [email protected]; lars hofhansl <[email protected]> > Cc: > Sent: Tuesday, August 7, 2012 5:54 PM > Subject: Re: CheckAndAppend Feature > > While this may be a trivial fix, have you considered possible down sides to > the implementation? > > I'm not sure its a bad idea, but one that could have some potential issues > when put into practice. > > -Mike > > On Aug 7, 2012, at 7:30 PM, lars hofhansl <[email protected]> wrote: > >> I filed HBASE-6522. It is a trivial change to make locks and leases >> available to coprocessors. >> So checkAndSet type operations can then be implemented via coprocessor >> endpoints: lock row, check, fail or update, unlock row. >> >> Since the patch is so simple I'll commit that soon (to 0.94.2 and 0.96) >> >> >> -- Lars >> >> ________________________________ >> From: lars hofhansl <[email protected]> >> To: "[email protected]" <[email protected]> >> Sent: Tuesday, August 7, 2012 8:55 AM >> Subject: Re: CheckAndAppend Feature >> >> There is no such functionality currently, and there is no good way to >> simulate that. >> >> Currently that cannot even be done with a coprocessor endpoint, because >> region coprocessors have no way to create a region lock (just checked the >> code). >> (That is something we have to change I think - I will create an issue once >> the Jira system is back from the walk in the park). >> >> -- Lars >> >> >> ----- Original Message ----- >> From: Jerry Lam <[email protected]> >> To: user <[email protected]> >> Cc: >> Sent: Tuesday, August 7, 2012 8:22 AM >> Subject: CheckAndAppend Feature >> >> Hi HBase community: >> >> I checked the HTable API, it has checkAndPut and checkAndDelete but I'm >> looking for checkAndAppend. Is there a way to simulate similarly? >> For instance, I want to check the last 32 bytes of a value (let assume that >> it has 128 bytes in total) in a column before appending atomically some >> values into it. >> >> Thanks! >> >> Jerry >> >
