[ https://issues.apache.org/jira/browse/HBASE-1590?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
stack reopened HBASE-1590: -------------------------- Mind if I keep this open JG? I think it'd be sweet integrating the sizeof jar fetching it if user asks for it. Maybe when we move build to ivy it wouldn't be too hard. > Extend TestHeapSize and ClassSize to do "deep" sizing of Objects > ---------------------------------------------------------------- > > Key: HBASE-1590 > URL: https://issues.apache.org/jira/browse/HBASE-1590 > Project: Hadoop HBase > Issue Type: Improvement > Affects Versions: 0.20.0 > Reporter: Jonathan Gray > Assignee: Jonathan Gray > Fix For: 0.21.0 > > > As discussed in HBASE-1554 there is a bit of a disconnect between how > ClassSize calculates the heap size and how we need to calculate heap size in > our implementations. > For example, the LRU block cache can be sized via ClassSize, but it is a > shallow sizing. There is a backing ConcurrentHashMap that is the largest > memory consumer. However, ClassSize only counts that as a single reference. > But in our heapSize() reporting, we want to include *everything* within that > Object. > This issue is to resolve that dissonance. We may need to create an > additional ClassSize.estimateDeep(), we may need to rethink our HeapSize > interface, or maybe just leave it as is. The two primary goals of all this > testing is to 1) ensure that if something is changed and the sizing is not > updated, our tests fail, and 2) ensure our sizing is as accurate as possible. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.