[ 
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)

Reply via email to