David Ribeiro Alves has submitted this change and it was merged. Change subject: Refactor retry handling logic for writes ......................................................................
Refactor retry handling logic for writes This consolidates the retry handling logic for the WriteRpc by adding two new methods: WriteRpc::AnalyzeResponse() and WriteRpc::RetryIfNeeded(). These are analogous to a recent refactor of the scan code and the first one analyzes the response splitting it into retryable/non-retryable categories, whereas the second one actually takes action if the category is retryable. This is a precursor to other changes that will pull this logic out of WriteRpc and into somewhere we can use for other rpcs that have the same behavior (replicated/retryable ones). This introduces no tests as there is no new functionality, just a refactoring of the code. Change-Id: I0e0d491f902191c88c58e3d627106cc1be1bb3cc Reviewed-on: http://gerrit.cloudera.org:8080/2970 Reviewed-by: Adar Dembo <[email protected]> Tested-by: David Ribeiro Alves <[email protected]> --- M src/kudu/client/batcher.cc M src/kudu/rpc/rpc.h 2 files changed, 138 insertions(+), 53 deletions(-) Approvals: David Ribeiro Alves: Verified Adar Dembo: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/2970 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: I0e0d491f902191c88c58e3d627106cc1be1bb3cc Gerrit-PatchSet: 15 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: David Ribeiro Alves <[email protected]> Gerrit-Reviewer: Adar Dembo <[email protected]> Gerrit-Reviewer: David Ribeiro Alves <[email protected]> Gerrit-Reviewer: Todd Lipcon <[email protected]>
