Jason Lowe created YARN-401:
-------------------------------

             Summary: ClientRMService.getQueueInfo can return stale application 
reports
                 Key: YARN-401
                 URL: https://issues.apache.org/jira/browse/YARN-401
             Project: Hadoop YARN
          Issue Type: Bug
          Components: resourcemanager
    Affects Versions: 0.23.6, 2.0.2-alpha
            Reporter: Jason Lowe
            Priority: Minor


ClientRMService.getQueueInfo is modifying a QueueInfo object when application 
reports are requested.  Unfortunately this QueueInfo object could be a 
persisting object in the scheduler, and modifying it in this way can lead to 
stale application reports being returned to the client.  Here's an example 
scenario with CapacityScheduler:

# A client asks for queue info on queue X with application reports
# ClientRMService.getQueueInfo modifies the queue's QueueInfo object and sets 
application reports on it
# Another client asks for recursive queue info from the root queue without 
application reports
# Since the old application reports are still attached to queue X's QueueInfo 
object, these stale reports appear in the QueueInfo data for queue X in the 
results

Normally if the client is not asking for application reports it won't be 
looking for and act upon any application reports that happen to appear in the 
queue info result.  However we shouldn't be returning application reports in 
the first place, and when we do, they shouldn't be stale.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to