Adar Dembo has submitted this change and it was merged. Change subject: KUDU-1272: better error messages when client deadlines expire ......................................................................
KUDU-1272: better error messages when client deadlines expire There are two problems here: 1. When an RpcController is configured with a deadline in the past, the subsequent RPC status message will include a negative timeout. 2. If a deadline expires during an RPC, we don't do a great job of inserting the operation name into the RPC status message. To address #1, we need to stop using deadlines from the past as short circuits to instantly time out operations. Barring the removal of the deadline from RpcController's generated status message, we must explicitly check for timeouts before sending RPCs. For #2, I sprinkled some CloneAndAppend calls here and there to improve status messages. It's pretty hard to reason about the scanner CanBeRetried() method, so I left it alone. Spaghetti code abounds. Change-Id: Iee294fd5d348fee37324d1bbc4119c20fc0299c2 Reviewed-on: http://gerrit.cloudera.org:8080/1986 Tested-by: Adar Dembo <[email protected]> Reviewed-by: Jean-Daniel Cryans --- M src/kudu/client/client-internal.cc M src/kudu/client/client-internal.h M src/kudu/client/client-test.cc M src/kudu/client/client.cc M src/kudu/client/meta_cache.cc M src/kudu/client/scanner-internal.cc M src/kudu/client/table-internal.cc 7 files changed, 80 insertions(+), 34 deletions(-) Approvals: Jean-Daniel Cryans: Looks good to me, approved Adar Dembo: Verified -- To view, visit http://gerrit.cloudera.org:8080/1986 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: Iee294fd5d348fee37324d1bbc4119c20fc0299c2 Gerrit-PatchSet: 3 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Adar Dembo <[email protected]> Gerrit-Reviewer: Adar Dembo <[email protected]> Gerrit-Reviewer: Jean-Daniel Cryans Gerrit-Reviewer: Todd Lipcon <[email protected]>
