HBASE-16149 Log the underlying RPC exception in RpcRetryingCallerImpl
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/f30e9531 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/f30e9531 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/f30e9531 Branch: refs/heads/branch-1.3 Commit: f30e95314447c754ae5bcf8900982021e6125a83 Parents: da8bcab Author: Jerry He <jerry...@apache.org> Authored: Fri Jul 1 14:05:25 2016 -0700 Committer: Jerry He <jerry...@apache.org> Committed: Fri Jul 1 22:59:55 2016 -0700 ---------------------------------------------------------------------- .../apache/hadoop/hbase/client/RpcRetryingCaller.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/f30e9531/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RpcRetryingCaller.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RpcRetryingCaller.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RpcRetryingCaller.java index 76261b2..6f587d1 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RpcRetryingCaller.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RpcRetryingCaller.java @@ -139,16 +139,17 @@ public class RpcRetryingCaller<T> { throw e; } catch (Throwable t) { ExceptionUtil.rethrowIfInterrupt(t); + + // translateException throws exception when should not retry: i.e. when request is bad. + interceptor.handleFailure(context, t); + t = translateException(t); if (tries > startLogErrorsCnt) { LOG.info("Call exception, tries=" + tries + ", retries=" + retries + ", started=" + (EnvironmentEdgeManager.currentTime() - this.globalStartTime) + " ms ago, " + "cancelled=" + cancelled.get() + ", msg=" - + callable.getExceptionMessageAdditionalDetail()); + + t.getMessage() + " " + callable.getExceptionMessageAdditionalDetail()); } - // translateException throws exception when should not retry: i.e. when request is bad. - interceptor.handleFailure(context, t); - t = translateException(t); callable.throwable(t, retries != 1); RetriesExhaustedException.ThrowableWithExtraContext qt = new RetriesExhaustedException.ThrowableWithExtraContext(t, @@ -166,7 +167,7 @@ public class RpcRetryingCaller<T> { long duration = singleCallDuration(expectedSleep); if (duration > callTimeout) { String msg = "callTimeout=" + callTimeout + ", callDuration=" + duration + - ": " + callable.getExceptionMessageAdditionalDetail(); + ": " + t.getMessage() + " " + callable.getExceptionMessageAdditionalDetail(); throw (SocketTimeoutException)(new SocketTimeoutException(msg).initCause(t)); } } finally {