Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
HBase >> mail # user >> Why only check1-and-putMany and check1-and-deleteMany?

Copy link to this message
Re: Why only check1-and-putMany and check1-and-deleteMany?
Are you looking at trunk code ?

In trunk, take a look at HRegion.checkAndMutate() where you can specify
ByteArrayComparable which does the comparison (matching).
There is still the limit of single value:
        } else if (result.size() == 1 && !valueIsNull) {
          KeyValue kv = result.get(0);

For the moment, only Put and Delete are supported:

    if (!isPut && !(w instanceof Delete))
      throw new DoNotRetryIOException("Action must be Put or Delete");
If you have suggestion on how the check part can be more general, please


On Sat, Nov 17, 2012 at 7:30 PM, Mike Spreitzer <[EMAIL PROTECTED]> wrote:

> If I understand correctly, an HTable has two composite atomic operations,
> checkAndPut and checkAndDelete.  The check part checks just a single
> column's value.  Why not allow checking more than one column?
> Why no checkAndAppend?
> The checkAndPut operation can put to multiple columns, right?  And the
> checkAndDelete operation can delete multiple columns, right?  Why not let
> them be mixed?  Why not checkAndMutate?
> Thanks!
> Mike