David Ribeiro Alves has uploaded a new change for review. http://gerrit.cloudera.org:8080/3064
Change subject: WIP: Add a generic retriable rpc class ...................................................................... WIP: Add a generic retriable rpc class Getting some mileage. This patch adds a new, generic, class for retriable Rpcs: RetriableRpc. This cass will handle retty logic, such as setting sequence numbers on the rpc header, as well as number of attempts. Children of this class no longer have to deal with logic regarding replica selection, proxy initialization or retrying. They just have to implment: Try() - Actually sends the rpc to a server. AnalyzeResponse() - Buckets the response into a few, common, categories. Finish() - Handle (final) success or failure. This also refactors WriteRpc to use the new class. Change-Id: Iaa58bdc5656a5d4d9172885a67363f74718a0c8e --- A CMakeCache.txt_dc5c3c4a-2596-4a01-9477-46a2ba634740 M src/kudu/client/batcher.cc A src/kudu/rpc/retriable_rpc.h M src/kudu/rpc/rpc.h 4 files changed, 509 insertions(+), 113 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/64/3064/1 -- To view, visit http://gerrit.cloudera.org:8080/3064 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Iaa58bdc5656a5d4d9172885a67363f74718a0c8e Gerrit-PatchSet: 1 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: David Ribeiro Alves <[email protected]>
