You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "churro morales (JIRA)" <ji...@apache.org> on 2014/06/11 00:39:01 UTC

[jira] [Updated] (HBASE-11322) SnapshotHFileCleaner makes the wrong check for lastModified time thus causing too many cache refreshes

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

churro morales updated HBASE-11322:
-----------------------------------

    Attachment: HBASE-11322.patch

> SnapshotHFileCleaner makes the wrong check for lastModified time thus causing too many cache refreshes
> ------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-11322
>                 URL: https://issues.apache.org/jira/browse/HBASE-11322
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.94.19
>            Reporter: churro morales
>            Assignee: churro morales
>            Priority: Critical
>         Attachments: HBASE-11322.patch
>
>
> In the SnapshotFileCache:
> The last modified time is done via this operation:
> {code}
> this.lastModifiedTime = Math.min(dirStatus.getModificationTime(),
>                                      tempStatus.getModificationTime());
> {code}
> and the check to see if the snapshot directories have been modified:
> {code}
> // if the snapshot directory wasn't modified since we last check, we are done
>     if (dirStatus.getModificationTime() <= lastModifiedTime &&
>         tempStatus.getModificationTime() <= lastModifiedTime) {
>       return;
>     }
> {code}
> so if the dirStatus and tmpStatus are modified at different times, we will always assume they have been modified and refresh the cache.
> In our cluster, this was a huge performance hit.  The cleaner chain fell behind, thus almost filling up dfs and our namenode heap.
> Its a simple fix, instead of Math.min we use Math.max for the lastModified, I believe that will be correct.
> I'll apply a patch for you guys.



--
This message was sent by Atlassian JIRA
(v6.2#6252)