[
https://issues.apache.org/jira/browse/HADOOP-15372?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16812729#comment-16812729
]
Jim Brennan commented on HADOOP-15372:
--------------------------------------
[~ebadger] good point. The potential for a race is still there, although I
think the localization code no longer exercises it.
> 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
> Assignee: Eric Badger
> Priority: Minor
> Attachments: HADOOP-15372.001.patch
>
>
> 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 see another 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
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]