You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Mingliang Liu (JIRA)" <ji...@apache.org> on 2018/07/24 23:42:00 UTC

[jira] [Created] (HBASE-20932) Effective MemStoreSize::hashCode()

Mingliang Liu created HBASE-20932:
-------------------------------------

             Summary: Effective MemStoreSize::hashCode() 
                 Key: HBASE-20932
                 URL: https://issues.apache.org/jira/browse/HBASE-20932
             Project: HBase
          Issue Type: Bug
    Affects Versions: 2.0.2
            Reporter: Mingliang Liu


After [HBASE-20411] we have
{code:title=MemStoreSize::hashCode()}
  @Override
  public int hashCode() {
    long h = 31 * this.dataSize;
    h = h + 31 * this.heapSize;
    h = h + 31 * this.offHeapSize;
    return (int) h;
 {code}

This is not effective {{hashCode()}} implementation. Instead we can use:
{code:title=MemStoreSize::hashCode()}
  @Override
  public int hashCode() {
    long h = 31 * this.dataSize;
    h = h * 31 + this.heapSize;
    h = h * 31 + this.offHeapSize;
    return (int) h;
 {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)