Andrew Wong has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/12279 )
Change subject: KUDU-2543 pt 3 java: pass around authz tokens ...................................................................... KUDU-2543 pt 3 java: pass around authz tokens Adds handling of authz tokens to the Java client. The Java client will now cache tokens upon opening a table, and use them for RPCs that need them (e.g. Writes and Scans), reacquiring them when receiving word that they are expired. This is tested as follows: - TestAuthnTokenReacquire's test for scans and writes is repurposed to also test for reacquisition of authz tokens when they expire - basic tests are added to test the token cache - a test is added to test authz reacquisition in the case that a multi-master deployment undergoes a leadership change - a test is added to test authz reacquisition upon invalid or expired tokens during prolonged workloads against a multi-master deployment Change-Id: Iadd5f7709b45628d7ddd9e2b100d0dfaabbf15af Reviewed-on: http://gerrit.cloudera.org:8080/12279 Tested-by: Kudu Jenkins Reviewed-by: Adar Dembo <[email protected]> Reviewed-by: Alexey Serbin <[email protected]> Reviewed-by: Hao Hao <[email protected]> --- M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java A java/kudu-client/src/main/java/org/apache/kudu/client/AuthzTokenCache.java M java/kudu-client/src/main/java/org/apache/kudu/client/Batch.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/GetTableSchemaRequest.java M java/kudu-client/src/main/java/org/apache/kudu/client/GetTableSchemaResponse.java A java/kudu-client/src/main/java/org/apache/kudu/client/InvalidAuthzTokenException.java M java/kudu-client/src/main/java/org/apache/kudu/client/KuduRpc.java M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java M java/kudu-client/src/main/java/org/apache/kudu/client/RpcProxy.java R java/kudu-client/src/test/java/org/apache/kudu/client/TestAuthTokenReacquire.java A java/kudu-client/src/test/java/org/apache/kudu/client/TestAuthzTokenCache.java A java/kudu-client/src/test/java/org/apache/kudu/client/TestMultiMasterAuthzTokens.java M java/kudu-test-utils/src/main/java/org/apache/kudu/test/ClientTestUtil.java 15 files changed, 873 insertions(+), 44 deletions(-) Approvals: Kudu Jenkins: Verified Adar Dembo: Looks good to me, but someone else must approve Alexey Serbin: Looks good to me, approved Hao Hao: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/12279 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Iadd5f7709b45628d7ddd9e2b100d0dfaabbf15af Gerrit-Change-Number: 12279 Gerrit-PatchSet: 6 Gerrit-Owner: Andrew Wong <[email protected]> Gerrit-Reviewer: Adar Dembo <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: Andrew Wong <[email protected]> Gerrit-Reviewer: Hao Hao <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120)
