[ 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)