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

Konstantin Weitz updated YARN-1351:
-----------------------------------

    Attachment: patch

> Invalid string format in Fair Scheduler log warn message
> --------------------------------------------------------
>
>                 Key: YARN-1351
>                 URL: https://issues.apache.org/jira/browse/YARN-1351
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: resourcemanager
>            Reporter: Konstantin Weitz
>         Attachments: patch
>
>
> While trying to print a warning, two values of the wrong type (Resource 
> instead of int) are passed into a String.format method call, leading to a 
> runtime exception, in the file:
> _trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/QueueManager.java_.
> The warning was intended to be printed whenever the resources don't fit into 
> each other, either because the number of virtual cores or the memory is too 
> small. I changed the %d's into %s, this way the warning will contain both the 
> cores and the memory.
> Following the patch that fixes the issue:
> Index: 
> hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/QueueManager.java
> ===================================================================
> --- 
> hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/QueueManager.java
>         (revision 1535589)
> +++ 
> hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/QueueManager.java
>         (working copy)
> @@ -471,7 +471,7 @@
>      if (maxQueueResources.containsKey(queueName) && 
> minQueueResources.containsKey(queueName)
>          && !Resources.fitsIn(minQueueResources.get(queueName),
>              maxQueueResources.get(queueName))) {
> -      LOG.warn(String.format("Queue %s has max resources %d less than min 
> resources %d",
> +      LOG.warn(String.format("Queue %s has max resources %s less than min 
> resources %s",
>            queueName, maxQueueResources.get(queueName), 
> minQueueResources.get(queueName)));
>      }
>    }



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to