You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by el...@apache.org on 2013/12/27 03:44:23 UTC
[1/2] git commit: ACCUMULO-2091 Catch AccumuloException in RW
RenameTable.
Updated Branches:
refs/heads/master 8553b4678 -> 554231e03
ACCUMULO-2091 Catch AccumuloException in RW RenameTable.
When we rename a table, we might attempt to rename it to a different namespace. This should cause an error, so check for
this.
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/ccb6093b
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/ccb6093b
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/ccb6093b
Branch: refs/heads/master
Commit: ccb6093bbc33bb5ec8155aca7a594c5c58719ca4
Parents: 9f59c00
Author: Josh Elser <el...@apache.org>
Authored: Thu Dec 26 21:33:28 2013 -0500
Committer: Josh Elser <el...@apache.org>
Committed: Thu Dec 26 21:36:05 2013 -0500
----------------------------------------------------------------------
.../test/randomwalk/concurrent/RenameTable.java | 23 ++++++++++++++++++++
.../test/randomwalk/concurrent/Setup.java | 2 ++
2 files changed, 25 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/ccb6093b/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/RenameTable.java
----------------------------------------------------------------------
diff --git a/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/RenameTable.java b/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/RenameTable.java
index 0e0b406..6c7516e 100644
--- a/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/RenameTable.java
+++ b/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/RenameTable.java
@@ -20,6 +20,7 @@ import java.util.List;
import java.util.Properties;
import java.util.Random;
+import org.apache.accumulo.core.client.AccumuloException;
import org.apache.accumulo.core.client.Connector;
import org.apache.accumulo.core.client.TableExistsException;
import org.apache.accumulo.core.client.TableNotFoundException;
@@ -40,6 +41,18 @@ public class RenameTable extends Test {
String srcTableName = tableNames.get(rand.nextInt(tableNames.size()));
String newTableName = tableNames.get(rand.nextInt(tableNames.size()));
+ String srcNamespace = "", newNamespace = "";
+
+ int index = srcTableName.indexOf('.');
+ if (-1 != index) {
+ srcNamespace = srcTableName.substring(0, index);
+ }
+
+ index = newTableName.indexOf('.');
+ if (-1 != index) {
+ newNamespace = newTableName.substring(0, index);
+ }
+
try {
conn.tableOperations().rename(srcTableName, newTableName);
log.debug("Renamed table " + srcTableName + " " + newTableName);
@@ -49,6 +62,16 @@ public class RenameTable extends Test {
log.debug("Rename " + srcTableName + " failed, doesnt exist");
} catch (IllegalArgumentException e) {
log.debug("Rename: " + e.toString());
+ } catch (AccumuloException e) {
+ // Catch the expected failure when we try to rename a table into a new namespace
+ if (!srcNamespace.equals(newNamespace)) {
+ return;
+ }
+ log.debug("Rename " + srcTableName + " failed.", e);
+ }
+
+ if (!srcNamespace.equals(newNamespace)) {
+ log.error("RenameTable operation should have failed when renaming across namespaces.");
}
}
}
http://git-wip-us.apache.org/repos/asf/accumulo/blob/ccb6093b/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/Setup.java
----------------------------------------------------------------------
diff --git a/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/Setup.java b/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/Setup.java
index edab2b5..cb481f8 100644
--- a/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/Setup.java
+++ b/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/Setup.java
@@ -42,11 +42,13 @@ public class Setup extends Test {
namespaces.add(String.format("nspc_%03d", i));
}
+ // Make tables in the default namespace
double tableCeil = Math.ceil(numTables / (numNamespaces + 1));
for (int i = 0; i < tableCeil; i++) {
tables.add(String.format("ctt_%03d", i));
}
+ // Make tables in each namespace
double tableFloor = Math.floor(numTables / (numNamespaces + 1));
for (String n : namespaces) {
for (int i = 0; i < tableFloor; i++) {
[2/2] git commit: Merge branch '1.6.0-SNAPSHOT'
Posted by el...@apache.org.
Merge branch '1.6.0-SNAPSHOT'
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/554231e0
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/554231e0
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/554231e0
Branch: refs/heads/master
Commit: 554231e031402b60ae9541899ca1de19fc54e863
Parents: 8553b46 ccb6093
Author: Josh Elser <el...@apache.org>
Authored: Thu Dec 26 21:44:10 2013 -0500
Committer: Josh Elser <el...@apache.org>
Committed: Thu Dec 26 21:44:10 2013 -0500
----------------------------------------------------------------------
.../test/randomwalk/concurrent/RenameTable.java | 23 ++++++++++++++++++++
.../test/randomwalk/concurrent/Setup.java | 2 ++
2 files changed, 25 insertions(+)
----------------------------------------------------------------------