Hello Alexey Serbin, Kudu Jenkins,

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

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

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

Change subject: [socket] Fix test failure caused due to unsupported socket 
option
......................................................................

[socket] Fix test failure caused due to unsupported socket option

setsockopt() system call doesn't support SO_REUSEPORT for a Unix domain
socket. Due to this, following tests fail on certain linux versions:
  - client-test.TestConnectViaUnixSocket
  - dns_alias-itest.TestBasic

Although there is no support available, a graceful error handling was
recently added as part of [1] commit. Linux kernel versions where
[1] is present, error out with appropriate message and test also
fails expectedly. However, for linux kernel version where [1] is not
present, the tests may pass, but setting of SO_REUSEPORT socket option
may have no affect at all, potentially leading to confusion and undefined
behavior in tests.

The patch does the following to fix this:
1. Error out with appropriate error message if setting socket option
   (i.e. SO_REUSEPORT) on a Unix domain socket.
2. Add a group flag validator to ensure either of two flags is set:
   --rpc_listen_on_unix_domain_socket or --rpc_reuseport.
3. Explicitly initialise --rpc_reuseport flag in tests wherever
   required as per test expectations.

[1] 
https://github.com/torvalds/linux/commit/5b0af621c3f6ef9261cf6067812f2fd9943acb4b

Change-Id: Ice00b1c4fd1df78fa84c3dd2a79c968a4a91cc21
---
M src/kudu/client/client-test.cc
M src/kudu/integration-tests/dns_alias-itest.cc
M src/kudu/master/master-test.cc
M src/kudu/master/mini_master-test.cc
M src/kudu/master/mini_master.cc
M src/kudu/master/sys_catalog-test.cc
M src/kudu/master/ts_state-test.cc
M src/kudu/mini-cluster/mini_cluster.cc
M src/kudu/rpc/messenger.cc
M src/kudu/server/server_base.cc
10 files changed, 65 insertions(+), 7 deletions(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ice00b1c4fd1df78fa84c3dd2a79c968a4a91cc21
Gerrit-Change-Number: 22882
Gerrit-PatchSet: 2
Gerrit-Owner: Ashwani Raina <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Ashwani Raina <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)

Reply via email to