[
https://issues.apache.org/jira/browse/HBASE-10256?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13858635#comment-13858635
]
Lars Hofhansl commented on HBASE-10256:
---------------------------------------
Not sure I follow. If you can issue a checkAndDelete you do have a row-key,
right? In that case how is a checkAndDelete with a null value different from
just a Delete?
In this case you have a row-key, but you do now know whether it actually exists?
> Handling of value argument being null for checkAndDelete
> --------------------------------------------------------
>
> Key: HBASE-10256
> URL: https://issues.apache.org/jira/browse/HBASE-10256
> Project: HBase
> Issue Type: Improvement
> Reporter: James Taylor
>
> IMO, it would be more useful if when a null is supplied as the value for
> checkAndDelete, that it add the Delete marker if the row exists rather than
> if it doesn't exist (i.e. the opposite of checkAndPut). I think the most
> common use case for checkAndDelete is to delete a row if it exists and tell
> me that you deleted it. With the current implementation, it adds a Delete
> marker only if the row does not exist when you supply a null value which IMO
> is not very useful.
> My workaround is to add another "known" KeyValue to my row with a fixed value
> and then call checkAndDelete passing in this known value. Also, FWIW, if an
> empty byte array is passed through (a valid value), it treats it the same as
> if null was passed through, which is another separate bug.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)