[
https://issues.apache.org/jira/browse/YARN-1450?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13834335#comment-13834335
]
Xuan Gong commented on YARN-1450:
---------------------------------
[~decster] Thanks for taking this ticket.
Your solution can definitely solve the test case failure. But I do no think it
is the proper solution.
The ticket YARN-1303 is used to solve the issue that we can not allow multiple
commands separating with ";" in distributed-shell. The reason why we can not do
that, you might need to check the comments at YARN-1303.
So, if we launch the AM with --shell_command, we will meet the same issue as
before (can not allow multiple commands separating with ";" or "|"). Right ?
So, we may need to stick to the same solution as YARN-1303, create a file to
save the shell_command, and let AM find out whether this file exists or not.
We can either try to parse the cmd from --cmd option, to figure out which part
is --shell_command, and pull all the commands into a file. But this solution
may not be stable, since we need to get all the characters between
--shell_command and the next "--". And it can be easily break.
The simplest but a little bit tedious solution could be that we just add all
the options that AM can support including --shell_command, --shell_args,
--shell_scripts and --log4j_properties , excluding --cmd option into
UnmanagedAMLaucher, and handle them as we did in
org.apache.hadoop.yarn.applications.distributedshell.Client.
thoughts ?
> TestUnmanagedAMLauncher#testDSShell fails on trunk
> --------------------------------------------------
>
> Key: YARN-1450
> URL: https://issues.apache.org/jira/browse/YARN-1450
> Project: Hadoop YARN
> Issue Type: Bug
> Components: applications/distributed-shell
> Reporter: Akira AJISAKA
> Assignee: Binglin Chang
> Attachments: YARN-1450.v1.patch,
> org.apache.hadoop.yarn.applications.unmanagedamlauncher.TestUnmanagedAMLauncher-output.txt,
>
> org.apache.hadoop.yarn.applications.unmanagedamlauncher.TestUnmanagedAMLauncher.txt
>
>
> TestUnmanagedAMLauncher fails on trunk. The console output is
> {code}
> Running
> org.apache.hadoop.yarn.applications.unmanagedamlauncher.TestUnmanagedAMLauncher
> Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 35.937 sec
> <<< FAILURE! - in
> org.apache.hadoop.yarn.applications.unmanagedamlauncher.TestUnmanagedAMLauncher
> testDSShell(org.apache.hadoop.yarn.applications.unmanagedamlauncher.TestUnmanagedAMLauncher)
> Time elapsed: 14.558 sec <<< ERROR!
> java.lang.RuntimeException: Failed to receive final expected state in
> ApplicationReport, CurrentState=ACCEPTED,
> ExpectedStates=FINISHED,FAILED,KILLED
> at
> org.apache.hadoop.yarn.applications.unmanagedamlauncher.UnmanagedAMLauncher.monitorApplication(UnmanagedAMLauncher.java:447)
> at
> org.apache.hadoop.yarn.applications.unmanagedamlauncher.UnmanagedAMLauncher.run(UnmanagedAMLauncher.java:352)
> at
> org.apache.hadoop.yarn.applications.unmanagedamlauncher.TestUnmanagedAMLauncher.testDSShell(TestUnmanagedAMLauncher.java:145)
> {code}
--
This message was sent by Atlassian JIRA
(v6.1#6144)