hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Devaraj K (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (YARN-2356) yarn status command for non-existent application/application attempt/container is too verbose
Date Wed, 19 Nov 2014 10:39:34 GMT

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

Devaraj K commented on YARN-2356:
---------------------------------

Sorry for coming late here. Thanks [~sunilg] for the patch and thanks [~jianhe] for review.
Overall the patch looks good. In addition to [~jianhe] comment, I see these two observations.

1. Instead of rethrowing and catching the exception for exitCode determination, can we return
the exitCode directly from printXXXReport() methods? 
2. In all the newly added tests, I think no need to catch the exception and do Assert.fail()
explicitly, JUnit will fail those when exception arises.


> yarn status command for non-existent application/application attempt/container is too
verbose 
> ----------------------------------------------------------------------------------------------
>
>                 Key: YARN-2356
>                 URL: https://issues.apache.org/jira/browse/YARN-2356
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: client
>            Reporter: Sunil G
>            Assignee: Sunil G
>            Priority: Minor
>         Attachments: Yarn-2356.1.patch
>
>
> *yarn application -status* or *applicationattempt -status* or *container status* commands
can suppress exception such as ApplicationNotFound, ApplicationAttemptNotFound and ContainerNotFound
for non-existent entries in RM or History Server. 
> For example, below exception can be suppressed better
> sunildev@host-a:~/hadoop/hadoop/bin> ./yarn application -status application_1402668848165_0015
> No GC_PROFILE is given. Defaults to medium.
> 14/07/25 16:21:45 INFO client.RMProxy: Connecting to ResourceManager at /10.18.40.77:45022
> Exception in thread "main" org.apache.hadoop.yarn.exceptions.ApplicationNotFoundException:
Application with id 'application_1402668848165_0015' doesn't exist in RM.
>         at org.apache.hadoop.yarn.server.resourcemanager.ClientRMService.getApplicationReport(ClientRMService.java:285)
>         at org.apache.hadoop.yarn.api.impl.pb.service.ApplicationClientProtocolPBServiceImpl.getApplicationReport(ApplicationClientProtocolPBServiceImpl.java:145)
>         at org.apache.hadoop.yarn.proto.ApplicationClientProtocol$ApplicationClientProtocolService$2.callBlockingMethod(ApplicationClientProtocol.java:321)
>         at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:607)
>         at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:932)
>         at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2099)
>         at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2095)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at javax.security.auth.Subject.doAs(Subject.java:396)
>         at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1626)
>         at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2093)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>         at org.apache.hadoop.yarn.ipc.RPCUtil.instantiateException(RPCUtil.java:53)
>         at org.apache.hadoop.yarn.ipc.RPCUtil.unwrapAndThrowException(RPCUtil.java:101)
>         at org.apache.hadoop.yarn.api.impl.pb.client.ApplicationClientProtocolPBClientImpl.getApplicationReport(ApplicationClientProtocolPBClientImpl.java:166)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:190)
>         at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:103)
>         at $Proxy12.getApplicationReport(Unknown Source)
>         at org.apache.hadoop.yarn.client.api.impl.YarnClientImpl.getApplicationReport(YarnClientImpl.java:291)
>         at org.apache.hadoop.yarn.client.cli.ApplicationCLI.printApplicationReport(ApplicationCLI.java:428)
>         at org.apache.hadoop.yarn.client.cli.ApplicationCLI.run(ApplicationCLI.java:153)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
>         at org.apache.hadoop.yarn.client.cli.ApplicationCLI.main(ApplicationCLI.java:76)
> Caused by: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.yarn.exceptions.ApplicationNotFoundException):
Application with id 'application_1402668848165_0015' doesn't exist in RM.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message