[ https://issues.apache.org/jira/browse/MAPREDUCE-1276?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12863087#action_12863087 ]
Chris Douglas commented on MAPREDUCE-1276: ------------------------------------------ I apologize for my delay. I will commit this to the 0.21 branch, also. +1 on most of these changes. Great catches! {quote}If there is connect or read timeout during draining the input stream of the connection, the reducer fails. Solution : If there is any timeout here, we should ignore and let the reducer run.{quote} Why is the input stream drained at all? Catching the exception is the right call, but protecting {{close}} should be sufficient, right? Removing the drain code and using {{IOUtils::cleanup}} instead would make sense. > Shuffle connection logic needs correction > ------------------------------------------ > > Key: MAPREDUCE-1276 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-1276 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: task > Affects Versions: 0.21.0 > Reporter: Jothi Padmanabhan > Assignee: Amareshwari Sriramadasu > Priority: Blocker > Fix For: 0.21.0 > > Attachments: patch-1276.txt > > > While looking at the code with Amareshwari, we realized that > {{Fetcher#copyFromHost}} marks connection as successful when > {{url.openConnection}} returns. This is wrong. Connection is done inside > implicitly inside {{getInputStream}}; we need to split {{getInputStream}} > into {{connect}} and {{getInputStream}} to handle the connection and read > time out strategies correctly. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.