You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@mesos.apache.org by Marco Massenzio <ma...@mesosphere.io> on 2015/07/01 01:31:43 UTC
Re: Review Request 36061: Slave exits gracefully on DNS lookup
failure.
> On June 30, 2015, 6:48 p.m., Joris Van Remoortere wrote:
> > 3rdparty/libprocess/src/process.cpp, lines 899-902
> > <https://reviews.apache.org/r/36061/diff/1/?file=996141#file996141line899>
> >
> > 1. Did you choose to `LOG(ERROR)` followed by `exit(EXIT_FAILURE)` for a specific reason?
> > I think this would be more clear (but maybe you did it on purpose :-))
> > ```
> > EXIT(EXIT_FAILURE) << "...";
> > ```
> >
> > 2. s/Could not/Failed to/ (Most of our error messages start like this)
> >
> > 3. Can we put the hostname in ticks? `for '" << hostname << "'; the`
my bad - just not used to use EXIT() macro.
Fixed.
- Marco
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/36061/#review89943
-----------------------------------------------------------
On June 30, 2015, 6:41 p.m., Marco Massenzio wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/36061/
> -----------------------------------------------------------
>
> (Updated June 30, 2015, 6:41 p.m.)
>
>
> Review request for mesos, Adam B and Joris Van Remoortere.
>
>
> Repository: mesos
>
>
> Description
> -------
>
> Jira: MESOS-2962
>
> Slave fails with Abort stacktrace when DNS cannot resolve hostname
>
> If the DNS cannot resolve the hostname for a slave node, we correctly return an Error object, but we then fail with a segfault.
>
> This code adds a more user-friendly message and exits normally (with an `EXIT_FAILURE` code).
> For example, forcing `net::getIp()` to always return an Error, now causes the slave to exit like this:
> ```
> $ ./bin/mesos-slave.sh --master=10.10.1.121:5405
> WARNING: Logging before InitGoogleLogging() is written to STDERR
> E0630 11:31:45.777465 1944417024 process.cpp:899] Could not obtain the IP address for stratos.local; the DNS service may not be able to resolve it: >>> Marco was here!!!
>
> $ echo $?
> 1
> ```
>
>
> Diffs
> -----
>
> 3rdparty/libprocess/src/process.cpp d99947c1598c43c47c88ef3e8038081855f0d1dc
>
> Diff: https://reviews.apache.org/r/36061/diff/
>
>
> Testing
> -------
>
> make check
> and manual failing the DNS
>
>
> Thanks,
>
> Marco Massenzio
>
>