hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Ellis (JIRA)" <j...@apache.org>
Subject [jira] Created: (HBASE-1136) HashFunction inadvertently destroys some randomness
Date Mon, 19 Jan 2009 19:02:01 GMT
HashFunction inadvertently destroys some randomness
---------------------------------------------------

                 Key: HBASE-1136
                 URL: https://issues.apache.org/jira/browse/HBASE-1136
             Project: Hadoop HBase
          Issue Type: Bug
            Reporter: Jonathan Ellis


the code

      for (int i = 0, initval = 0; i < nbHash; i++) {
        initval = result[i] = Math.abs(hashFunction.hash(b, initval) % maxValue);
      }

restricts initval for the next hash to the [0, maxValue) range of the hash indexes returned.
 This is suboptimal, particularly for larger nbHash and smaller maxValue.  Instead, use:

      for (int i = 0, initval = 0; i < nbHash; i++) {
        initval = hashFunction.hash(b, initval);
        result[i] = Math.abs(initval) % maxValue;
      }


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message