You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-issues@hadoop.apache.org by "Eric Payne (JIRA)" <ji...@apache.org> on 2017/12/14 18:05:00 UTC

[jira] [Comment Edited] (YARN-7427) NullPointerException in ResourceInfo when queue has not used label

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

Eric Payne edited comment on YARN-7427 at 12/14/17 6:04 PM:
------------------------------------------------------------

Thanks [~jhung] for reporting this issue and thanks [~sunilg] for the review and suggestions.

I have a couple of comments. For reference, here is a code snippet:
{code:title=CapacitySchedulerPage#LeafQueueInfoBlock#renderQueueCapacityInfo}
          __("Used Capacity:",
              appendPercent(resourceUsages.getUsed().toString(),
                  capacities.getUsedCapacity() / 100))
          .__("Configured Capacity:",
              capacities.getConfiguredMinResource().toString())
{code}
Although the suggested fix does get us past the NPE that affects {{resourceUsages.getUsed().toString()}}, the the call 3 lines down to {{capacities.getConfiguredMinResource().toString()}} produces another NPE.

This is not a problem in branch-2. Do we know what changed to cause this to start occurring?


was (Author: eepayne):
Thanks [~jhung] for reporting this issue and thanks [~sunilg] for the review and suggestions.

I have a couple of comments. For reference, here is a code snippet:
{code:title=CapacitySchedulerPage#LeafQueueInfoBlock#renderQueueCapacityInfo}}
          __("Used Capacity:",
              appendPercent(resourceUsages.getUsed().toString(),
                  capacities.getUsedCapacity() / 100))
          .__("Configured Capacity:",
              capacities.getConfiguredMinResource().toString())
{code}
Although the suggested fix does get us past the NPE that affects {{resourceUsages.getUsed().toString()}}, the the call 3 lines down to {{capacities.getConfiguredMinResource().toString()}} produces another NPE.

This is not a problem in branch-2. Do we know what changed to cause this to start occurring?

> NullPointerException in ResourceInfo when queue has not used label
> ------------------------------------------------------------------
>
>                 Key: YARN-7427
>                 URL: https://issues.apache.org/jira/browse/YARN-7427
>             Project: Hadoop YARN
>          Issue Type: Bug
>            Reporter: Jonathan Hung
>            Assignee: Jonathan Hung
>         Attachments: YARN-7427.001.patch, YARN-7427.002.patch
>
>
> {noformat}Caused by: java.lang.NullPointerException
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.dao.ResourceInfo.toString(ResourceInfo.java:65)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.CapacitySchedulerPage$LeafQueueInfoBlock.renderQueueCapacityInfo(CapacitySchedulerPage.java:164)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.CapacitySchedulerPage$LeafQueueInfoBlock.renderLeafQueueInfoWithPartition(CapacitySchedulerPage.java:107)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.CapacitySchedulerPage$LeafQueueInfoBlock.render(CapacitySchedulerPage.java:96)
>         at org.apache.hadoop.yarn.webapp.view.HtmlBlock.render(HtmlBlock.java:69)
>         at org.apache.hadoop.yarn.webapp.view.HtmlBlock.renderPartial(HtmlBlock.java:79)
>         at org.apache.hadoop.yarn.webapp.View.render(View.java:235)
>         at org.apache.hadoop.yarn.webapp.view.HtmlBlock$Block.subView(HtmlBlock.java:43)
>         at org.apache.hadoop.yarn.webapp.hamlet2.HamletImpl$EImp._v(HamletImpl.java:117)
>         at org.apache.hadoop.yarn.webapp.hamlet2.Hamlet$LI.__(Hamlet.java:7709)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.CapacitySchedulerPage$QueueBlock.render(CapacitySchedulerPage.java:301)
>         at org.apache.hadoop.yarn.webapp.view.HtmlBlock.render(HtmlBlock.java:69)
>         at org.apache.hadoop.yarn.webapp.view.HtmlBlock.renderPartial(HtmlBlock.java:79)
>         at org.apache.hadoop.yarn.webapp.View.render(View.java:235)
>         at org.apache.hadoop.yarn.webapp.view.HtmlBlock$Block.subView(HtmlBlock.java:43)
>         at org.apache.hadoop.yarn.webapp.hamlet2.HamletImpl$EImp._v(HamletImpl.java:117)
>         at org.apache.hadoop.yarn.webapp.hamlet2.Hamlet$LI.__(Hamlet.java:7709)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.CapacitySchedulerPage$QueuesBlock.render(CapacitySchedulerPage.java:470)
>         at org.apache.hadoop.yarn.webapp.view.HtmlBlock.render(HtmlBlock.java:69)
>         at org.apache.hadoop.yarn.webapp.view.HtmlBlock.renderPartial(HtmlBlock.java:79)
>         at org.apache.hadoop.yarn.webapp.View.render(View.java:235)
>         at org.apache.hadoop.yarn.webapp.view.HtmlPage$Page.subView(HtmlPage.java:49)
>         at org.apache.hadoop.yarn.webapp.hamlet2.HamletImpl$EImp._v(HamletImpl.java:117)
>         at org.apache.hadoop.yarn.webapp.hamlet2.Hamlet$TD.__(Hamlet.java:848)
>         at org.apache.hadoop.yarn.webapp.view.TwoColumnLayout.render(TwoColumnLayout.java:71)
>         at org.apache.hadoop.yarn.webapp.view.HtmlPage.render(HtmlPage.java:82)
>         at org.apache.hadoop.yarn.webapp.Controller.render(Controller.java:212)
>         at org.apache.hadoop.yarn.server.resourcemanager.webapp.RmController.scheduler(RmController.java:86)
>         ... 56 more{noformat}
> For example, configure: {noformat}  <property>
>     <name>yarn.scheduler.capacity.root.queues</name>
>     <value>default,a</value>
>   </property>
>   <property>
>     <name>yarn.scheduler.capacity.root.accessible-node-labels</name>
>     <value>x</value>
>   </property>
>   <property>
>     <name>yarn.scheduler.capacity.root.default.accessible-node-labels</name>
>     <value>x</value>
>   </property>
>   <property>
>     <name>yarn.scheduler.capacity.root.default.accessible-node-labels.x.maximum-capacity</name>
>     <value>100</value>
>   </property>
>   <property>
>     <name>yarn.scheduler.capacity.root.default.accessible-node-labels.x.capacity</name>
>     <value>100</value>
>   </property>{noformat}
> , then the above exception is thrown when refreshing the scheduler UI (/cluster/scheduler)
> As a result the queue block dropdowns cannot be minimized. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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