Hello Kudu Jenkins, Abhishek Chennaka,

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/20772

to look at the new patch set (#2).

Change subject: [util] move TCP socket stats into the Socket class
......................................................................

[util] move TCP socket stats into the Socket class

This patch moves the protobuf data structures for TCP socket statistics
and transport details from src/kudu/rpc/rpc_introspection.proto into
src/kudu/util/net/socket_info.proto, separating them into a standalone
file.  In addition, four more fields from the kernel's tcp_info struct
have been exposed through the SocketStatsPB protobuf message.  Those
allow for tracking of outstanding/backlogged requests for new
connections to TCP sockets being listened to by a Kudu server.

The code that used to retrieve statistics on an RPC connection's TCP
socket has been moved into the Socket class correspondingly.  With that,
it's now possible to collect statistics from a TCP socket that's not yet
a transport for a KRPC connection.  It also makes it a better design
choice if considering the TransportDetailsPB::TlsDetails message, since
the updated code doesn't need to use dynamic-/down-casting anymore.

I also added a new test case to cover two out of four fields in the
newly exposed TCP socket statistics: it's not trivial to cover the
other two without messing up with a firewall or by selectively dropping
IP packets by other means.

The functionality of collecting TCP statistics for a Socket instance
will be used by follow-up patches that introduce new metrics to track
the state of a TCP socket that a Kudu RPC server listens at.

Change-Id: I48ba7915f5153bae288b462b07965cdea7b7957b
---
M src/kudu/rpc/CMakeLists.txt
M src/kudu/rpc/connection.cc
M src/kudu/rpc/connection.h
M src/kudu/rpc/rpc-test.cc
M src/kudu/rpc/rpc_introspection.proto
M src/kudu/security/CMakeLists.txt
M src/kudu/security/tls_socket.cc
M src/kudu/security/tls_socket.h
M src/kudu/util/CMakeLists.txt
M src/kudu/util/net/socket.cc
M src/kudu/util/net/socket.h
A src/kudu/util/net/socket_info.proto
12 files changed, 429 insertions(+), 320 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I48ba7915f5153bae288b462b07965cdea7b7957b
Gerrit-Change-Number: 20772
Gerrit-PatchSet: 2
Gerrit-Owner: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Abhishek Chennaka <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)

Reply via email to