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

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

    Description: 
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.


  was:
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)));
     }
   }



> 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: fixprnt.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.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to