Adar Dembo has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/10435 )

Change subject: KUDU-2427: retry more system calls on EINTR
......................................................................


Patch Set 4:

(3 comments)

http://gerrit.cloudera.org:8080/#/c/10435/4/src/kudu/security/tls_socket.cc
File src/kudu/security/tls_socket.cc:

http://gerrit.cloudera.org:8080/#/c/10435/4/src/kudu/security/tls_socket.cc@63
PS4, Line 63:   RETRY_ON_EINTR(bytes_written, SSL_write(ssl_.get(), buf, amt));
This (and the equivalent change to SSL_read) are a little funky; is it safe to 
expect errno to be the primary vehicle for delivering error information from 
OpenSSL? Normally errno is only used after libc calls.


http://gerrit.cloudera.org:8080/#/c/10435/4/src/kudu/util/net/socket.cc
File src/kudu/util/net/socket.cc:

http://gerrit.cloudera.org:8080/#/c/10435/4/src/kudu/util/net/socket.cc@a465
PS4, Line 465:
             :
             :
             :
The changes in tls_socket.cc allow this (and the equivalent in BlockingRecv) to 
be removed.


http://gerrit.cloudera.org:8080/#/c/10435/4/src/kudu/util/net/socket.cc@128
PS4, Line 128:   return (err == EAGAIN) || (err == EWOULDBLOCK);
I'm not as confident about this change. I made it because I think EINTR should 
be handled at the "ends" and thus it shouldn't show up at higher levels of the 
stack.



--
To view, visit http://gerrit.cloudera.org:8080/10435
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I6cce03c4e1b2be32c1910382737526082fc99966
Gerrit-Change-Number: 10435
Gerrit-PatchSet: 4
Gerrit-Owner: Adar Dembo <a...@cloudera.com>
Gerrit-Reviewer: Adar Dembo <a...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon <t...@apache.org>
Gerrit-Comment-Date: Thu, 17 May 2018 22:07:09 +0000
Gerrit-HasComments: Yes

Reply via email to