Alexey Serbin has posted comments on this change.

Change subject: [rpc] reopen_outbound_connections mode for reactor
......................................................................


Patch Set 3:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/6710/3//COMMIT_MSG
Commit Message:

Line 7: [rpc] reopen_outbound_connections mode for reactor
> There are a couple of issues I have with modes.
Well, most of our tests either have run-time parameters different from what 
they are by default in production, or turn on some non-production modes (e.g. 
fault injection and alike) to exercise some particular code paths for better 
coverage.  And the follow-up tests are not exception.  We could look at this 
new option as the boundary case of the RPC keepalive-related parameters -- in 
the real production, connections are closed after some period of inactivity (65 
seconds by default).

The regular long-lived connection scenarios are not in the scope of coming new 
tests: the authn token is verified only when connection is established, as I 
understand.  Those long-lived scenarios cannot be addressed in the scope of our 
integration tests because they cannot run for too long without being killed by 
the test framework.  If you think it's necessary to address those and 
specifically target some possible issues you know about, let's open a separate 
JIRA item for that.

Yes, combination of different modes might give a huge matrix of different 
behaviors to test and verify.  However, adding a multitude of 
change-of-behavior points in the client code is not any better: it would not be 
like in the production code anyway, and it would change the behavior in many 
places, so variation matrix would be of much greater dimensions.  As I see it, 
if not doing multiple incisions, current client code does not allow to 
implement a clean cut, driven-from-the-test-only scenario which would give good 
coverage for authn token verification paths.  If not touching the production 
code, then it would be necessary to implement a massive mock proxy for the 
client.  The latter wouldn't give any assurance that it would be close to the 
behavior of the real production code.


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I71ada660d8c92de1813a261e221f73017c2c764a
Gerrit-PatchSet: 3
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Alexey Serbin <aser...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com>
Gerrit-Reviewer: Dan Burkert <danburk...@apache.org>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon <t...@apache.org>
Gerrit-HasComments: Yes

Reply via email to