Miklos Szegedi created HADOOP-15372:

             Summary: Race conditions and possible leaks in the Shell class
                 Key: HADOOP-15372
                 URL: https://issues.apache.org/jira/browse/HADOOP-15372
             Project: Hadoop Common
          Issue Type: Bug
    Affects Versions: 2.10.0, 3.2.0
            Reporter: Miklos Szegedi

YARN-5641 introduced some cleanup code in the Shell class. It has a race 
condition. {{Shell.

runCommand()}} can be called while/after {{Shell.getAllShells()}} returned all 
the shells to be cleaned up. This new thread can avoid the clean up, so that 
the process held by it can be leaked causing leaked localized files/etc.

I also see an unrelated issue as well. {{Shell.runCommand()}} has a finally 
block with a {{

process.destroy();}} to clean up. However, the try catch block does not cover 
all instructions after the process is started, so for example we can exit the 
thread and leak the process, if {{

timeOutTimer.schedule(timeoutTimerTask, timeOutInterval);}} causes an exception.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: common-dev-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-dev-h...@hadoop.apache.org

Reply via email to