[ https://issues.apache.org/jira/browse/YARN-8209?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16459819#comment-16459819 ]
Jason Lowe commented on YARN-8209: ---------------------------------- bq. In doing so, the exit code of docker overlaps with container-executor. This could confuse node manager which reads exit code from container-executor. run_docker is already doing execvp, so this behavior is not new with this patch. In practice this is not an issue since the container executor exit code is essentially treated a boolean where zero means success and nonzero means failure. docker (and just about every other Linux command) has the same behavior, so I believe the exec is appropriate here. I personally would rather get the actual exit code from the docker inspect command logged in the NM logs rather than an exit code that meant "docker failed in some way" that hides the specific exit code from the docker command. > NPE in DeletionService > ---------------------- > > Key: YARN-8209 > URL: https://issues.apache.org/jira/browse/YARN-8209 > Project: Hadoop YARN > Issue Type: Bug > Reporter: Chandni Singh > Assignee: Eric Badger > Priority: Major > Attachments: YARN-8209.001.patch, YARN-8209.002.patch > > > {code:java} > 2018-04-25 23:38:41,039 WARN concurrent.ExecutorHelper > (ExecutorHelper.java:logThrowableFromAfterExecute(63)) - Caught exception in > thread DeletionService #1: > java.lang.NullPointerException > at > org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.docker.DockerClient.writeCommandToTempFile(DockerClient.java:109) > at > org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.docker.DockerCommandExecutor.executeDockerCommand(DockerCommandExecutor.java:85) > at > org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.docker.DockerCommandExecutor.executeStatusCommand(DockerCommandExecutor.java:192) > at > org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.docker.DockerCommandExecutor.getContainerStatus(DockerCommandExecutor.java:128) > at > org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.removeDockerContainer(LinuxContainerExecutor.java:935) > at > org.apache.hadoop.yarn.server.nodemanager.containermanager.deletion.task.DockerContainerDeletionTask.run(DockerContainerDeletionTask.java:61) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748){code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org