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