mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Benjamin Mahler <bmah...@apache.org>
Subject Re: Review Request 70738: Allow roles to burst up to quota limits in the allocator.
Date Fri, 07 Jun 2019 18:48:21 GMT

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/70738/#review215754
-----------------------------------------------------------


Fix it, then Ship it!




We've come a long way, the allocation cycle code is a lot more pleasant to read than when
we started working on it!


src/master/allocator/mesos/hierarchical.cpp
Line 1772 (original), 1774 (patched)
<https://reviews.apache.org/r/70738/#comment302560>

    Hm.. I would expect this to say something more like:
    
    "In the 1st stage, we allocate to satisfy quota guarantees"
    
    The fact that the default guarantees == 0 guarantees -> and therefore no guarantees
to satsify seems like an extra mental step for the reader?



src/master/allocator/mesos/hierarchical.cpp
Lines 1776-1784 (original), 1776-1784 (patched)
<https://reviews.apache.org/r/70738/#comment302561>

    ditto here, the non-default guarantee seems like an extra mental step for the reader?



src/master/allocator/mesos/hierarchical.cpp
Lines 1796-1797 (patched)
<https://reviews.apache.org/r/70738/#comment302562>

    Hm.. why?



src/master/allocator/mesos/hierarchical.cpp
Line 1860 (original), 1874 (patched)
<https://reviews.apache.org/r/70738/#comment302564>

    "Rationale":
    
    https://writingexplained.org/rational-vs-rationale-difference



src/master/allocator/mesos/hierarchical.cpp
Line 1874 (original), 1888 (patched)
<https://reviews.apache.org/r/70738/#comment302565>

    "Rationale"



src/master/allocator/mesos/hierarchical.cpp
Line 1890 (original), 1904 (patched)
<https://reviews.apache.org/r/70738/#comment302567>

    ... to increase a role's quota consumption
    
    ("allocate to" seems to fit reservations also, whereas reservations don't increase consumption
when allocated)



src/master/allocator/mesos/hierarchical.cpp
Lines 1930 (patched)
<https://reviews.apache.org/r/70738/#comment302568>

    not sure I understand the comment, "explicitly here" as opposed to?



src/master/allocator/mesos/hierarchical.cpp
Line 1917 (original), 1942 (patched)
<https://reviews.apache.org/r/70738/#comment302569>

    Can we check against "no limits" rather than default?
    
    (Also, just so I understand, this `if` condition is an optimization right?)



src/master/allocator/mesos/hierarchical.cpp
Line 1925 (original), 1950 (patched)
<https://reviews.apache.org/r/70738/#comment302570>

    This if condition is an optimization right?



src/master/allocator/mesos/hierarchical.cpp
Lines 1978-1979 (original), 2010-2011 (patched)
<https://reviews.apache.org/r/70738/#comment302571>

    "since allocating these does not make progress towards satsifying quota guarantees"?



src/master/allocator/mesos/hierarchical.cpp
Lines 2049-2055 (original), 2081-2087 (patched)
<https://reviews.apache.org/r/70738/#comment302573>

    Isn't this just:
    
    ```
    Resources toAllocate = available.allocatableTo(role).reserved();
    ```
    
    No need for the TODO?



src/master/allocator/mesos/hierarchical.cpp
Line 2064 (original), 2096 (patched)
<https://reviews.apache.org/r/70738/#comment302576>

    Ditto here, can we check against no limits?
    
    Ah, I also just realized that this check is needed at the current time because since `rolesConsumedQuota`
does not store roles with empty limits.



src/master/allocator/mesos/hierarchical.cpp
Lines 2145 (patched)
<https://reviews.apache.org/r/70738/#comment302577>

    Fragile to not fill the map with every role, hoping to see this if condition go away soon



src/tests/hierarchical_allocator_tests.cpp
Line 4425 (original), 4424-4426 (patched)
<https://reviews.apache.org/r/70738/#comment302566>

    s/.get()/->/


- Benjamin Mahler


On June 4, 2019, 9:15 p.m., Meng Zhu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/70738/
> -----------------------------------------------------------
> 
> (Updated June 4, 2019, 9:15 p.m.)
> 
> 
> Review request for mesos, Andrei Sekretenko and Benjamin Mahler.
> 
> 
> Bugs: MESOS-8456
>     https://issues.apache.org/jira/browse/MESOS-8456
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> This patch allows roles to burst above their quota guarantees
> up to the quota limits.
> 
> In the first allocation stage which is dedicated to roles
> with non-default guarantees, we allow these roles to burst
> up to their limits for resources that they have guarantees
> set as well as for other resources allocated together
> with the guaranteed resources. These bursts are subject to
> global headroom enforcement.
> 
> In the second allocation stage, we allow all roles to burst
> up to their limits while maintaining the global headroom.
> In this stage, if some unreserved non-revocable scalar resources
> on the agent need to be held back to maintain the headroom,
> we will "chop" them to make the largest offer possible without
> breaking the quota headroom. Previously, if any resources are
> needed on this agent to maintain the headroom, NO unreserved
> scalar resources will be offered at all.
> 
> Also fixed an affected test.
> 
> 
> Diffs
> -----
> 
>   src/master/allocator/mesos/hierarchical.cpp aa4c43882d0befb2100c92f383e87ab637fa4c7e

>   src/tests/hierarchical_allocator_tests.cpp 7221a642a8dda1c7b8ed5ebe7f9b840b5e949e88

> 
> 
> Diff: https://reviews.apache.org/r/70738/diff/3/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Meng Zhu
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message