mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Benjamin Bannier <bbann...@apache.org>
Subject Re: Review Request 61183: Triggered 'UpdateSlaveMessage' when 'ResourceProviderManager' updates.
Date Wed, 20 Sep 2017 14:24:46 GMT


> On Sept. 19, 2017, 12:03 a.m., Jie Yu wrote:
> > src/slave/slave.cpp
> > Lines 6669 (patched)
> > <https://reviews.apache.org/r/61183/diff/8/?file=1827893#file1827893line6669>
> >
> >     add a `break` for the first level switch? and a default?

I added a `break` here.

I did not add a `default` branch as we want to explicitly trigger a compiler warning about
uncovered cases here should another message type be added in the future.


> On Sept. 19, 2017, 12:03 a.m., Jie Yu wrote:
> > src/tests/slave_tests.cpp
> > Lines 8357 (patched)
> > <https://reviews.apache.org/r/61183/diff/8/?file=1827894#file1827894line8357>
> >
> >     can we get rid of the process:: prefix?

All types from `process::http` in this file are fully qualified (e.g., also `process::http::Request`).
I'll submit an additional RR to tidy this up (https://reviews.apache.org/r/62439/).


> On Sept. 19, 2017, 12:03 a.m., Jie Yu wrote:
> > src/tests/slave_tests.cpp
> > Lines 8372 (patched)
> > <https://reviews.apache.org/r/61183/diff/8/?file=1827894#file1827894line8372>
> >
> >     Do we need the `mesos::` prefix?

I believe sadly we do. We for sure what to distinguish unversioned from e.g., `v1` types.
On the other hand in tests we have a namespace `mesos::internal::v1` and just e.g., `v1::resource_provider::Event::Subscribed`
is looked up in that one instead of `mesos::v1`.

I guess an alternative would be to define aliases for `v1` types and subnamespaces, but I
don't see that being done currently (and it IMO seems to make things even more convoluted).


- Benjamin


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


On Sept. 20, 2017, 4:24 p.m., Benjamin Bannier wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/61183/
> -----------------------------------------------------------
> 
> (Updated Sept. 20, 2017, 4:24 p.m.)
> 
> 
> Review request for mesos, Jie Yu and Jan Schlicht.
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> The agent's resource provider manager sends a
> 'ResourceProviderMessage' when its managed resources change. This
> commit adds handling in the agent so that an 'UpdateSlaveMessage' is
> sent to the master to update the total resource available on the
> agent.
> 
> In order to provide push-like handling of the resource provider
> manager's message queue, we chain recursive calls to the handler for
> continuous processing. Initially, processing is kicked off from
> 'Slave::initialize'. In this simple implementation we e.g., provide no
> direct way to stop processing of messages, yet, but it can be achieved
> by e.g., replacing the manager with a new instance (this would also
> require updating routes).
> 
> Since the agent can only send an 'UpdateSlaveMessage' when it is
> registered with a master, a simple back-off of 5 s is implemented which
> will defer processing of a ready message should the agent not yet have
> registered.
> 
> To facilitate logging we add a stringification function for
> 'ResourceProviderMessage's.
> 
> This patch also adjusts a number of tests to no expect two
> 'UpdateSlaveMessage's.
> 
> 
> Diffs
> -----
> 
>   src/resource_provider/message.hpp 3c7c3f2baeb726e04edd6ffbb9784699d7afe521 
>   src/slave/slave.hpp aea1e948209c7c8945665915bc2f6d8eb47814ef 
>   src/slave/slave.cpp 01020a624bdd67ee6371f607d897ad71a2cdcc82 
>   src/tests/oversubscription_tests.cpp 02b10d6689dd6f01510cd2d5db2bb76b4b190eca 
>   src/tests/slave_tests.cpp e9bcfefd52e1e99a7a5877b2e7c30af958ca1723 
> 
> 
> Diff: https://reviews.apache.org/r/61183/diff/10/
> 
> 
> Testing
> -------
> 
> Tested on a number of platforms on internal CI.
> 
> 
> Thanks,
> 
> Benjamin Bannier
> 
>


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