You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Jason Lowe (JIRA)" <ji...@apache.org> on 2013/08/21 20:25:52 UTC

[jira] [Commented] (HADOOP-9894) Race condition in Shell leads to logged error stream handling exceptions

    [ https://issues.apache.org/jira/browse/HADOOP-9894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13746676#comment-13746676 ] 

Jason Lowe commented on HADOOP-9894:
------------------------------------

Sample log output from a case where a local file was being created and it used stat first to ensure the file did not already exist:

{noformat}
2013-08-21 17:56:36,731 WARN  [Thread-80] util.Shell (Shell.java:run(478)) - Error reading the error stream
java.io.IOException: Stream closed
	at java.io.BufferedReader.ensureOpen(BufferedReader.java:97)
	at java.io.BufferedReader.readLine(BufferedReader.java:292)
	at java.io.BufferedReader.readLine(BufferedReader.java:362)
	at org.apache.hadoop.util.Shell$1.run(Shell.java:471)
{noformat}
                
> Race condition in Shell leads to logged error stream handling exceptions
> ------------------------------------------------------------------------
>
>                 Key: HADOOP-9894
>                 URL: https://issues.apache.org/jira/browse/HADOOP-9894
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: util
>    Affects Versions: 2.1.0-beta
>            Reporter: Jason Lowe
>
> Shell.runCommand starts an error stream handling thread and normally joins with it before closing the error stream.  However if parseExecResult throws an exception (e.g.: like Stat.parseExecResult does for FileNotFoundException) then the error thread is not joined and the error stream can be closed before the error stream handling thread is finished.  This causes the error stream handling thread to log an exception backtrace for a "normal" situation.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira