Alexey Serbin has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/17356 )
Change subject: KUDU-2612: propagate commit timestamp (Java client) ...................................................................... KUDU-2612: propagate commit timestamp (Java client) With this patch, the commit timestamp for a non-empty multi-row transaction is propagated to a Kudu Java client upon calling either KuduTransaction.isCommitComplete() or KuduTransaction.commit(true). The former propagates the timestamp for the case of committing a transaction asynchronously, the latter works for the synchronous case. Updating the last observed timestamp with the commit timestamp is necessary to achieve consistency in the READ_YOUR_WRITES mode when reading the data of a transaction which has just been committed. The commit phase might take some time and may even be retried in some cases, so even if the client observed timestamps for all the write operations it sent in the context this transaction, the maximum timestamp collected among the involved transaction participants might be far ahead of the last timestamp observed by the client so far. In addition, this patch addresses the most prominent cause of flakiness in the recently introduced scenario TestKuduTransaction.testTxnKeepaliveRollingSwitchToOtherTxnManager. This patch is a follow-up to e495d6bb759fdae7cd001d86df3bae5c4f5f2b36. Change-Id: I4177fe0d137b70bd18dd6c87eb42e8aaf03a00b3 Reviewed-on: http://gerrit.cloudera.org:8080/17356 Reviewed-by: Andrew Wong <[email protected]> Tested-by: Kudu Jenkins --- M java/kudu-client/src/main/java/org/apache/kudu/client/GetTransactionStateRequest.java M java/kudu-client/src/main/java/org/apache/kudu/client/GetTransactionStateResponse.java M java/kudu-client/src/main/java/org/apache/kudu/client/KuduTransaction.java M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduTransaction.java 4 files changed, 138 insertions(+), 3 deletions(-) Approvals: Andrew Wong: Looks good to me, approved Kudu Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/17356 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I4177fe0d137b70bd18dd6c87eb42e8aaf03a00b3 Gerrit-Change-Number: 17356 Gerrit-PatchSet: 3 Gerrit-Owner: Alexey Serbin <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: Andrew Wong <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120)
