----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/53802/#review160896 -----------------------------------------------------------
3rdparty/libprocess/src/libevent_ssl_socket.hpp (line 143) <https://reviews.apache.org/r/53802/#comment232139> I liked the name `perform_bev_read` because this function is no longer simply a continuation of the libevent callback, it also has a callsite in `event_callback`. I also find it confusing that the `XXX_callback` functions all have continuations with the same name in this file. However, you make a good point regarding consistency. We could rename this function `_recv_callback`, which matches our usual pattern for continuations, and I could follow up with another patch to similarly change the names of the relevant `send_callback` and `event_callback` functions. Thoughts? 3rdparty/libprocess/src/libevent_ssl_socket.hpp (line 155) <https://reviews.apache.org/r/53802/#comment232263> I originally did have `received_eof` explicitly protected by `synchronized (bev)`, but as BenM mentioned in our offline discussion we should be safe without this since all accesses of `received_eof` occur in the event loop. I'll move this declaration and add a comment. - Greg Mann On Dec. 15, 2016, 5:53 p.m., Greg Mann wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/53802/ > ----------------------------------------------------------- > > (Updated Dec. 15, 2016, 5:53 p.m.) > > > Review request for mesos, Benjamin Mahler and Joseph Wu. > > > Bugs: MESOS-6802 > https://issues.apache.org/jira/browse/MESOS-6802 > > > Repository: mesos > > > Description > ------- > > Previously, it was possible for an SSL socket to either: > 1) Fail to receive an EOF if the EOF event was received when > there was no pending recv() request. > 2) Fail to receive all data sent on the sending side if an > EOF event was received before all sent data was read. > > This patch eliminates these race conditions to ensure reliable > receipt of both sent data and EOFs. > > > Diffs > ----- > > 3rdparty/libprocess/src/libevent_ssl_socket.hpp > 57eaf4f607d0628db466cc1a139772eeeaa51136 > 3rdparty/libprocess/src/libevent_ssl_socket.cpp > dddd0e292a8b0d470f4e199db08f09a0c863d73c > > Diff: https://reviews.apache.org/r/53802/diff/ > > > Testing > ------- > > Testing details are found at the end of this chain. > > > Thanks, > > Greg Mann > >
