You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "Alejandro Abdelnur (JIRA)" <ji...@apache.org> on 2013/01/04 14:54:13 UTC

[jira] [Commented] (MAPREDUCE-4907) TrackerDistributedCacheManager issues too many getFileStatus calls

    [ https://issues.apache.org/jira/browse/MAPREDUCE-4907?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13543888#comment-13543888 ] 

Alejandro Abdelnur commented on MAPREDUCE-4907:
-----------------------------------------------

Sandy, patch looks good, I was looking at trunk/branch-2 and I think we should have the same optimization for trunk/branch-2 (in ClientDistributedCacheManager).




                
> TrackerDistributedCacheManager issues too many getFileStatus calls
> ------------------------------------------------------------------
>
>                 Key: MAPREDUCE-4907
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-4907
>             Project: Hadoop Map/Reduce
>          Issue Type: Improvement
>          Components: mrv1, tasktracker
>    Affects Versions: 1.1.1
>            Reporter: Sandy Ryza
>            Assignee: Sandy Ryza
>         Attachments: MAPREDUCE-4907.patch
>
>
> TrackerDistributedCacheManager issues a number of redundant getFileStatus calls when determining the timestamps and visibilities of files in the distributed cache.  300 distributed cache files deep in the directory structure can hammer HDFS with a couple thousand requests.
> A couple optimizations can reduce this load:
> 1. determineTimestamps and determineCacheVisibilities both call getFileStatus on every file.  We could cache the results of the former and use them for the latter.
> 2. determineCacheVisibilities needs to check that all ancestor directories of each file have execute permissions for everyone.  This currently entails a getFileStatus on each ancestor directory for each file.  The results of these getFileStatus calls could be cached as well.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira