Sunil G commented on YARN-2933:

Hi [~mayank_bansal]
Thank you for the clarification.

I have one more small nit in a test case

       if(setAMContainer && i == 0){
         cLive.add(mockContainer(appAttId, cAlloc, unit, 0));
       }else if(setLabeledContainer && i ==1){
         cLive.add(mockContainer(appAttId, cAlloc, unit, 2)); 
         cLive.add(mockContainer(appAttId, cAlloc, unit, 1));

For *mockContainer*, last parameter is integer. And it represents 0 for AM 
container, 1 for normal container, and 2 for labelled container.
Could we make it with a macro and more generic. So in future, it will be easy 
to add a type of container and for readability. 
We can have an array of different container types, and it can added as needed 
This array index can be used with Enum to create a  mock container. 

> Capacity Scheduler preemption policy should only consider capacity without 
> labels temporarily
> ---------------------------------------------------------------------------------------------
>                 Key: YARN-2933
>                 URL: https://issues.apache.org/jira/browse/YARN-2933
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: capacityscheduler
>            Reporter: Wangda Tan
>            Assignee: Mayank Bansal
>         Attachments: YARN-2933-1.patch, YARN-2933-2.patch, YARN-2933-3.patch, 
> YARN-2933-4.patch, YARN-2933-5.patch, YARN-2933-6.patch
> Currently, we have capacity enforcement on each queue for each label in 
> CapacityScheduler, but we don't have preemption policy to support that. 
> YARN-2498 is targeting to support preemption respect node labels, but we have 
> some gaps in code base, like queues/FiCaScheduler should be able to get 
> usedResource/pendingResource, etc. by label. These items potentially need to 
> refactor CS which we need spend some time carefully think about.
> For now, what immediately we can do is allow calculate ideal_allocation and 
> preempt containers only for resources on nodes without labels, to avoid 
> regression like: A cluster has some nodes with labels and some not, assume 
> queueA isn't satisfied for resource without label, but for now, preemption 
> policy may preempt resource from nodes with labels for queueA, that is not 
> correct.
> Again, it is just a short-term enhancement, YARN-2498 will consider 
> preemption respecting node-labels for Capacity Scheduler which is our final 
> target. 

This message was sent by Atlassian JIRA

Reply via email to