You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Ankit Singhal (JIRA)" <ji...@apache.org> on 2016/02/12 18:36:18 UTC

[jira] [Created] (HBASE-15260) Should we check zero length value in checkAndMutate when null is passes as expected value?

Ankit Singhal created HBASE-15260:
-------------------------------------

             Summary: Should we check zero length value in checkAndMutate when null is passes as expected value?
                 Key: HBASE-15260
                 URL: https://issues.apache.org/jira/browse/HBASE-15260
             Project: HBase
          Issue Type: Bug
            Reporter: Ankit Singhal


Should we check zero length value in checkAndMutate when null is passes as expected value?
If yes, then I think we should update the documentation for checkAndPut with the same as sometimes column are used for marker with no empty byte array.
{code}
If the passed value is null, the check
   * is for the lack of column (ie: non-existance)
boolean checkAndPut(byte[] row, byte[] family, byte[] qualifier,
    byte[] value, Put put) throws IOException;
{code}

otherwise , we should remove this check.
{code}
HRegion.class

@Override
  public boolean checkAndMutate(byte [] row, byte [] family, byte [] qualifier,
      CompareOp compareOp, ByteArrayComparable comparator, Mutation w,
      boolean writeToWAL)
  throws IOException{
...
else if (result.size() > 0 && result.get(0).getValueLength() == 0 &&
            valueIsNull) {
          matches = true;
        }

 {code}




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)