hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rajesh Balamohan (JIRA)" <j...@apache.org>
Subject [jira] Created: (HADOOP-7016) Optimize locking codepath in LocalDirAllocator.getLocalPathToRead() and reduce creating many Path objects
Date Wed, 03 Nov 2010 04:08:25 GMT
Optimize locking codepath in LocalDirAllocator.getLocalPathToRead() and reduce creating many
Path objects
---------------------------------------------------------------------------------------------------------

                 Key: HADOOP-7016
                 URL: https://issues.apache.org/jira/browse/HADOOP-7016
             Project: Hadoop Common
          Issue Type: Bug
          Components: fs
    Affects Versions: 0.20.2
            Reporter: Rajesh Balamohan
             Fix For: 0.20.2


LocalDirAllocator.getLocalPathToRead() is called from TaskTracker to retrieve temporary map
output location. This method is synchronized and amount of time spent on this method directly
affects the performance of TaskTracker's ability to serve faster.  This JIRA is created to
reduce the additional fat in getLocalPathToRead() and reduce creating the number of Path obejcts
which are expensive.

1. getLocalPathToRead() internally calls RawLocalFileSystem.exists() in order to check the
existence of a local file. RawLocalFileSystem.exists() internally creates a FileStatus object
which needs to be populated with lastModified, length, directory details etc. This might not
be necessary for just checking  file existence.

2. Creating a Path object out of a string requires fair amount of processing. It might be
worth to store "localDirsPath" in LocalDirAllocator instead of storing "localDirs". This would
avoid the number of times Path() object is created in LocalDirAllocator.

Any other codepath using LocalDirAllocator would also benefit from the above 2 optimizations.

The attached patch addresses the above 2 issues.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message