Greg Mann created MESOS-7680:
--------------------------------
Summary: Stop using EXIT() in master/agent initialization code
Key: MESOS-7680
URL: https://issues.apache.org/jira/browse/MESOS-7680
Project: Mesos
Issue Type: Improvement
Components: agent, master
Reporter: Greg Mann
The initialization of master/agent dependencies is currently inconsistent. For
some dependencies, we initialize them outside of the actor and then inject them
via the constructor; for example, in {{main.cpp}} and {{cluster.cpp}}.
Some other dependencies are created/initialized within the master/slave's
{{initialize()}} method. In this case, if the dependency creation fails, we use
{{EXIT(EXIT_FAILURE)}} to terminate the process. In the case of tests, this is
problematic. If I create multiple agents, for example, and one of their
dependencies fails to initialize successfully, the entire test harness would
exit :-(
Instead of using {{EXIT}} when dependency creation fails, we should terminate
the master/agent libprocess process. In the case of the production binaries,
this will cause the executable to exit. In the case of our tests, this will
allow a single test to fail, while the test harness continues running.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)