You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@falcon.apache.org by "Ying Zheng (JIRA)" <ji...@apache.org> on 2016/05/18 01:19:12 UTC

[jira] [Updated] (FALCON-1969) Provide server-side error details on CLI, if any

     [ https://issues.apache.org/jira/browse/FALCON-1969?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ying Zheng updated FALCON-1969:
-------------------------------
    Description: 
Current CLI infrastructure only shows "Internal Server Error" when there is a server-side error. Should print error details on client side for the user to better understand the cause.

See one example output from CLI and Falcon server log below. The CLI doesn't provide any detailed hints when the user forgets to add the required jobName property in the input. This information can only be found in Falcon server log. We should provide the hint "Missing extension property: jobClusterName" on CLI as well.

CLI output:
{code}
[hrt_qa@os-r6-kvphku-falcon-multicluster-15 falcon]$ falcon extension -submit -extensionName hdfs-mirroring -file hdfs-mirroring.properties
Hadoop home is set, adding libraries from '/usr/hdp/2.5.0.0-435/hadoop/bin/hadoop classpath' into falcon classpath
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/grid/0/hdp/2.5.0.0-435/falcon/client/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/grid/0/hdp/2.5.0.0-435/falcon/client/lib/falcon-cli-0.10.0.2.5.0.0-435.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/grid/0/hdp/2.5.0.0-435/hadoop/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
ERROR: Internal Server Error;
{code}

Falcon server log:
{code}
2016-05-12 09:22:49,391 ERROR - [1579321407@qtp-1366342900-83 - ba49c221-048c-4784-ad05-0008be69a43b:hrt_qa:POST//extension/submit/hdfs-mirroring] ~ Error when submitting extension job:  (ExtensionManager:273)
org.apache.falcon.FalconException: Missing extension property: jobClusterName
        at org.apache.falcon.extensions.Extension.validateProperties(Extension.java:45)
        at org.apache.falcon.extensions.Extension.getEntities(Extension.java:68)
        at org.apache.falcon.resource.extensions.ExtensionManager.generateEntities(ExtensionManager.java:444)
        at org.apache.falcon.resource.extensions.ExtensionManager.submit(ExtensionManager.java:268)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
        at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)
        at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
        at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)
        at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
        at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
        at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
{code}

  was:
Current CLI infrastructure only shows "Internal Server Error" when there is a server-side error. Should print error details on client side for the user to better understand the cause.

See one example output from CLI and Falcon server log below. The CLI doesn't provide any detailed hints when the user forgets to add the required jobName property in the input. This information can only be found in Falcon server log. We should provide the hint "Missing extension property: jobClusterName" on CLI as well.

{code}
[hrt_qa@os-r6-kvphku-falcon-multicluster-15 falcon]$ falcon extension -submit -extensionName hdfs-mirroring -file hdfs-mirroring.properties
Hadoop home is set, adding libraries from '/usr/hdp/2.5.0.0-435/hadoop/bin/hadoop classpath' into falcon classpath
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/grid/0/hdp/2.5.0.0-435/falcon/client/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/grid/0/hdp/2.5.0.0-435/falcon/client/lib/falcon-cli-0.10.0.2.5.0.0-435.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/grid/0/hdp/2.5.0.0-435/hadoop/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
ERROR: Internal Server Error;
{code}

{code}
2016-05-12 09:22:49,391 ERROR - [1579321407@qtp-1366342900-83 - ba49c221-048c-4784-ad05-0008be69a43b:hrt_qa:POST//extension/submit/hdfs-mirroring] ~ Error when submitting extension job:  (ExtensionManager:273)
org.apache.falcon.FalconException: Missing extension property: jobClusterName
        at org.apache.falcon.extensions.Extension.validateProperties(Extension.java:45)
        at org.apache.falcon.extensions.Extension.getEntities(Extension.java:68)
        at org.apache.falcon.resource.extensions.ExtensionManager.generateEntities(ExtensionManager.java:444)
        at org.apache.falcon.resource.extensions.ExtensionManager.submit(ExtensionManager.java:268)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
        at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)
        at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
        at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)
        at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
        at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
        at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
{code}


> Provide server-side error details on CLI, if any
> ------------------------------------------------
>
>                 Key: FALCON-1969
>                 URL: https://issues.apache.org/jira/browse/FALCON-1969
>             Project: Falcon
>          Issue Type: Bug
>            Reporter: Ying Zheng
>            Assignee: Ying Zheng
>
> Current CLI infrastructure only shows "Internal Server Error" when there is a server-side error. Should print error details on client side for the user to better understand the cause.
> See one example output from CLI and Falcon server log below. The CLI doesn't provide any detailed hints when the user forgets to add the required jobName property in the input. This information can only be found in Falcon server log. We should provide the hint "Missing extension property: jobClusterName" on CLI as well.
> CLI output:
> {code}
> [hrt_qa@os-r6-kvphku-falcon-multicluster-15 falcon]$ falcon extension -submit -extensionName hdfs-mirroring -file hdfs-mirroring.properties
> Hadoop home is set, adding libraries from '/usr/hdp/2.5.0.0-435/hadoop/bin/hadoop classpath' into falcon classpath
> SLF4J: Class path contains multiple SLF4J bindings.
> SLF4J: Found binding in [jar:file:/grid/0/hdp/2.5.0.0-435/falcon/client/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
> SLF4J: Found binding in [jar:file:/grid/0/hdp/2.5.0.0-435/falcon/client/lib/falcon-cli-0.10.0.2.5.0.0-435.jar!/org/slf4j/impl/StaticLoggerBinder.class]
> SLF4J: Found binding in [jar:file:/grid/0/hdp/2.5.0.0-435/hadoop/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
> SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
> SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
> ERROR: Internal Server Error;
> {code}
> Falcon server log:
> {code}
> 2016-05-12 09:22:49,391 ERROR - [1579321407@qtp-1366342900-83 - ba49c221-048c-4784-ad05-0008be69a43b:hrt_qa:POST//extension/submit/hdfs-mirroring] ~ Error when submitting extension job:  (ExtensionManager:273)
> org.apache.falcon.FalconException: Missing extension property: jobClusterName
>         at org.apache.falcon.extensions.Extension.validateProperties(Extension.java:45)
>         at org.apache.falcon.extensions.Extension.getEntities(Extension.java:68)
>         at org.apache.falcon.resource.extensions.ExtensionManager.generateEntities(ExtensionManager.java:444)
>         at org.apache.falcon.resource.extensions.ExtensionManager.submit(ExtensionManager.java:268)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:498)
>         at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
>         at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)
>         at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
>         at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)
>         at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
>         at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
>         at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
> {code}



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