hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ramkrishna.s.vasudevan (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-15203) Reduce garbage created by path.toString() during Checksum verification
Date Thu, 04 Feb 2016 06:26:39 GMT

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

ramkrishna.s.vasudevan updated HBASE-15203:
    Attachment: HBASE-15203_branch-1.1.patch

In branch-1.1 am not sure if this is going to be a major problem because we are not passing
the path name for the checksum calculation. So still we need this in branch-1.1?  [~ndimiduk]?

> Reduce garbage created by path.toString() during Checksum verification
> ----------------------------------------------------------------------
>                 Key: HBASE-15203
>                 URL: https://issues.apache.org/jira/browse/HBASE-15203
>             Project: HBase
>          Issue Type: Sub-task
>          Components: regionserver
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>            Priority: Minor
>             Fix For: 2.0.0
>         Attachments: HBASE-15203.patch, HBASE-15203_1.patch, HBASE-15203_2.patch, HBASE-15203_branch-1.1.patch
> When we try to read a block we do checksum verification for which we need the file name
in which the block belongs to. So we do Path.toString() every time. This seems to create around
163MB of char[] that is garbage collected in a simple scan run. It is also visible in writes
but the impact is lesser. In overall write/read profile the top 2 factors are byte[] and char[].
This toString() can easily be avoided and reduce its share from the total. To make it more
precise in 1 min of profiling, among the 1.8G of garbage created by StringBuilder.toString
- this path.toString() was contributing around 3.5%. After the patch this is totally not there.

This message was sent by Atlassian JIRA

View raw message