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 "Todd Lipcon (JIRA)" <ji...@apache.org> on 2010/02/12 01:22:28 UTC

[jira] Commented: (MAPREDUCE-1481) Streaming should swallow IOExceptions when closing clientOut

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

Todd Lipcon commented on MAPREDUCE-1481:
----------------------------------------

Actually, I think this is a bug but not quite how I described it. If the flush fails, it means we were trying to write data into a streaming executable that didn't consume all of its input.

I don't know what the expected behavior is here. Right now, the behavior is that we stop consuming its output, but the task still succeeds so long as the exit code is 0. I think this is incorrect. We should either entirely fail the task regardless of exit code, or we should consume the rest of its output.

> Streaming should swallow IOExceptions when closing clientOut
> ------------------------------------------------------------
>
>                 Key: MAPREDUCE-1481
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-1481
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: contrib/streaming
>    Affects Versions: 0.20.1, 0.21.0, 0.22.0
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>
> in PipeMapRed.mapRedFinished, streaming flushes and closes clientOut_, the handle to the subprocess's stdin. If the subprocess has already exited or closed its stdin, this will generate a Broken Pipe IOException. This causes us to skip waitOutputThreads, which is incorrect, since the subprocess may have data still written from stdout that needs to be read.

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