You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "stack (JIRA)" <ji...@apache.org> on 2018/03/21 22:09:10 UTC

[jira] [Updated] (HBASE-18389) Remove byte[] from formal parameter of sizeOf() of ClassSize, ClassSize.MemoryLayout and ClassSize.UnsafeLayout

     [ https://issues.apache.org/jira/browse/HBASE-18389?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stack updated HBASE-18389:
--------------------------
    Fix Version/s:     (was: 3.0.0)

> Remove byte[] from formal parameter of sizeOf() of ClassSize, ClassSize.MemoryLayout and ClassSize.UnsafeLayout
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-18389
>                 URL: https://issues.apache.org/jira/browse/HBASE-18389
>             Project: HBase
>          Issue Type: Improvement
>          Components: util
>            Reporter: Xiang Li
>            Assignee: Xiang Li
>            Priority: Minor
>             Fix For: 2.0.0-alpha-2, 2.0.0
>
>         Attachments: HBASE-18389.master.000.patch, HBASE-18389.master.001.patch, HBASE-18389.master.002.patch, HBASE-18389.master.003.patch
>
>
> In ClassSize class and its internal static class, sizeOf() function has 2 formal parameters: byte[] b and int len. But the function's internal logic does not use or refer to byte[] b. Could be removed.
> {code:title=hbase-common/src/main/java/org/apache/hadoop/hbase/util/ClassSize.java|borderStyle=solid}
> // Class of ClassSize
> public static long sizeOf(byte[] b, int len) {
>   return memoryLayout.sizeOf(b, len);
> }
> // Class of ClassSize.MemoryLayout
> long sizeOf(byte[] b, int len) {
>   return align(arrayHeaderSize() + len);
> }
> // Class of ClassSize.UnsafeLayout
> long sizeOf(byte[] b, int len) {
>   return align(arrayHeaderSize() + len * UnsafeAccess.theUnsafe.ARRAY_BYTE_INDEX_SCALE);
> }
> {code}



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