Alexey Serbin has submitted this change and it was merged. Change subject: [java] KUDU-2013 re-acquire authn token if expired ......................................................................
[java] KUDU-2013 re-acquire authn token if expired This patch introduces automatic authn token re-acquisition when the current authn token expires. The client automatically retries the RPC that hits the token expiration error (the error to re-try is seen as FATAL_INVALID_AUTHENTICATION_TOKEN sent by the server during connection negotiation). Added a few of tests to exercise the new retry logic for automatic token re-acquisition in case of master-only operations, a bare minimum workload scenario, and one special case of a connection to the master opened with secondary credentials. Change-Id: I0be620629c9a8345ecd5e5679c80ee76ca4eaa57 Reviewed-on: http://gerrit.cloudera.org:8080/7250 Tested-by: Kudu Jenkins Reviewed-by: Dan Burkert <danburk...@apache.org> --- M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java A java/kudu-client/src/main/java/org/apache/kudu/client/AuthnTokenReacquirer.java M java/kudu-client/src/main/java/org/apache/kudu/client/ConnectToCluster.java M java/kudu-client/src/main/java/org/apache/kudu/client/Connection.java M java/kudu-client/src/main/java/org/apache/kudu/client/ConnectionCache.java A java/kudu-client/src/main/java/org/apache/kudu/client/InvalidAuthnTokenException.java M java/kudu-client/src/main/java/org/apache/kudu/client/Negotiator.java M java/kudu-client/src/main/java/org/apache/kudu/client/RpcProxy.java M java/kudu-client/src/main/java/org/apache/kudu/client/RpcTraceFrame.java M java/kudu-client/src/main/java/org/apache/kudu/client/SecurityContext.java M java/kudu-client/src/test/java/org/apache/kudu/client/TestAsyncKuduClient.java A java/kudu-client/src/test/java/org/apache/kudu/client/TestAuthnTokenReacquire.java A java/kudu-client/src/test/java/org/apache/kudu/client/TestAuthnTokenReacquireOpen.java M java/kudu-client/src/test/java/org/apache/kudu/client/TestConnectionCache.java M java/kudu-client/src/test/java/org/apache/kudu/client/TestNegotiator.java 15 files changed, 872 insertions(+), 152 deletions(-) Approvals: Dan Burkert: Looks good to me, approved Kudu Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/7250 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: I0be620629c9a8345ecd5e5679c80ee76ca4eaa57 Gerrit-PatchSet: 17 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: Jean-Daniel Cryans <jdcry...@apache.org> Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Todd Lipcon <t...@apache.org> Gerrit-Reviewer: Will Berkeley <wdberke...@gmail.com>