mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Joerg Schad" <jo...@mesosphere.io>
Subject Re: Review Request 38158: Refactored Value::Ranges coalesce().
Date Wed, 23 Sep 2015 10:28:35 GMT


> On Sept. 23, 2015, 12:58 a.m., Michael Park wrote:
> > src/common/values.cpp, line 301
> > <https://reviews.apache.org/r/38158/diff/13/?file=1081516#file1081516line301>
> >
> >     Can we just take a `Value::Ranges` here rather than `initializer_list<Value::Ranges>`?
> >     
> >     It looks like the only place we actually use this is in `operator+`, for which
we can just follow the pattern for `operator-`.
> >     
> >     ```cpp
> >     coalesce(&result, left);
> >     return result += result;
> >     ```
> >     
> >     I think it would also clean up this code significantly, as we wouldn't need
the `rangesSum` loop, The `fill` function wouldn't have to be factored out, wouldn't need
the `offset` math, etc.
> 
> Joerg Schad wrote:
>     Would like to avoid coalescing twice, but couldnt we do something along the lines

>     ```c++
>     void coalesce(Value::Ranges* result, Value::Ranges ranges) {
>       size_t rangesSum = result->range_size() + ranges->ranges_size();
>     ```
>     
>     In that case I would probably leave fill factored out, but the rest (rangesSum, offset)
would be simplified.
> 
> Joerg Schad wrote:
>     Na doesn't really help, will add a more detailed discussion of tradeoffs.

As discussed.


- Joerg


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


On Sept. 22, 2015, 8:55 p.m., Joerg Schad wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/38158/
> -----------------------------------------------------------
> 
> (Updated Sept. 22, 2015, 8:55 p.m.)
> 
> 
> Review request for mesos, Bernd Mathiske, Joris Van Remoortere, and Till Toenshoff.
> 
> 
> Bugs: MESOS-3051
>     https://issues.apache.org/jira/browse/MESOS-3051
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> The goal of this refactoring was to reuse the Ranges objects as much as possible, as
prior there was substantial time spend in allocation/destruction (MESOS-3051).
> 
> 
> Diffs
> -----
> 
>   src/common/values.cpp 750264e603b4cde2011f07f4434a4b34fe3e512f 
>   src/tests/resources_tests.cpp 0318885336409f7cc9dbd4a3daa9b52db197bbd1 
>   src/tests/values_tests.cpp fc35d97894a2de6207b9337180e2160e6f2cb1f5 
> 
> Diff: https://reviews.apache.org/r/38158/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Joerg Schad
> 
>


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