Yufei Gu commented on YARN-4493:

Looking closely into this issue. I found it is not reproducible, and the 
original logic is solid. For a runnable application, we have the following 
logic to make sure its resource requests meet the limitation of the target 
queue *before {{executeMove}}*:
      if (oldQueue.isRunnableApp(attempt)) {
        verifyMoveDoesNotViolateConstraints(attempt, oldQueue, targetQueue);
So, [~jiangyu1211], could you provide more details of this issue or the way to 
reproduce it?

> move queue can make app don't belong to any queue
> -------------------------------------------------
>                 Key: YARN-4493
>                 URL: https://issues.apache.org/jira/browse/YARN-4493
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: fairscheduler
>    Affects Versions: 2.4.0, 2.6.0, 2.7.1
>            Reporter: jiangyu
>            Assignee: Yufei Gu
>            Priority: Minor
>         Attachments: YARN-4493.001.patch, yarn-4493.patch.1
> When moving a running application to a different queue, the current implement 
> don't check if the app can run in the new queue before remove it from current 
> queue. So if the destination queue is full, the app will throw exception, and 
> don't belong to any queue.    
> After that, the queue become orphane, can not schedule any resources. If you 
> kill the app,  the removeApp method in FSLeafQueue will throw 
> IllealStateException of "Given app to remove app does not exist in queue ..." 
> exception.   
> So i think we should check if the destination queue can run the app before 
> remove it from the current queue.  
> The patch is from our revision.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org

Reply via email to