Daryn Sharp created HADOOP-10146:
------------------------------------

             Summary: Workaround JDK7 Process fd close bug
                 Key: HADOOP-10146
                 URL: https://issues.apache.org/jira/browse/HADOOP-10146
             Project: Hadoop Common
          Issue Type: Bug
          Components: util
    Affects Versions: 2.0.0-alpha, 0.23.0, 3.0.0
            Reporter: Daryn Sharp
            Assignee: Daryn Sharp
            Priority: Critical


JDK7's {{Process}} output streams have an async fd-close race bug.  This 
manifests as commands run via o.a.h.u.Shell causing threads to hang, OOM, or 
cause other bizarre behavior.  The NM is likely to encounter the bug under 
heavy load.

Specifically, {{ProcessBuilder}}'s {{UNIXProcess}} starts a thread to reap the 
process and drain stdout/stderr to avoid a lingering zombie process.  A race 
occurs if the thread using the stream closes it, the underlying fd is 
recycled/reopened, while the reaper is draining it.  
{{ProcessPipeInputStream.drainInputStream}}'s will OOM allocating an array if 
{{in.available()}} returns a huge number, or may wreak havoc by incorrectly 
draining the fd.





--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to