[kudu-CR] [tls socket-test] fix test to pass on Ubuntu 16.04
Todd Lipcon has posted comments on this change. ( http://gerrit.cloudera.org:8080/8996 ) Change subject: [tls_socket-test] fix test to pass on Ubuntu 16.04 .. Patch Set 4: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/8996 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I94170d5bdbe17a5952a82faf74d8b868b42460aa Gerrit-Change-Number: 8996 Gerrit-PatchSet: 4 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Todd Lipcon Gerrit-Comment-Date: Fri, 12 Jan 2018 05:28:45 + Gerrit-HasComments: No
[kudu-CR] [tls socket-test] fix test to pass on Ubuntu 16.04
Todd Lipcon has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/8996 ) Change subject: [tls_socket-test] fix test to pass on Ubuntu 16.04 .. [tls_socket-test] fix test to pass on Ubuntu 16.04 Prior to this fix, the TlsSocketTest.TestNonBlockingWritev test failed on Ubuntu 16.04 (kernel 4.4.0). After some investigation, it turned out that setting socket send buffer size for something lower than the MTU size (which is 64kB for localhost) triggered the delayed acknowledgement logic. Since the test passes big chunks of data (32MB on every iteration), with 40ms delay for almost every 16KB sent, the test eventually timed out. I verified that disabling the delayed TCP ack for TLS sockets fixed the issue. I think that the proper fix is to remove the custom setting for the socket send buffer: a 32MB chunk of data is big enough to not fit into the socket buffer of the default size. Also, it seems this issue is not going to bite us in real life since we don't set the size of the socket send buffer anywhere. NOTE: however, some mystery is left since the failing test would pass if running under strace. Change-Id: I94170d5bdbe17a5952a82faf74d8b868b42460aa Reviewed-on: http://gerrit.cloudera.org:8080/8996 Tested-by: Kudu Jenkins Reviewed-by: Todd Lipcon --- M src/kudu/security/tls_socket-test.cc 1 file changed, 0 insertions(+), 4 deletions(-) Approvals: Kudu Jenkins: Verified Todd Lipcon: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/8996 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I94170d5bdbe17a5952a82faf74d8b868b42460aa Gerrit-Change-Number: 8996 Gerrit-PatchSet: 5 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Todd Lipcon
[kudu-CR] [tls socket-test] fix test to pass on Ubuntu 16.04
Hello Kudu Jenkins, Adar Dembo, Todd Lipcon, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/8996 to look at the new patch set (#4). Change subject: [tls_socket-test] fix test to pass on Ubuntu 16.04 .. [tls_socket-test] fix test to pass on Ubuntu 16.04 Prior to this fix, the TlsSocketTest.TestNonBlockingWritev test failed on Ubuntu 16.04 (kernel 4.4.0). After some investigation, it turned out that setting socket send buffer size for something lower than the MTU size (which is 64kB for localhost) triggered the delayed acknowledgement logic. Since the test passes big chunks of data (32MB on every iteration), with 40ms delay for almost every 16KB sent, the test eventually timed out. I verified that disabling the delayed TCP ack for TLS sockets fixed the issue. I think that the proper fix is to remove the custom setting for the socket send buffer: a 32MB chunk of data is big enough to not fit into the socket buffer of the default size. Also, it seems this issue is not going to bite us in real life since we don't set the size of the socket send buffer anywhere. NOTE: however, some mystery is left since the failing test would pass if running under strace. Change-Id: I94170d5bdbe17a5952a82faf74d8b868b42460aa --- M src/kudu/security/tls_socket-test.cc 1 file changed, 0 insertions(+), 4 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/96/8996/4 -- To view, visit http://gerrit.cloudera.org:8080/8996 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I94170d5bdbe17a5952a82faf74d8b868b42460aa Gerrit-Change-Number: 8996 Gerrit-PatchSet: 4 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Adar Dembo Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Todd Lipcon