hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrew Purtell <apurt...@apache.org>
Subject Re: REST API doesn't support checkAndPut
Date Fri, 03 Jun 2011 16:52:13 GMT
I maybe shouldn't try to answer emails when jetlagged until 24 hours after. So, the second
half of my mail is the part to read.

CheckAndFoo is possible by adding to the URI the necessary syntax on PUT or DELETE. I left
it out of the current version because it is not "clean" in the sense that query parameters
must be used, and semantics for checking must be invented, especially with the change to allow
different types of comparators. Seems complexity/work currently without a known compelling
case to use.

Correct me if I'm wrong (about some compelling case...)

On Fri Jun 3rd, 2011 4:55 AM PDT Andrew Purtell wrote:

>> From: Henri Chenosky <henri.chenosky@gmail.com>
>> Subject: REST API doesn't support checkAndPut
>> To: user@hbase.apache.org
>> Date: Thursday, June 2, 2011, 9:52 PM
>> It seems that HTable atomic operations (e.g., checkAndPut and
>> checkAndDelete) are not supported by the current REST
>> implementation.
>Yes, this was a deliberate choice. 
>According to HTTP and REST principles you can't post a body with GET. Or, you can, but
every spec says it should be ignored. So without a body, how to know what value to check against?

>Alternatively, the value could be supplied in the request URL as an encoded query parameter,
but the GET query syntax of Stargate supports query scope greater than single value. I thought
without a clear need this would just make the query specification more confusing.
>Going forward, if this is _really_ needed then indeed the value to check could be supplied
in the request URL as an encoded query parameter, and the query URL syntax could be hacked
up a bit to make check-and-{put,delete} an option.
>    - Andy

View raw message