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

zhihai xu updated YARN-3241:
----------------------------
    Description: 
Leading space, trailing space and empty sub queue name may cause 
MetricsException(Metrics source XXX already exists! ) when add application to 
FairScheduler.
The reason is because QueueMetrics parse the queue name different from the 
QueueManager.
QueueMetrics use Q_SPLITTER to parse queue name, it will remove Leading space 
and trailing space in the sub queue name, It will also remove empty sub queue 
name.
{code}
  static final Splitter Q_SPLITTER =
      Splitter.on('.').omitEmptyStrings().trimResults(); 
{code}
But QueueManager won't remove Leading space, trailing space and empty sub queue 
name.
This will cause out of sync between FSQueue and FSQueueMetrics.
QueueManager will think two queue names are different so it will try to create 
a new queue.
But FSQueueMetrics will treat these two queue names as same queue which will 
create "Metrics source XXX already exists!" MetricsException.

  was:
Leading space, trailing space and empty sub queue name may cause 
MetricsException(Metrics source XXX already exists! ) when add application to 
FairScheduler.
The reason is because QueueMetrics parse the queue name different from the 
QueueManager.
QueueMetrics use Q_SPLITTER to parse queue name, it will remove Leading space 
and trailing space in the sub queue name, It will also remove empty sub queue 
name.
{code}
  static final Splitter Q_SPLITTER =
      Splitter.on('.').omitEmptyStrings().trimResults(); 
{code}
But QueueManager won't remove Leading space, trailing space and empty sub queue 
name.
This will cause out of sync between FSQueue and FSQueueMetrics.
QueueManager will think two queue names are different so it will try to create 
a new queue.
But FSQueueMetrics will treat these two queue names as same which will create 
"Metrics source XXX already exists!" MetricsException.


> Leading space, trailing space and empty sub queue name may cause 
> MetricsException for fair scheduler
> ----------------------------------------------------------------------------------------------------
>
>                 Key: YARN-3241
>                 URL: https://issues.apache.org/jira/browse/YARN-3241
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: scheduler
>            Reporter: zhihai xu
>            Assignee: zhihai xu
>
> Leading space, trailing space and empty sub queue name may cause 
> MetricsException(Metrics source XXX already exists! ) when add application to 
> FairScheduler.
> The reason is because QueueMetrics parse the queue name different from the 
> QueueManager.
> QueueMetrics use Q_SPLITTER to parse queue name, it will remove Leading space 
> and trailing space in the sub queue name, It will also remove empty sub queue 
> name.
> {code}
>   static final Splitter Q_SPLITTER =
>       Splitter.on('.').omitEmptyStrings().trimResults(); 
> {code}
> But QueueManager won't remove Leading space, trailing space and empty sub 
> queue name.
> This will cause out of sync between FSQueue and FSQueueMetrics.
> QueueManager will think two queue names are different so it will try to 
> create a new queue.
> But FSQueueMetrics will treat these two queue names as same queue which will 
> create "Metrics source XXX already exists!" MetricsException.



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

Reply via email to