mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anindya Sinha <anindya_si...@apple.com>
Subject Re: Review Request 45959: Support arithmetic operations for shared resources with consumer counts.
Date Tue, 19 Jul 2016 22:51:43 GMT


> On July 19, 2016, 5:03 p.m., Jiang Yan Xu wrote:
> > It would be helpful to add a test just for contains. i.e., to test how `contains`
works with nonshared resources and how it works with simple shared resources (could be constructed
from createDiskResources with no arithmetic operations).
> > 
> > Also as a followup add a benchmark for resource operations. (Let's check with the
IBM folks on their progress in adding DiskInfo and Reservation
> 
> Jiang Yan Xu wrote:
>     Finishing my sentense above: "Diskinfo and ReservationInfo" to resources benchmarks)"

Added a test `SharedResourcesTest.Contains` to verify `contains()` semantics with regular
and shared resources.
Regarding benchmark for resources, that has already been added to https://reviews.apache.org/r/49571/.


> On July 19, 2016, 5:03 p.m., Jiang Yan Xu wrote:
> > src/tests/resources_tests.cpp, line 2615
> > <https://reviews.apache.org/r/45959/diff/7/?file=1445857#file1445857line2615>
> >
> >     How about also throwing in a check for `count`:
> >     
> >     ```
> >     EXPECT_TRUE(diff.count(disk));
> >     ```

I think you mean check for `contains(disk)`. Added.


> On July 19, 2016, 5:03 p.m., Jiang Yan Xu wrote:
> > src/tests/resources_tests.cpp, line 2647
> > <https://reviews.apache.org/r/45959/diff/7/?file=1445857#file1445857line2647>
> >
> >     Seems like this should fail?
> >     
> >     This should be true?
> >     ```
> >     EXPECT_EQ(r2 - r1 + r1, r2);
> >     ```

```
Resources r1 = Resources::parse("cpus:2;mem:10").get() + disk + disk + disk + disk;
Resources r2 = Resources::parse("cpus:2;mem:10").get() + disk + disk + disk;
```

So, `EXPECT_EQ(r2 - r1 + r1, r1)` works as follows:
1) Since the `r2.count(disk) = 3` and `r1.count(disk) = 4`, so `r2 - r1` is an empty `Resources`
object (since unshared resources are same).
2) So, when we add `r1` to that empty `Resources` object, we should get `r1`.


- Anindya


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


On July 18, 2016, 2:29 p.m., Anindya Sinha wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45959/
> -----------------------------------------------------------
> 
> (Updated July 18, 2016, 2:29 p.m.)
> 
> 
> Review request for mesos, Benjamin Mahler, Joris Van Remoortere, and Jiang Yan Xu.
> 
> 
> Bugs: MESOS-4892
>     https://issues.apache.org/jira/browse/MESOS-4892
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> A new class Resource_ is added that allows 'Resources' to group
> identical shared resource objects together into a single 'Resource_'
> object and tracked by its shared count. Non-shared resource objects
> are not grouped.
> 
> For resource addition and subtraction, the shared count is adjusted for
> shared resources as follows:
> a) Addition: If shared resource is absent from original, then the
>    resource is added initialized with a consumer count of 1. Otherwise,
>    the share count for the shared resource is incremented.
> b) Subtraction: If shared resource's share count is already 1, then
>    the shared resource is removed from the original. Otherwise, its
>    consumer count is decremented.
> 
> Note that v1 changes for shared resources are in the next commit.
> 
> 
> Diffs
> -----
> 
>   include/mesos/resources.hpp a557e97c65194d4aad879fb88d8edefd1c95b8d8 
>   src/common/resources.cpp f6ff92b591c15bc8e93fd85e1896349c3a7bb968 
>   src/master/validation.cpp 50ba372d1301d16d1738a3e4f4882b51f9ce06cd 
>   src/tests/mesos.hpp e4eccfc3810bed3649a3ab80e252849470de4c72 
>   src/tests/resources_tests.cpp 40d290ac540d26373c5fb7c2a93d27d1aa61d722 
> 
> Diff: https://reviews.apache.org/r/45959/diff/
> 
> 
> Testing
> -------
> 
> New tests added to demonstrate arithmetic operations for shared resources with consumer
counts.
> Tests successful.
> 
> 
> Thanks,
> 
> Anindya Sinha
> 
>


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