> On Oct. 18, 2016, 9:41 p.m., Joris Van Remoortere wrote:
> > 3rdparty/libprocess/src/poll_socket.cpp, line 114
> > <https://reviews.apache.org/r/52997/diff/1/?file=1540940#file1540940line114>
> >
> >     Missing reference.
> 
> James Peach wrote:
>     I wanted a copy (at least the lambda needs to take a copy), since 
> ``connect`` takes a reference to the address.
> 
> Joris Van Remoortere wrote:
>     It should be a copy by default unless you `cref` it right?
>     I think you can make the parameter a `const Address& to`.
>     Mpark do you have an opinion?

Ok, `std::decay` says it removes the reference, so there's an implicit copy 
into the lambda here.


On Oct. 18, 2016, 9:41 p.m., James Peach wrote:
> > Can you also follow up with a review to change the logging level in 
> > libprocess for failing to close the socket if we fail to connect?
> > Maybe it should be `VLOG(1)`? Thoughts?
> 
> James Peach wrote:
>     I actually removed the `VLOG` thinking that it would be better for the 
> caller to log the error since it can provide context.
> 
> Joris Van Remoortere wrote:
>     I meant these 2:
>     
> https://github.com/apache/mesos/blob/fd1b7bdfb2aa8a6f3dffab9ce8114c1a3c183e23/3rdparty/libprocess/src/process.cpp#L2071
>     
> https://github.com/apache/mesos/blob/fd1b7bdfb2aa8a6f3dffab9ce8114c1a3c183e23/3rdparty/libprocess/src/process.cpp#L2154

Oh I see. I haven't really looked at that code, though I recall seeing spurious 
errors from it in the past. In most cases I see through that code path a socket 
that is not connected would not be added to the socket manager. Maybe reconnect 
has a way though.


- James


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


On Oct. 18, 2016, 9:37 p.m., James Peach wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/52997/
> -----------------------------------------------------------
> 
> (Updated Oct. 18, 2016, 9:37 p.m.)
> 
> 
> Review request for mesos and Michael Park.
> 
> 
> Bugs: MESOS-6412
>     https://issues.apache.org/jira/browse/MESOS-6412
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Rather than returning a fixed generic error when connect(2) fails,
> report the actual socket error as well as the address we were trying to
> connect to.
> 
> 
> Diffs
> -----
> 
>   3rdparty/libprocess/src/poll_socket.cpp 
> d9ab3fbbf385c39c0e43ee92ff06609ae8d47e2d 
> 
> Diff: https://reviews.apache.org/r/52997/diff/
> 
> 
> Testing
> -------
> 
> `make check` on a host whose hostname doesn't match its IP address.
> 
> ```
> [jpeach@jpeach libprocess]$ ./libprocess-tests 
> --gtest_filter=HTTPTest.Endpoints
> Note: Google Test filter = HTTPTest.Endpoints
> [==========] Running 1 test from 1 test case.
> [----------] Global test environment set-up.
> [----------] 1 test from HTTPTest
> [ RUN      ] HTTPTest.Endpoints
> ../../../3rdparty/libprocess/src/tests/http_tests.cpp:141: Failure
> (socket.connect(http.process->self().address)).failure(): Failed to connect 
> to 17.203.52.49:39241: Connection refused
> [  FAILED  ] HTTPTest.Endpoints (4 ms)
> [----------] 1 test from HTTPTest (4 ms total)
> 
> [----------] Global test environment tear-down
> [==========] 1 test from 1 test case ran. (5 ms total)
> [  PASSED  ] 0 tests.
> [  FAILED  ] 1 test, listed below:
> [  FAILED  ] HTTPTest.Endpoints
> 
>  1 FAILED TEST
> ```
> 
> 
> Thanks,
> 
> James Peach
> 
>

Reply via email to