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

Nathan Roberts commented on YARN-6763:
--------------------------------------

Sorry it took so long to get back to this issue. 

My feeling is that we have to rely on cgroups and YARN-2904 to properly fix 
this. It is possible in linux to launch a process in such a way that there is 
no way to trace it back to its container executor (at least not that I'm aware 
of). A very simple example is below:
{noformat}
$ setsid sleep 1000
$ ps -ef | grep sleep 
nroberts 121334      1  0 20:56 ?        00:00:00 sleep 1000
$ cat /proc/121334/stat
121334 (sleep) S 1 121334 121334 0 -1 4202496 202 0 1 0 0 0 0 0 20 0 1 0 
78705750 105439232 155 18446744073709551615 4194304 4215308 140732871855488 
140732871855016 140092201749552 0 0 0 0 18446744071579549140 0 0 17 61 0 0 1 0 0
{noformat}

The sleep process has: ppid=1, pid=121334, session_id=121334, 
process_group_id=121334. There is no way to find the shell that actually 
launched it.

I'll fix the test so that it detects it's on a system where things don't 
re-parent to init. That way it at least wont' fail in this type of environment. 

Thoughts?

> TestProcfsBasedProcessTree#testProcessTree fails in trunk
> ---------------------------------------------------------
>
>                 Key: YARN-6763
>                 URL: https://issues.apache.org/jira/browse/YARN-6763
>             Project: Hadoop YARN
>          Issue Type: Test
>            Reporter: Bibin A Chundatt
>            Assignee: Nathan Roberts
>            Priority: Minor
>
> {code}
> Tests run: 5, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 7.949 sec <<< 
> FAILURE! - in org.apache.hadoop.yarn.util.TestProcfsBasedProcessTree
> testProcessTree(org.apache.hadoop.yarn.util.TestProcfsBasedProcessTree)  Time 
> elapsed: 7.119 sec  <<< FAILURE!
> java.lang.AssertionError: Child process owned by init escaped process tree.
>       at org.junit.Assert.fail(Assert.java:88)
>       at org.junit.Assert.assertTrue(Assert.java:41)
>       at 
> org.apache.hadoop.yarn.util.TestProcfsBasedProcessTree.testProcessTree(TestProcfsBasedProcessTree.java:184)
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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

Reply via email to