hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ramkrishna.s.vasudevan (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-10749) CellComparator.compareStatic() compares type wrongly
Date Fri, 14 Mar 2014 10:29:47 GMT
ramkrishna.s.vasudevan created HBASE-10749:

             Summary: CellComparator.compareStatic() compares type wrongly
                 Key: HBASE-10749
                 URL: https://issues.apache.org/jira/browse/HBASE-10749
             Project: HBase
          Issue Type: Bug
    Affects Versions:, 0.98.1, 0.99.0
            Reporter: ramkrishna.s.vasudevan
            Assignee: ramkrishna.s.vasudevan
            Priority: Critical
             Fix For: 0.98.1, 0.99.0

CellComparator.compareStatic(Cell a, Cell b) compares type wrongly.
    c = (0xff & a.getTypeByte()) - (0xff & b.getTypeByte());
    if (c != 0) return c;

In the normal case it should be the other way

      // Compare types. Let the delete types sort ahead of puts; i.e. types
      // of higher numbers sort before those of lesser numbers. Maximum (255)
      // appears ahead of everything, and minimum (0) appears after
      // everything.
      return (0xff & rtype) - (0xff & ltype);
Found this issue while replacing KVComparator to use CellComparator.  
Could you confirm this once?  Currently PrefixTree code path uses this compareStatic method.

This message was sent by Atlassian JIRA

View raw message