mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joseph Wu <jos...@mesosphere.io>
Subject Re: Review Request 69472: Refactored master and agent streaming connections.
Date Thu, 06 Dec 2018 00:23:11 GMT

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

(Updated Dec. 5, 2018, 4:23 p.m.)


Review request for mesos, Benno Evers, Gastón Kleiman, and Greg Mann.


Changes
-------

Significant change from previous revision(s):

* The master **and** agent's `HttpConnection` structs have been pulled into a common header
due to their similarities.  This common header is renamed and tweaked, so it appears much
more explicitly named in the code.
* The Heartbeater helper has arguments more directly copied from the master now.  These arguments
were previously changed to remove the templating.  Having a templatized class may allow us
to modify the heartbeat message before sending it, i.e. adding a timestamp.
* The Heartbeater class now has a wrapper class to handle the actor lifecycle.


Summary (updated)
-----------------

Refactored master and agent streaming connections.


Bugs: MESOS-7564
    https://issues.apache.org/jira/browse/MESOS-7564


Repository: mesos


Description (updated)
-------

This moves the very similar `HttpConnection` classes inside the
master and agent into a common header.  The refactored
`StreamingHttpConnection<Event>` is more explicitly named to avoid
potentially clashing with the libprocess HTTP helpers.

This also moves the master's heartbeater helper into a new header
and transforms it into an RAII libprocess actor wrapper.  The 
heartbeater depends on this `StreamingHttpConnection` and is currently
used by the master for heartbeating the operator event stream
and HTTP framework connection.  A later patch will use this heartbeater
for agent->executor heartbeats.


Diffs (updated)
-----

  src/common/heartbeater.hpp PRE-CREATION 
  src/common/http.hpp ac9ed5e8b1c6e8e100eba401136eb95c9dd621d4 
  src/master/framework.cpp 36eda9f287bef28608024e0036db1f955a1b393c 
  src/master/http.cpp 68ee2a6dcffbc772afec6e797b1af8da48f61937 
  src/master/master.hpp c7becfa615964674dcf1ebd9424aa5818a0fdb85 
  src/master/master.cpp 3b3824a67f46866cd64e32d7f9f92484b5891aa2 
  src/slave/http.cpp ba389263ef7ab311682d542424eb56360841d24c 
  src/slave/slave.hpp edf7269d4057ec8c95bb54c855210ad00d002a50 
  src/slave/slave.cpp 858b78620e1ef33f3587d0bd95a684917aaf5bbb 


Diff: https://reviews.apache.org/r/69472/diff/2/

Changes: https://reviews.apache.org/r/69472/diff/1-2/


Testing
-------

make

The original plan was to use the same helper for the executor too, but of the Master, Framework,
and Agent heartbeats, only the executor lacks a streaming connection.


Thanks,

Joseph Wu


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