> On May 17, 2018, 11:12 a.m., Benjamin Bannier wrote: > > 3rdparty/libprocess/include/process/grpc.hpp > > Lines 188 (patched) > > <https://reviews.apache.org/r/67154/diff/3/?file=2024197#file2024197line191> > > > > Why do we `move` here? It seems both not needed to me as `shared_ptr`'s > > `operator*` returns an lvalue and also potentially like a dangerous > > antipattern since (at least in general) the shared data is not necessarily > > safe to access concurrently. > > > > Please just make a copy here.
I did a move because I'd like to avoid a protobuf copy when doing `promise->set`. `response` is a shared pointer just because C++11 cannot capture unique pointer. All shared pointers in this function are supposed to be unique pointers. - Chun-Hung ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/67154/#review203317 ----------------------------------------------------------- On May 16, 2018, 10:02 p.m., Chun-Hung Hsiao wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/67154/ > ----------------------------------------------------------- > > (Updated May 16, 2018, 10:02 p.m.) > > > Review request for mesos, Benjamin Bannier, Benjamin Mahler, Jie Yu, and > Zhitao Li. > > > Bugs: MESOS-8924 > https://issues.apache.org/jira/browse/MESOS-8924 > > > Repository: mesos > > > Description > ------- > > The `process::grpc::client::Runtime::call` method currently returns a > `RpcResult<Response>`, which contains both a `::grpc::Status` object > and the resulting response protobuf. However, if the `::grpc::Status` > represents a non-OK status, the gRPC library does not guarantee that > the response protobuf is valid. This patch replaces `RpcResult` with > `Try` to provide better type safety. > > > Diffs > ----- > > 3rdparty/libprocess/include/process/grpc.hpp > 321a46e19c69eafb24012bcef68bb8b0cc6aa436 > 3rdparty/libprocess/src/tests/grpc_tests.cpp > 38cd6c61b54518a1019bb11a3551be13026c3f0d > > > Diff: https://reviews.apache.org/r/67154/diff/3/ > > > Testing > ------- > > make check in libprocess > > NOTE: Mesos cannot be built with this patch standalone. The tests are done > later in the chain. > > > Thanks, > > Chun-Hung Hsiao > >
