Henry Robinson has uploaded a new patch set (#2).

Change subject: KUDU-1866: [WIP] Add request-side sidecars
......................................................................

KUDU-1866: [WIP] Add request-side sidecars

This patch adds sidecars to client requests. Using the same mechanism as on the
response-side, clients may attach slices to outbound requests which do not pass 
through a
serialization or copy before being pushed to the network socket. On the server 
side, these
sidecars may be read directly from the underlying byte stream with the 
interposition of
a Protobuf wrapper.

The sidecars may be added to a request via RpcController and retrieved via 
RpcContext
(i.e. the reverse of the existing response-side interface).

This patch adds a few tests to rpc-test, and all rpc-test tests pass.

TODO:

* Tidy up response-side sidecars to use scoped ptrs as well.
* Consider some SidecarUtil class or module to share the mostly identical logic 
in
  CallResponse::ParseFrom() and InboundCall::ParseFrom().
* More tests - too many sidecars, sidecars > rpc_max_message_size, out-of-range 
sidecar
  access on server side.

Change-Id: I3d709edb2a22dc983f51b69d7660a39e8d8d6a09
---
M src/kudu/rpc/CMakeLists.txt
M src/kudu/rpc/inbound_call.cc
M src/kudu/rpc/inbound_call.h
M src/kudu/rpc/outbound_call.cc
M src/kudu/rpc/outbound_call.h
M src/kudu/rpc/proxy.cc
M src/kudu/rpc/rpc-test-base.h
M src/kudu/rpc/rpc-test.cc
M src/kudu/rpc/rpc_controller.cc
M src/kudu/rpc/rpc_controller.h
M src/kudu/rpc/rpc_header.proto
A src/kudu/rpc/rpc_sidecar.cc
M src/kudu/rpc/rpc_sidecar.h
M src/kudu/rpc/rtest.proto
M src/kudu/rpc/transfer.h
M src/kudu/tserver/tablet_service.cc
16 files changed, 255 insertions(+), 52 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/08/5908/2
-- 
To view, visit http://gerrit.cloudera.org:8080/5908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I3d709edb2a22dc983f51b69d7660a39e8d8d6a09
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Henry Robinson <he...@cloudera.com>

Reply via email to