Ryan Blue created MAPREDUCE-6639:
------------------------------------

             Summary: Process hangs in LocatedFileStatusFetcher if 
FileSystem.get throws
                 Key: MAPREDUCE-6639
                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-6639
             Project: Hadoop Map/Reduce
          Issue Type: Bug
          Components: mrv2
            Reporter: Ryan Blue


ListLocatedFileStatusFetcher uses a thread pool, but one of the Callable thread 
functions, 
[ProcessInitialInputPathCallable|https://github.com/apache/hadoop/blob/trunk/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/LocatedFileStatusFetcher.java#L306],
 doesn't catch exceptions (the others do). When an exception is thrown, the 
thread exists and doesn't signal the error to the calling thread, which 
continues waiting to be signaled. This can happen when a FS implementation 
cannot be found.

The solution is to use a try-catch around the implementation of 
{{ProcessInitialInputPathCallable#call}} that calls {{registerError}} when any 
exception is caught.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to