hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steve Loughran (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (YARN-7747) YARN UI is broken in the minicluster
Date Mon, 08 Oct 2018 13:20:00 GMT

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

Steve Loughran commented on YARN-7747:

bq. Steve Loughran we definitely need tests to prevent this kind of regression in the future.
We could make sure that all web/http address keys are properly reflected in MiniYARNCLuster#getConfig
implementation and then probe all of them through easy-to-validate REST api. RM URI should
respond to the RM-specific REST, and so on and so forth

please. I've just been trying to this with the RM ports in a kerberized-cluster, and things
didn't work out right w.r.t port bindings, kerberos principals and locahost vs hostname registration.

Maybe the probes should go  the MiniYARNCluster itself, some miniYarnCluster.get("/") call,
so you could do things in tests like eventually() calls waiting for it to come up, etc.

> YARN UI is broken in the minicluster 
> -------------------------------------
>                 Key: YARN-7747
>                 URL: https://issues.apache.org/jira/browse/YARN-7747
>             Project: Hadoop YARN
>          Issue Type: Bug
>    Affects Versions: 3.0.0
>            Reporter: Gera Shegalov
>            Assignee: Gera Shegalov
>            Priority: Major
>         Attachments: YARN-7747.001.patch, YARN-7747.002.patch
> YARN web apps use non-injected instances of GuiceFilter, i.e. instances created by Jetty
as opposed by Guice itself. This triggers the [call path|https://github.com/google/guice/blob/master/extensions/servlet/src/com/google/inject/servlet/GuiceFilter.java#L251]
where the static field {{pipeline}} is used instead of the instance field {{injectedPipeline}}.
However, besides GuiceFilter instances created by Jetty, each Guice module generates them
as well. On the injection call path this static variable is updated by each instance. Thus
if there are multiple modules as it happens to be the case in the minicluster the one loaded
last ends up defining the filter pipeline for all Jetty instances. In the minicluster case
this is the nodemanager UI

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org

View raw message