accumulo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From e..@apache.org
Subject git commit: ACCUMULO-2393 handle table deletion race condition
Date Mon, 24 Feb 2014 17:19:57 GMT
Repository: accumulo
Updated Branches:
  refs/heads/1.6.0-SNAPSHOT ec3a16042 -> 812df5898


ACCUMULO-2393 handle table deletion race condition


Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/812df589
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/812df589
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/812df589

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 812df5898989774e171e39f3c1e5b94f84cff82c
Parents: ec3a160
Author: Eric Newton <eric.newton@gmail.com>
Authored: Mon Feb 24 12:19:56 2014 -0500
Committer: Eric Newton <eric.newton@gmail.com>
Committed: Mon Feb 24 12:19:56 2014 -0500

----------------------------------------------------------------------
 .../main/java/org/apache/accumulo/tserver/TabletServer.java  | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/accumulo/blob/812df589/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
----------------------------------------------------------------------
diff --git a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
index 080cc20..ac4962e 100644
--- a/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
+++ b/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
@@ -2087,7 +2087,13 @@ public class TabletServer extends AbstractMetricsImpl implements org.apache.accu
         ThriftSecurityException {
 
       String tableId = new String(ByteBufferUtil.toBytes(tkeyExtent.table));
-      String namespaceId = Tables.getNamespaceId(instance, tableId);
+      String namespaceId;
+      try {
+        namespaceId = Tables.getNamespaceId(instance, tableId);
+      } catch (IllegalArgumentException ex) {
+        // table does not exist, try to educate the client
+        throw new NotServingTabletException(tkeyExtent);
+      }
       
       if (!security.canSplitTablet(credentials, tableId, namespaceId))
         throw new ThriftSecurityException(credentials.getPrincipal(), SecurityErrorCode.PERMISSION_DENIED);


Mime
View raw message