Alexey Serbin has uploaded a new patch set (#2) to the change originally 
created by Todd Lipcon. ( http://gerrit.cloudera.org:8080/12184 )

Change subject: rpc: add TCP socket statistics to /rpcz
......................................................................

rpc: add TCP socket statistics to /rpcz

This adds the ability to fetch various bits of socket-level information
for each RPC connection and publish the info into /rpcz. The information
itself is fetched using getsockopt(TCP_INFO) as well as ioctls to check
the current send and receive queue lengths.

This data can help resolve whether a use case is network bound or bound
by the application itself. For example, a high number of retransmitted
packets can indicate that the network path to the receiver is
overloaded.

Eventually we may want to expose some of this information on a per-call
basis. However, doing so is quite tricky, since 'send()' completes when
the data has been placed into the outbound packet queue and doesn't wait
until the data is ACKed. We'd need to defer checking for retransmissions
until all of the data has been ACKed, which is at some indeterminate
point in the future. The very newest kernels allow subscribing to such
notifications (along with lots of interesting stats) but, given none of
that is available in el7, it's probably not worth tackling at this
point.

Change-Id: I552c9dd80c0730ccd6bf7b13bb63761744a854c2
---
M src/kudu/rpc/connection.cc
M src/kudu/rpc/connection.h
M src/kudu/rpc/inbound_call.cc
M src/kudu/rpc/inbound_call.h
M src/kudu/rpc/messenger.cc
M src/kudu/rpc/messenger.h
M src/kudu/rpc/outbound_call.cc
M src/kudu/rpc/outbound_call.h
M src/kudu/rpc/reactor.cc
M src/kudu/rpc/reactor.h
M src/kudu/rpc/rpc-test.cc
M src/kudu/rpc/rpc_introspection.proto
M src/kudu/rpc/rpc_stub-test.cc
M src/kudu/server/rpcz-path-handler.cc
14 files changed, 308 insertions(+), 45 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I552c9dd80c0730ccd6bf7b13bb63761744a854c2
Gerrit-Change-Number: 12184
Gerrit-PatchSet: 2
Gerrit-Owner: Todd Lipcon <t...@apache.org>
Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Lars Volker <l...@cloudera.com>
Gerrit-Reviewer: Michael Ho <k...@cloudera.com>
Gerrit-Reviewer: Philip Zeyliger <phi...@cloudera.com>
Gerrit-Reviewer: Todd Lipcon <t...@apache.org>

Reply via email to