HBASE-17572 HMaster: Caught throwable while processing event C_M_MERGE_REGION (UndeclaredThrowableException)
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/fb123976 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/fb123976 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/fb123976 Branch: refs/heads/branch-1 Commit: fb1239766d08ef7b888261d25ecfd42e95566081 Parents: cd847e5 Author: Andrew Purtell <apurt...@apache.org> Authored: Thu Feb 2 14:49:56 2017 -0800 Committer: Andrew Purtell <apurt...@apache.org> Committed: Fri Feb 3 14:15:56 2017 -0800 ---------------------------------------------------------------------- .../hadoop/hbase/protobuf/ProtobufUtil.java | 36 ++++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/fb123976/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java ---------------------------------------------------------------------- diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java index ca2dd04..715d106 100644 --- a/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java +++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java @@ -1993,26 +1993,26 @@ public final class ProtobufUtil { final boolean forcible, final User user) throws IOException { final MergeRegionsRequest request = RequestConverter.buildMergeRegionsRequest( region_a.getRegionName(), region_b.getRegionName(),forcible); - if (user != null) { - try { - user.getUGI().doAs(new PrivilegedExceptionAction<Void>() { - @Override - public Void run() throws Exception { - admin.mergeRegions(controller, request); - return null; - } - }); - } catch (InterruptedException ie) { - InterruptedIOException iioe = new InterruptedIOException(); - iioe.initCause(ie); - throw iioe; - } - } else { - try { + try { + if (user != null) { + try { + user.getUGI().doAs(new PrivilegedExceptionAction<Void>() { + @Override + public Void run() throws Exception { + admin.mergeRegions(controller, request); + return null; + } + }); + } catch (InterruptedException ie) { + InterruptedIOException iioe = new InterruptedIOException(); + iioe.initCause(ie); + throw iioe; + } + } else { admin.mergeRegions(controller, request); - } catch (ServiceException se) { - throw ProtobufUtil.getRemoteException(se); } + } catch (ServiceException se) { + throw ProtobufUtil.getRemoteException(se); } }