[ https://issues.apache.org/jira/browse/MAPREDUCE-6639?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ryan Blue updated MAPREDUCE-6639: --------------------------------- Attachment: (was: MAPREDUCE-6639.1.patch) > 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 > Affects Versions: 2.7.2 > Reporter: Ryan Blue > Assignee: 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 callbacks 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)