Return-Path: X-Original-To: apmail-accumulo-commits-archive@www.apache.org Delivered-To: apmail-accumulo-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 134A610DB8 for ; Fri, 24 Jan 2014 16:40:09 +0000 (UTC) Received: (qmail 43452 invoked by uid 500); 24 Jan 2014 16:39:10 -0000 Delivered-To: apmail-accumulo-commits-archive@accumulo.apache.org Received: (qmail 43310 invoked by uid 500); 24 Jan 2014 16:39:07 -0000 Mailing-List: contact commits-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@accumulo.apache.org Delivered-To: mailing list commits@accumulo.apache.org Received: (qmail 43082 invoked by uid 99); 24 Jan 2014 16:39:07 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 24 Jan 2014 16:39:07 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 1869B904C94; Fri, 24 Jan 2014 16:39:07 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: elserj@apache.org To: commits@accumulo.apache.org Date: Fri, 24 Jan 2014 16:39:09 -0000 Message-Id: <7b27aa3e891c47f79d779e5a98e573fc@git.apache.org> In-Reply-To: <87a81a11171a47059cb08860756bfad0@git.apache.org> References: <87a81a11171a47059cb08860756bfad0@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [3/6] git commit: ACCUMULO-1921 check for null ACCUMULO-1921 check for null Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/4cac84ec Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/4cac84ec Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/4cac84ec Branch: refs/heads/master Commit: 4cac84ecd70bce51f12791194d1ab721f29b2d57 Parents: da2b79b Author: Eric Newton Authored: Fri Nov 22 16:28:11 2013 -0500 Committer: Josh Elser Committed: Fri Jan 24 11:38:00 2014 -0500 ---------------------------------------------------------------------- .../server/tabletserver/TabletServer.java | 26 +++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/accumulo/blob/4cac84ec/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java ---------------------------------------------------------------------- diff --git a/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java b/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java index c5695bc..8f2bbed 100644 --- a/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java +++ b/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java @@ -2449,20 +2449,22 @@ public class TabletServer extends AbstractMetricsImpl implements org.apache.accu SortedMap tabletsKeyValues = new TreeMap(); try { Pair pair = verifyTabletInformation(extent, TabletServer.this.getTabletSession(), tabletsKeyValues, getClientAddressString(), getLock()); - locationToOpen = pair.getFirst(); - if (pair.getSecond() != null) { - synchronized (openingTablets) { - openingTablets.remove(extent); - openingTablets.notifyAll(); - // it expected that the new extent will overlap the old one... if it does not, it should not be added to unopenedTablets - if (!KeyExtent.findOverlapping(extent, new TreeSet(Arrays.asList(pair.getSecond()))).contains(pair.getSecond())) { - throw new IllegalStateException("Fixed split does not overlap " + extent + " " + pair.getSecond()); + if (pair != null) { + locationToOpen = pair.getFirst(); + if (pair.getSecond() != null) { + synchronized (openingTablets) { + openingTablets.remove(extent); + openingTablets.notifyAll(); + // it expected that the new extent will overlap the old one... if it does not, it should not be added to unopenedTablets + if (!KeyExtent.findOverlapping(extent, new TreeSet(Arrays.asList(pair.getSecond()))).contains(pair.getSecond())) { + throw new IllegalStateException("Fixed split does not overlap " + extent + " " + pair.getSecond()); + } + unopenedTablets.add(pair.getSecond()); } - unopenedTablets.add(pair.getSecond()); + // split was rolled back... try again + new AssignmentHandler(pair.getSecond()).run(); + return; } - // split was rolled back... try again - new AssignmentHandler(pair.getSecond()).run(); - return; } } catch (Exception e) { synchronized (openingTablets) {