[20/20] git commit: ACCUMULO-2061 A few more minor fixes from reviewboard.

2014-03-20 Thread elserj
ACCUMULO-2061 A few more minor fixes from reviewboard.

Fixed a PrintInfo comment. Expand the VolumeImpl.isValidPath javadoc
and implementation to be more encompassing. Suppress warnings in VolumeIT.
Remove implementation of isValidPath from NonConfiguredVolume as it
could be misleading.


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

Branch: refs/heads/ACCUMULO-2061
Commit: 8b8d565b79a83ad6789356a18027cc2c0417b7f0
Parents: 45aec91
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 11:22:38 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 11:22:38 2014 -0400

--
 .../accumulo/core/file/rfile/PrintInfo.java |  7 +++--
 .../core/volume/NonConfiguredVolume.java| 30 ++--
 .../org/apache/accumulo/core/volume/Volume.java |  4 +--
 .../apache/accumulo/core/volume/VolumeImpl.java | 16 ++-
 .../accumulo/server/fs/VolumeManagerImpl.java   |  8 +++---
 .../java/org/apache/accumulo/test/VolumeIT.java |  1 +
 6 files changed, 36 insertions(+), 30 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/8b8d565b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java 
b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
index 7ed8f34..dc54b49 100644
--- a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
+++ b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
@@ -52,8 +52,11 @@ public class PrintInfo {
 
 @SuppressWarnings(deprecation)
 AccumuloConfiguration aconf = AccumuloConfiguration.getSiteConfiguration();
-// TODO ACCUMULO-2462 This will only work for RFiles in HDFS when the 
filesystem is defined in the core-site.xml
-// on the classpath if a path, and not a URI, is given
+// TODO ACCUMULO-2462 This will only work for RFiles (path only, not URI) 
in HDFS when the correct filesystem for the given file
+// is on Property.INSTANCE_DFS_DIR or, when INSTANCE_DFS_DIR is not 
defined, is on the default filesystem 
+// defined in the Hadoop's core-site.xml
+//
+// A workaround is to always provide a URI to this class
 FileSystem hadoopFs = VolumeConfiguration.getDefaultVolume(conf, 
aconf).getFileSystem();
 FileSystem localFs  = FileSystem.getLocal(conf);
 Opts opts = new Opts();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/8b8d565b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
index 7dcbd88..3cfd1c2 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
@@ -16,25 +16,18 @@
  */
 package org.apache.accumulo.core.volume;
 
-import java.io.IOException;
-
 import org.apache.accumulo.core.conf.Property;
-import org.apache.accumulo.core.util.CachedConfiguration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
-import org.apache.log4j.Logger;
 
 /**
- * Volume implementation which represents a Volume for which we have a 
FileSystem
- * but no base path because it is not configured via {@link 
Property#INSTANCE_VOLUMES}
+ * Volume implementation which represents a Volume for which we have a 
FileSystem but no base path because it is not configured via
+ * {@link Property#INSTANCE_VOLUMES}
  * 
- * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references
- * to these volumes have not been updated. This Volume should never be used to 
create new files,
- * only to read existing files.
+ * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references to these volumes have not been updated. This 
Volume should
+ * never be used to create new files, only to read existing files.
  */
 public class NonConfiguredVolume implements Volume {
-  private static final Logger log = 
Logger.getLogger(NonConfiguredVolume.class);
-
   private FileSystem fs;
 
   public NonConfiguredVolume(FileSystem fs) {
@@ -48,27 +41,22 @@ public class NonConfiguredVolume implements Volume {
 
   @Override
   public String getBasePath() {
-throw new UnsupportedOperationException(No base path known because this 
volume isn't configured in accumulo-site.xml);
+

[19/20] git commit: Merge branch '1.6.0-SNAPSHOT' into ACCUMULO-2061

2014-03-20 Thread elserj
Merge branch '1.6.0-SNAPSHOT' into ACCUMULO-2061


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

Branch: refs/heads/ACCUMULO-2061
Commit: 45aec91e12744adf0299aee902184a562f111b5b
Parents: 2c1af65 84cc955
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 11:02:46 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 11:02:46 2014 -0400

--
 .../core/client/admin/TableOperations.java  |  17 +
 .../core/util/shell/commands/ConfigCommand.java |   2 +-
 .../core/data/ArrayByteSequenceTest.java|   1 -
 .../accumulo/core/data/KeyExtentTest.java   |   2 +
 .../randomwalk/concurrent/CheckBalance.java |  18 +-
 .../org/apache/accumulo/test/NamespacesIT.java  |   2 +
 .../org/apache/accumulo/test/ShellConfigIT.java |  49 +
 .../org/apache/accumulo/test/ShellServerIT.java | 943 ++-
 8 files changed, 562 insertions(+), 472 deletions(-)
--




[14/20] git commit: Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT


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

Branch: refs/heads/ACCUMULO-2061
Commit: 1f4cb4d5bb9b8dc19df0cd1a6b6a95a44a9abeea
Parents: 205f0dc a417424
Author: Bill Havanki bhava...@cloudera.com
Authored: Tue Mar 18 16:23:18 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Tue Mar 18 16:23:18 2014 -0400

--
 .../test/randomwalk/concurrent/CheckBalance.java  | 18 +++---
 1 file changed, 15 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/1f4cb4d5/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/CheckBalance.java
--
diff --cc 
test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/CheckBalance.java
index 698b0c0,000..a0dd37c
mode 100644,00..100644
--- 
a/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/CheckBalance.java
+++ 
b/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/CheckBalance.java
@@@ -1,98 -1,0 +1,110 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.test.randomwalk.concurrent;
 +
++import java.util.Collection;
 +import java.util.HashMap;
 +import java.util.Map;
 +import java.util.Map.Entry;
 +import java.util.Properties;
 +
 +import org.apache.accumulo.core.Constants;
 +import org.apache.accumulo.core.client.Scanner;
 +import org.apache.accumulo.core.data.Key;
 +import org.apache.accumulo.core.data.Value;
 +import org.apache.accumulo.test.randomwalk.State;
 +import org.apache.accumulo.test.randomwalk.Test;
 +
 +/**
 + * 
 + */
 +public class CheckBalance extends Test {
 +  
 +  static final String LAST_UNBALANCED_TIME = lastUnbalancedTime;
 +  static final String UNBALANCED_COUNT = unbalancedCount;
 +
 +  /* (non-Javadoc)
 +   * @see 
org.apache.accumulo.test.randomwalk.Node#visit(org.apache.accumulo.test.randomwalk.State,
 java.util.Properties)
 +   */
 +  @Override
 +  public void visit(State state, Properties props) throws Exception {
 +log.debug(checking balance);
 +MapString,Long counts = new HashMapString,Long();
 +Scanner scanner = 
state.getConnector().createScanner(Constants.METADATA_TABLE_NAME, 
Constants.NO_AUTHS);
 +
scanner.fetchColumnFamily(Constants.METADATA_CURRENT_LOCATION_COLUMN_FAMILY);
 +for (EntryKey,Value entry : scanner) {
 +  String location = entry.getKey().getColumnQualifier().toString();
 +  Long count = counts.get(location);
 +  if (count == null)
 +count = Long.valueOf(0);
 +  counts.put(location, count + 1);
 +}
 +double total = 0.;
 +for (Long count : counts.values()) {
 +  total += count.longValue();
 +}
 +final double average = total / counts.size();
- 
- // Check for even # of tablets on each node
- double maxDifference = Math.max(1, average / 5);
++final double sd = stddev(counts.values(), average);
++log.debug(average  + average + , standard deviation  + sd);
++
++// Check for balanced # of tablets on each node
++double maxDifference = 2.0 * sd;
 +String unbalancedLocation = null;
 +long lastCount = 0L;
 +boolean balanced = true;
 +for (EntryString,Long entry : counts.entrySet()) {
 +  long thisCount = entry.getValue().longValue();
 +  if (Math.abs(thisCount - average)  maxDifference) {
 +balanced = false;
 +log.debug(unbalanced:  + entry.getKey() +  has  + 
entry.getValue() +  tablets and the average is  + average);
 +unbalancedLocation = entry.getKey();
 +lastCount = thisCount;
 +  }
 +}
 +
 +// It is expected that the number of tablets will be uneven for short
 +// periods of time. Don't complain unless we've seen it only unbalanced
 +// over a 15 minute period and it's been 

[04/20] git commit: Merge remote-tracking branch 'origin/1.6.0-SNAPSHOT' into ACCUMULO-2061

2014-03-20 Thread elserj
Merge remote-tracking branch 'origin/1.6.0-SNAPSHOT' into ACCUMULO-2061


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

Branch: refs/heads/ACCUMULO-2061
Commit: 6414ff1dc46b951f4ba130e05435be6c6c5d0c8a
Parents: de5c29b 8f98331
Author: Josh Elser els...@apache.org
Authored: Sat Mar 15 21:55:42 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Sat Mar 15 21:55:42 2014 -0400

--

--




[03/20] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

Conflicts:
proxy/src/test/java/org/apache/accumulo/proxy/SimpleProxyIT.java


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

Branch: refs/heads/ACCUMULO-2061
Commit: 8f98331c5ea3e3a3c0068b03bfdd37fb08dc4631
Parents: 7c2a552 082adbf
Author: Eric Newton eric.new...@gmail.com
Authored: Fri Mar 14 14:18:56 2014 -0400
Committer: Eric Newton eric.new...@gmail.com
Committed: Fri Mar 14 14:18:56 2014 -0400

--

--




[10/20] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.5.2-SNAPSHOT' into 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/4d873512
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/4d873512
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/4d873512

Branch: refs/heads/ACCUMULO-2061
Commit: 4d873512633be0313ab54cc06364937a00946d73
Parents: 7d32c52 205f0dc
Author: Sean Busbey bus...@cloudera.com
Authored: Tue Mar 18 12:45:08 2014 -0500
Committer: Sean Busbey bus...@cloudera.com
Committed: Tue Mar 18 12:45:08 2014 -0500

--
 .../core/client/admin/TableOperations.java | 17 +
 1 file changed, 17 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/4d873512/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
--
diff --cc 
core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
index 689c04c,2521c96..6166673
--- 
a/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
@@@ -132,9 -132,26 +132,26 @@@ public interface TableOperations 
 * @throws AccumuloSecurityException
 * @since 1.5.0
 */
 -  public void exportTable(String tableName, String exportDir) throws 
TableNotFoundException, AccumuloException, AccumuloSecurityException;
 +  void exportTable(String tableName, String exportDir) throws 
TableNotFoundException, AccumuloException, AccumuloSecurityException;
  
/**
+* Ensures that tablets are split along a set of keys.
+* p
+* Note that while the documentation for Text specifies that its bytestream 
should be UTF-8, the encoding is not enforced by operations that work with byte 
arrays.
+* p
+* For example, you can create 256 evenly-sliced splits via the following 
code sample even though the given byte sequences are not valid UTF-8.
+* pre
+* {@code
+*  TableOperations tableOps = connector.tableOperations();
+*  TreeSetText splits = new TreeSetText();
+*  for (int i = 0; i  256; i++) {
+*byte[] bytes = { (byte) i };
+*splits.add(new Text(bytes));
+*  }
+*  tableOps.addSplits(TABLE_NAME, splits);
+* }
+* /pre
+*
 * @param tableName
 *  the name of the table
 * @param partitionKeys



[15/20] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.5.2-SNAPSHOT' into 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/99b6e252
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/99b6e252
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/99b6e252

Branch: refs/heads/ACCUMULO-2061
Commit: 99b6e252d4b68179927ae101f95ab1d72bbb6fe1
Parents: 70d4726 1f4cb4d
Author: Bill Havanki bhava...@cloudera.com
Authored: Tue Mar 18 16:23:54 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Tue Mar 18 16:23:54 2014 -0400

--
 .../test/randomwalk/concurrent/CheckBalance.java  | 18 +++---
 1 file changed, 15 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/99b6e252/test/src/main/java/org/apache/accumulo/test/randomwalk/concurrent/CheckBalance.java
--



[07/20] git commit: ACCUMULO-2468 Remove recently introduced warnings

2014-03-20 Thread elserj
ACCUMULO-2468 Remove recently introduced warnings


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

Branch: refs/heads/ACCUMULO-2061
Commit: c3837f424c1fd011ba0cdf8dfd0162a1ad283121
Parents: 34c8b7a
Author: Christopher Tubbs ctubb...@apache.org
Authored: Tue Mar 18 00:34:52 2014 -0400
Committer: Christopher Tubbs ctubb...@apache.org
Committed: Tue Mar 18 00:34:52 2014 -0400

--
 .../java/org/apache/accumulo/core/data/ArrayByteSequenceTest.java  | 1 -
 .../src/test/java/org/apache/accumulo/core/data/KeyExtentTest.java | 2 ++
 2 files changed, 2 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/c3837f42/core/src/test/java/org/apache/accumulo/core/data/ArrayByteSequenceTest.java
--
diff --git 
a/core/src/test/java/org/apache/accumulo/core/data/ArrayByteSequenceTest.java 
b/core/src/test/java/org/apache/accumulo/core/data/ArrayByteSequenceTest.java
index 70c40ed..4d61db5 100644
--- 
a/core/src/test/java/org/apache/accumulo/core/data/ArrayByteSequenceTest.java
+++ 
b/core/src/test/java/org/apache/accumulo/core/data/ArrayByteSequenceTest.java
@@ -20,7 +20,6 @@ import static org.junit.Assert.assertEquals;
 
 import java.nio.ByteBuffer;
 
-import org.apache.accumulo.core.Constants;
 import org.junit.Before;
 import org.junit.Test;
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/c3837f42/core/src/test/java/org/apache/accumulo/core/data/KeyExtentTest.java
--
diff --git 
a/core/src/test/java/org/apache/accumulo/core/data/KeyExtentTest.java 
b/core/src/test/java/org/apache/accumulo/core/data/KeyExtentTest.java
index ce4ad98..b32dd26 100644
--- a/core/src/test/java/org/apache/accumulo/core/data/KeyExtentTest.java
+++ b/core/src/test/java/org/apache/accumulo/core/data/KeyExtentTest.java
@@ -291,6 +291,7 @@ public class KeyExtentTest {
 return out;
   }
 
+  @SuppressWarnings(deprecation)
   @Test
   public void testKeyExtentsForSimpleRange() {
 CollectionKeyExtent results;
@@ -307,6 +308,7 @@ public class KeyExtentTest {
 assertEquals(t, results.iterator().next());
   }
 
+  @SuppressWarnings(deprecation)
   @Test
   public void testKeyExtentsForRange() {
 KeyExtent b = nke(t, b, null);



[16/20] git commit: ACCUMULO-2491 Correct table user state upon termination of Security randomwalk

2014-03-20 Thread elserj
ACCUMULO-2491 Correct table user state upon termination of Security randomwalk

A partial backport of ACCUMULO-1162 to 1.4 - commit e93a11a only. As the 
Security randomwalk
ends and drops the table user, it now also sets the user's existence flag to 
false.


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

Branch: refs/heads/ACCUMULO-2061
Commit: 4a27da54696ed97b197ce0abd5bef0a2ccfc2b80
Parents: a417424
Author: Bill Havanki bhava...@cloudera.com
Authored: Tue Mar 18 10:11:20 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Tue Mar 18 16:43:54 2014 -0400

--
 .../accumulo/server/test/randomwalk/security/SecurityHelper.java| 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/4a27da54/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/SecurityHelper.java
--
diff --git 
a/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/SecurityHelper.java
 
b/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/SecurityHelper.java
index a4f715d..ec3154f 100644
--- 
a/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/SecurityHelper.java
+++ 
b/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/SecurityHelper.java
@@ -73,6 +73,7 @@ public class SecurityHelper {
   
   public static void setTabUserName(State state, String tabUserName) {
 state.set(tUserName, tabUserName);
+setTabUserExists(state, false);
   }
   
   public static byte[] getSysUserPass(State state) {



[12/20] git commit: ACCUMULO-2460 removed empty javadoc

2014-03-20 Thread elserj
ACCUMULO-2460 removed empty javadoc


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

Branch: refs/heads/ACCUMULO-2061
Commit: 70d472662d5c21c4f571c9501457172745e59a4c
Parents: 3ef67cb
Author: Keith Turner ktur...@apache.org
Authored: Tue Mar 18 14:29:16 2014 -0400
Committer: Keith Turner ktur...@apache.org
Committed: Tue Mar 18 14:29:16 2014 -0400

--
 test/src/test/java/org/apache/accumulo/test/ShellConfigIT.java | 3 ---
 1 file changed, 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/70d47266/test/src/test/java/org/apache/accumulo/test/ShellConfigIT.java
--
diff --git a/test/src/test/java/org/apache/accumulo/test/ShellConfigIT.java 
b/test/src/test/java/org/apache/accumulo/test/ShellConfigIT.java
index 3188c8e..b6c7553 100644
--- a/test/src/test/java/org/apache/accumulo/test/ShellConfigIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/ShellConfigIT.java
@@ -26,9 +26,6 @@ import org.apache.accumulo.test.functional.ConfigurableMacIT;
 import org.apache.hadoop.conf.Configuration;
 import org.junit.Test;
 
-/**
- * 
- */
 public class ShellConfigIT extends ConfigurableMacIT {
   public void configure(MiniAccumuloConfigImpl cfg, Configuration 
hadoopCoreSite) {
 cfg.setProperty(Property.CRYPTO_BLOCK_STREAM_SIZE, 7K);



[18/20] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.5.2-SNAPSHOT' into 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/84cc955d
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/84cc955d
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/84cc955d

Branch: refs/heads/ACCUMULO-2061
Commit: 84cc955db63e39dbcfc2d11ebb40cab22b885f5f
Parents: 99b6e25 53f2e34
Author: Bill Havanki bhava...@cloudera.com
Authored: Tue Mar 18 16:55:15 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Tue Mar 18 16:55:15 2014 -0400

--

--




[08/20] git commit: ACCUMULO-2437 Add javadoc for addSplits that documents the workaround using Text's byte[] constructor.

2014-03-20 Thread elserj
ACCUMULO-2437 Add javadoc for addSplits that documents the workaround using 
Text's byte[] constructor.


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

Branch: refs/heads/ACCUMULO-2061
Commit: 205f0dca8cc86d2c8ecab710719cfb7682920ed1
Parents: 082adbf
Author: Sean Busbey bus...@cloudera.com
Authored: Tue Mar 18 03:16:27 2014 -0500
Committer: Sean Busbey bus...@cloudera.com
Committed: Tue Mar 18 03:23:55 2014 -0500

--
 .../core/client/admin/TableOperations.java | 17 +
 1 file changed, 17 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/205f0dca/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java 
b/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
index c47d6a5..2521c96 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
@@ -135,6 +135,23 @@ public interface TableOperations {
   public void exportTable(String tableName, String exportDir) throws 
TableNotFoundException, AccumuloException, AccumuloSecurityException;
 
   /**
+   * Ensures that tablets are split along a set of keys.
+   * p
+   * Note that while the documentation for Text specifies that its bytestream 
should be UTF-8, the encoding is not enforced by operations that work with byte 
arrays.
+   * p
+   * For example, you can create 256 evenly-sliced splits via the following 
code sample even though the given byte sequences are not valid UTF-8.
+   * pre
+   * {@code
+   *  TableOperations tableOps = connector.tableOperations();
+   *  TreeSetText splits = new TreeSetText();
+   *  for (int i = 0; i  256; i++) {
+   *byte[] bytes = { (byte) i };
+   *splits.add(new Text(bytes));
+   *  }
+   *  tableOps.addSplits(TABLE_NAME, splits);
+   * }
+   * /pre
+   *
* @param tableName
*  the name of the table
* @param partitionKeys



[06/20] git commit: Merge branch '1.6.0-SNAPSHOT' into ACCUMULO-2061

2014-03-20 Thread elserj
Merge branch '1.6.0-SNAPSHOT' into ACCUMULO-2061


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

Branch: refs/heads/ACCUMULO-2061
Commit: 2c1af655c9a32a3a49417c049a1dd2fd7b658566
Parents: 6414ff1 34c8b7a
Author: Josh Elser els...@apache.org
Authored: Sat Mar 15 23:36:13 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Sat Mar 15 23:36:13 2014 -0400

--
 .../java/org/apache/accumulo/test/functional/BulkIT.java| 9 +
 .../java/org/apache/accumulo/test/functional/SslIT.java | 2 +-
 2 files changed, 6 insertions(+), 5 deletions(-)
--




[05/20] git commit: ACCUMULO-2484 Allow the invoker of runTest to pass in a unique suffix

2014-03-20 Thread elserj
ACCUMULO-2484 Allow the invoker of runTest to pass in a unique suffix


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

Branch: refs/heads/ACCUMULO-2061
Commit: 34c8b7af8c0bdb70a99fae3328a9c8a758f9aa3a
Parents: 8f98331
Author: Josh Elser els...@apache.org
Authored: Sat Mar 15 23:16:03 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Sat Mar 15 23:23:59 2014 -0400

--
 .../java/org/apache/accumulo/test/functional/BulkIT.java| 9 +
 .../java/org/apache/accumulo/test/functional/SslIT.java | 2 +-
 2 files changed, 6 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/34c8b7af/test/src/test/java/org/apache/accumulo/test/functional/BulkIT.java
--
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/BulkIT.java 
b/test/src/test/java/org/apache/accumulo/test/functional/BulkIT.java
index 2fc0477..b0fa8e1 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/BulkIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/BulkIT.java
@@ -39,16 +39,17 @@ public class BulkIT extends SimpleMacIT {
 
   @Test(timeout = 4 * 60 * 1000)
   public void test() throws Exception {
-runTest(getConnector(), getTableNames(1)[0], this.getClass().getName());
+runTest(getConnector(), getTableNames(1)[0], this.getClass().getName(), 
testName.getMethodName());
   }
 
-  static void runTest(Connector c, String tableName, String filePrefix) throws 
AccumuloException, AccumuloSecurityException, TableExistsException, 
IOException, TableNotFoundException,
+  static void runTest(Connector c, String tableName, String filePrefix, String 
dirSuffix) throws AccumuloException, AccumuloSecurityException, 
TableExistsException, IOException, TableNotFoundException,
   MutationsRejectedException {
 c.tableOperations().create(tableName);
 FileSystem fs = FileSystem.get(CachedConfiguration.getInstance());
 String base = target/accumulo-maven-plugin;
+String bulkFailures = base + /testBulkFail_ + dirSuffix;
 fs.delete(new Path(base + /testrf), true);
-fs.mkdirs(new Path(base + /testBulkFail));
+fs.mkdirs(new Path(bulkFailures));
 
 Opts opts = new Opts();
 opts.timestamp = 1;
@@ -68,7 +69,7 @@ public class BulkIT extends SimpleMacIT {
 opts.rows = 1;
 // create an rfile with one entry, there was a bug with this:
 TestIngest.ingest(c, opts, BWOPTS);
-c.tableOperations().importDirectory(tableName, base + /testrf, base + 
/testBulkFail, false);
+c.tableOperations().importDirectory(tableName, base + /testrf, 
bulkFailures, false);
 VerifyIngest.Opts vopts = new VerifyIngest.Opts();
 vopts.tableName = tableName;
 vopts.random = 56;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/34c8b7af/test/src/test/java/org/apache/accumulo/test/functional/SslIT.java
--
diff --git a/test/src/test/java/org/apache/accumulo/test/functional/SslIT.java 
b/test/src/test/java/org/apache/accumulo/test/functional/SslIT.java
index 1f0c811..2464546 100644
--- a/test/src/test/java/org/apache/accumulo/test/functional/SslIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/SslIT.java
@@ -52,7 +52,7 @@ public class SslIT extends ConfigurableMacIT {
 
   @Test(timeout = 5 * 60 * 1000)
   public void bulk() throws Exception {
-BulkIT.runTest(getConnector(), getTableNames(1)[0], 
this.getClass().getName());
+BulkIT.runTest(getConnector(), getTableNames(1)[0], 
this.getClass().getName(), testName.getMethodName());
   }
 
   @Test(timeout = 60 * 1000)



[17/20] git commit: Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT (-sours)

2014-03-20 Thread elserj
Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT (-sours)


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

Branch: refs/heads/ACCUMULO-2061
Commit: 53f2e3457f7ab83ae3953bb9c7551ec357ed5410
Parents: 1f4cb4d 4a27da5
Author: Bill Havanki bhava...@cloudera.com
Authored: Tue Mar 18 16:54:53 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Tue Mar 18 16:54:53 2014 -0400

--

--




git commit: ACCUMULO-2061 Co-locate volumes with the MAC dir

2014-03-20 Thread elserj
Repository: accumulo
Updated Branches:
  refs/heads/ACCUMULO-2061 8b8d565b7 - 3487f8a80


ACCUMULO-2061 Co-locate volumes with the MAC dir

Losing the volumes on test failure sucks because you can't validate
if we misplaced a file on the wrong volume in the first place.


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

Branch: refs/heads/ACCUMULO-2061
Commit: 3487f8a80810a73fb742382a6ecab609cb518b0b
Parents: 8b8d565
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 12:18:42 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 12:18:42 2014 -0400

--
 .../java/org/apache/accumulo/test/VolumeIT.java | 26 ++--
 1 file changed, 7 insertions(+), 19 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/3487f8a8/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
--
diff --git a/test/src/test/java/org/apache/accumulo/test/VolumeIT.java 
b/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
index 0a7ef3f..c0e41c1 100644
--- a/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
@@ -22,7 +22,6 @@ import static org.junit.Assert.assertTrue;
 import java.io.BufferedOutputStream;
 import java.io.File;
 import java.io.FileOutputStream;
-import java.io.IOException;
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -65,7 +64,6 @@ import org.apache.accumulo.server.ServerConstants;
 import org.apache.accumulo.server.init.Initialize;
 import org.apache.accumulo.server.util.Admin;
 import org.apache.accumulo.test.functional.ConfigurableMacIT;
-import org.apache.commons.io.FileUtils;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileStatus;
 import org.apache.hadoop.fs.FileSystem;
@@ -73,38 +71,28 @@ import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.fs.RawLocalFileSystem;
 import org.apache.hadoop.io.Text;
 import org.apache.zookeeper.ZooKeeper;
-import org.junit.After;
 import org.junit.Assert;
-import org.junit.BeforeClass;
 import org.junit.Test;
 
 public class VolumeIT extends ConfigurableMacIT {
 
   private static final Text EMPTY = new Text();
   private static final Value EMPTY_VALUE = new Value(new byte[] {});
-  public static File volDirBase;
-  public static Path v1;
-  public static Path v2;
+  private File volDirBase;
+  private Path v1, v2;
 
-  @BeforeClass
-  public static void createVolumeDirs() throws IOException {
-volDirBase = createSharedTestDir(VolumeIT.class.getName() + -volumes);
+  @SuppressWarnings(deprecation)
+  @Override
+  public void configure(MiniAccumuloConfigImpl cfg, Configuration 
hadoopCoreSite) {
+File baseDir = cfg.getDir();
+volDirBase = new File(baseDir, volumes);
 File v1f = new File(volDirBase, v1);
 File v2f = new File(volDirBase, v2);
 v1f.mkdir();
 v2f.mkdir();
 v1 = new Path(file:// + v1f.getAbsolutePath());
 v2 = new Path(file:// + v2f.getAbsolutePath());
-  }
 
-  @After
-  public void clearDirs() throws IOException {
-FileUtils.deleteQuietly(new File(v1.getParent().toUri()));
-  }
-
-  @SuppressWarnings(deprecation)
-  @Override
-  public void configure(MiniAccumuloConfigImpl cfg, Configuration 
hadoopCoreSite) {
 // Run MAC on two locations in the local file system
 URI v1Uri = v1.toUri();
 cfg.setProperty(Property.INSTANCE_DFS_DIR, v1Uri.getPath());



[5/8] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread busbey
Merge branch '1.5.2-SNAPSHOT' into 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/ef0eaaa0
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/ef0eaaa0
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/ef0eaaa0

Branch: refs/heads/master
Commit: ef0eaaa0976ced9f940d4ec856046dd6596ca43d
Parents: 84cc955 d22bf18
Author: Sean Busbey bus...@cloudera.com
Authored: Wed Mar 19 23:15:24 2014 -0500
Committer: Sean Busbey bus...@cloudera.com
Committed: Wed Mar 19 23:15:24 2014 -0500

--
 test/system/continuous/datanode-agitator.pl |  9 +++--
 test/system/continuous/master-agitator.pl   |  8 +++-
 test/system/continuous/start-agitator.sh| 20 ++--
 test/system/continuous/tserver-agitator.pl  |  9 +++--
 4 files changed, 31 insertions(+), 15 deletions(-)
--




[7/8] git commit: ACCUMULO-2382 make continuous ingest test mapreduce jobs work with non-default CONTINUOUS_CONF_DIR

2014-03-20 Thread busbey
ACCUMULO-2382 make continuous ingest test mapreduce jobs work with non-default 
CONTINUOUS_CONF_DIR


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 0fb0369af97c5d1a299b2ec9119374ab982bdf89
Parents: ef0eaaa
Author: Sean Busbey bus...@cloudera.com
Authored: Thu Mar 20 01:00:33 2014 -0500
Committer: Sean Busbey bus...@cloudera.com
Committed: Thu Mar 20 01:00:33 2014 -0500

--
 test/system/continuous/run-moru.sh   | 3 +--
 test/system/continuous/run-verify.sh | 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/0fb0369a/test/system/continuous/run-moru.sh
--
diff --git a/test/system/continuous/run-moru.sh 
b/test/system/continuous/run-moru.sh
index 18f98e1..3133b05 100755
--- a/test/system/continuous/run-moru.sh
+++ b/test/system/continuous/run-moru.sh
@@ -27,8 +27,7 @@ bin=$( cd -P $( dirname ${SOURCE} )  pwd )
 script=$( basename ${SOURCE} )
 # Stop: Resolve Script Directory
 
-CONTINUOUS_CONF_DIR=${CONTINUOUS_CONF_DIR:-${bin}}
-. ${CONTINUOUS_CONF_DIR}/mapred-setup.sh
+. ${bin}/mapred-setup.sh
 
 $ACCUMULO_HOME/bin/tool.sh $SERVER_LIBJAR 
org.apache.accumulo.test.continuous.ContinuousMoru -libjars $SERVER_LIBJAR -i 
$INSTANCE_NAME -z $ZOO_KEEPERS -u $USER -p $PASS --table $TABLE --min $MIN 
--max $MAX --maxColF $MAX_CF --maxColQ $MAX_CQ --batchMemory $MAX_MEM 
--batchLatency $MAX_LATENCY --batchThreads $NUM_THREADS --maxMappers 
$VERIFY_MAX_MAPS
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/0fb0369a/test/system/continuous/run-verify.sh
--
diff --git a/test/system/continuous/run-verify.sh 
b/test/system/continuous/run-verify.sh
index e6a87b3..72ecc14 100755
--- a/test/system/continuous/run-verify.sh
+++ b/test/system/continuous/run-verify.sh
@@ -27,8 +27,7 @@ bin=$( cd -P $( dirname ${SOURCE} )  pwd )
 script=$( basename ${SOURCE} )
 # Stop: Resolve Script Directory
 
-CONTINUOUS_CONF_DIR=${CONTINUOUS_CONF_DIR:-${bin}}
-. ${CONTINUOUS_CONF_DIR}/mapred-setup.sh
+. ${bin}/mapred-setup.sh
 
 AUTH_OPT=;
 



[6/8] git commit: ACCUMULO-2382 make continuous ingest test mapreduce jobs work with non-default CONTINUOUS_CONF_DIR

2014-03-20 Thread busbey
ACCUMULO-2382 make continuous ingest test mapreduce jobs work with non-default 
CONTINUOUS_CONF_DIR


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

Branch: refs/heads/master
Commit: 0fb0369af97c5d1a299b2ec9119374ab982bdf89
Parents: ef0eaaa
Author: Sean Busbey bus...@cloudera.com
Authored: Thu Mar 20 01:00:33 2014 -0500
Committer: Sean Busbey bus...@cloudera.com
Committed: Thu Mar 20 01:00:33 2014 -0500

--
 test/system/continuous/run-moru.sh   | 3 +--
 test/system/continuous/run-verify.sh | 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/0fb0369a/test/system/continuous/run-moru.sh
--
diff --git a/test/system/continuous/run-moru.sh 
b/test/system/continuous/run-moru.sh
index 18f98e1..3133b05 100755
--- a/test/system/continuous/run-moru.sh
+++ b/test/system/continuous/run-moru.sh
@@ -27,8 +27,7 @@ bin=$( cd -P $( dirname ${SOURCE} )  pwd )
 script=$( basename ${SOURCE} )
 # Stop: Resolve Script Directory
 
-CONTINUOUS_CONF_DIR=${CONTINUOUS_CONF_DIR:-${bin}}
-. ${CONTINUOUS_CONF_DIR}/mapred-setup.sh
+. ${bin}/mapred-setup.sh
 
 $ACCUMULO_HOME/bin/tool.sh $SERVER_LIBJAR 
org.apache.accumulo.test.continuous.ContinuousMoru -libjars $SERVER_LIBJAR -i 
$INSTANCE_NAME -z $ZOO_KEEPERS -u $USER -p $PASS --table $TABLE --min $MIN 
--max $MAX --maxColF $MAX_CF --maxColQ $MAX_CQ --batchMemory $MAX_MEM 
--batchLatency $MAX_LATENCY --batchThreads $NUM_THREADS --maxMappers 
$VERIFY_MAX_MAPS
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/0fb0369a/test/system/continuous/run-verify.sh
--
diff --git a/test/system/continuous/run-verify.sh 
b/test/system/continuous/run-verify.sh
index e6a87b3..72ecc14 100755
--- a/test/system/continuous/run-verify.sh
+++ b/test/system/continuous/run-verify.sh
@@ -27,8 +27,7 @@ bin=$( cd -P $( dirname ${SOURCE} )  pwd )
 script=$( basename ${SOURCE} )
 # Stop: Resolve Script Directory
 
-CONTINUOUS_CONF_DIR=${CONTINUOUS_CONF_DIR:-${bin}}
-. ${CONTINUOUS_CONF_DIR}/mapred-setup.sh
+. ${bin}/mapred-setup.sh
 
 AUTH_OPT=;
 



[8/8] git commit: Merge branch '1.6.0-SNAPSHOT'

2014-03-20 Thread busbey
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/fbb18d6e
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/fbb18d6e
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/fbb18d6e

Branch: refs/heads/master
Commit: fbb18d6eb1cf8c5449548653684db613b0123e92
Parents: 23980d3 0fb0369
Author: Sean Busbey bus...@cloudera.com
Authored: Thu Mar 20 11:24:09 2014 -0500
Committer: Sean Busbey bus...@cloudera.com
Committed: Thu Mar 20 11:24:09 2014 -0500

--
 test/system/continuous/datanode-agitator.pl |  9 +++--
 test/system/continuous/master-agitator.pl   |  8 +++-
 test/system/continuous/run-moru.sh  |  3 +--
 test/system/continuous/run-verify.sh|  3 +--
 test/system/continuous/start-agitator.sh| 20 ++--
 test/system/continuous/tserver-agitator.pl  |  9 +++--
 6 files changed, 33 insertions(+), 19 deletions(-)
--




[1/8] git commit: ACCUMULO-2382 make agitation work with a non-default CONTINUOUS_CONF_DIR.

2014-03-20 Thread busbey
Repository: accumulo
Updated Branches:
  refs/heads/1.5.2-SNAPSHOT 53f2e3457 - d22bf18f4
  refs/heads/1.6.0-SNAPSHOT 84cc955db - 0fb0369af
  refs/heads/master 23980d36c - fbb18d6eb


ACCUMULO-2382 make agitation work with a non-default CONTINUOUS_CONF_DIR.

* Change start-agitator to use inferred installation directory instead of 
passed in conf dir.
* Ensure tserver and master agitator default ot ACCUMULO_HOME if present, so 
that starting all as root works.


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

Branch: refs/heads/1.5.2-SNAPSHOT
Commit: d22bf18f4ccb56e7fe263f6e5e1aaffe6d41d2b2
Parents: 53f2e34
Author: Sean Busbey bus...@cloudera.com
Authored: Mon Mar 17 16:30:30 2014 -0500
Committer: Sean Busbey bus...@cloudera.com
Committed: Wed Mar 19 23:13:34 2014 -0500

--
 test/system/continuous/datanode-agitator.pl |  9 +++--
 test/system/continuous/master-agitator.pl   |  8 +++-
 test/system/continuous/start-agitator.sh| 20 ++--
 test/system/continuous/tserver-agitator.pl  |  9 +++--
 4 files changed, 31 insertions(+), 15 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/d22bf18f/test/system/continuous/datanode-agitator.pl
--
diff --git a/test/system/continuous/datanode-agitator.pl 
b/test/system/continuous/datanode-agitator.pl
index f823593..acb5843 100755
--- a/test/system/continuous/datanode-agitator.pl
+++ b/test/system/continuous/datanode-agitator.pl
@@ -24,8 +24,13 @@ if(scalar(@ARGV) != 5  scalar(@ARGV) != 3){
   exit(1);
 }
 
-$cwd=Cwd::cwd();
-$ACCUMULO_HOME=$cwd . '/../../..';
+my $ACCUMULO_HOME;
+if( defined $ENV{'ACCUMULO_HOME'} ){
+  $ACCUMULO_HOME = $ENV{'ACCUMULO_HOME'};
+} else {
+  $cwd=Cwd::cwd();
+  $ACCUMULO_HOME=$cwd . '/../../..';
+}
 $HADOOP_PREFIX=$ARGV[2];
 
 print ACCUMULO_HOME=$ACCUMULO_HOME\n;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d22bf18f/test/system/continuous/master-agitator.pl
--
diff --git a/test/system/continuous/master-agitator.pl 
b/test/system/continuous/master-agitator.pl
index a40bfb2..0b7ff0d 100755
--- a/test/system/continuous/master-agitator.pl
+++ b/test/system/continuous/master-agitator.pl
@@ -23,7 +23,13 @@ if(scalar(@ARGV) != 2){
exit(1);
 }
 
-$ACCUMULO_HOME=../../..;
+my $ACCUMULO_HOME;
+if( defined $ENV{'ACCUMULO_HOME'} ){
+  $ACCUMULO_HOME = $ENV{'ACCUMULO_HOME'};
+} else {
+  $cwd=Cwd::cwd();
+  $ACCUMULO_HOME=$cwd . '/../../..';
+}
 
 if(defined $ENV{'ACCUMULO_CONF_DIR'}){
 $ACCUMULO_CONF_DIR = $ENV{'ACCUMULO_CONF_DIR'};

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d22bf18f/test/system/continuous/start-agitator.sh
--
diff --git a/test/system/continuous/start-agitator.sh 
b/test/system/continuous/start-agitator.sh
index 979899f..70d5c53 100755
--- a/test/system/continuous/start-agitator.sh
+++ b/test/system/continuous/start-agitator.sh
@@ -38,34 +38,34 @@ if [[ `whoami` == root ]];  then
   echo Running master-agitator and tserver-agitator as $ACCUMULO_USER using 
su. Running datanode-agitator as $HDFS_USER using su.
 
   # Change to the correct user if started as root
-  su -c nohup $CONTINUOUS_CONF_DIR/master-agitator.pl $MASTER_KILL_SLEEP_TIME 
$MASTER_RESTART_SLEEP_TIME ${LOG_BASE}_master-agitator.out 
2${LOG_BASE}_master-agitator.err  -m - $ACCUMULO_USER
+  su -c nohup ${bin}/master-agitator.pl $MASTER_KILL_SLEEP_TIME 
$MASTER_RESTART_SLEEP_TIME ${LOG_BASE}_master-agitator.out 
2${LOG_BASE}_master-agitator.err  -m - $ACCUMULO_USER
 
-  su -c nohup $CONTINUOUS_CONF_DIR/tserver-agitator.pl $KILL_SLEEP_TIME 
$TUP_SLEEP_TIME $MIN_KILL $MAX_KILL ${LOG_BASE}_tserver-agitator.out 
2${LOG_BASE}_tserver-agitator.err  -m - $ACCUMULO_USER
+  su -c nohup ${bin}/tserver-agitator.pl $KILL_SLEEP_TIME $TUP_SLEEP_TIME 
$MIN_KILL $MAX_KILL ${LOG_BASE}_tserver-agitator.out 
2${LOG_BASE}_tserver-agitator.err  -m - $ACCUMULO_USER
 
-  su -c nohup $CONTINUOUS_CONF_DIR/datanode-agitator.pl $KILL_SLEEP_TIME 
$TUP_SLEEP_TIME $HADOOP_PREFIX $MIN_KILL $MAX_KILL 
${LOG_BASE}_datanode-agitator.out 2${LOG_BASE}_datanode-agitator.err  -m - 
$HDFS_USER
+  su -c nohup ${bin}/datanode-agitator.pl $KILL_SLEEP_TIME $TUP_SLEEP_TIME 
$HADOOP_PREFIX $MIN_KILL $MAX_KILL ${LOG_BASE}_datanode-agitator.out 
2${LOG_BASE}_datanode-agitator.err  -m - $HDFS_USER
 
 elif [[ `whoami` == $ACCUMULO_USER ]]; then
   echo Running master-agitator and tserver-agitator as `whoami`. Running 
datanode-agitator as $HDFS_USER using sudo.
   # Just run the 

[4/8] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread busbey
Merge branch '1.5.2-SNAPSHOT' into 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/ef0eaaa0
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/ef0eaaa0
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/ef0eaaa0

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: ef0eaaa0976ced9f940d4ec856046dd6596ca43d
Parents: 84cc955 d22bf18
Author: Sean Busbey bus...@cloudera.com
Authored: Wed Mar 19 23:15:24 2014 -0500
Committer: Sean Busbey bus...@cloudera.com
Committed: Wed Mar 19 23:15:24 2014 -0500

--
 test/system/continuous/datanode-agitator.pl |  9 +++--
 test/system/continuous/master-agitator.pl   |  8 +++-
 test/system/continuous/start-agitator.sh| 20 ++--
 test/system/continuous/tserver-agitator.pl  |  9 +++--
 4 files changed, 31 insertions(+), 15 deletions(-)
--




[3/8] git commit: ACCUMULO-2382 make agitation work with a non-default CONTINUOUS_CONF_DIR.

2014-03-20 Thread busbey
ACCUMULO-2382 make agitation work with a non-default CONTINUOUS_CONF_DIR.

* Change start-agitator to use inferred installation directory instead of 
passed in conf dir.
* Ensure tserver and master agitator default ot ACCUMULO_HOME if present, so 
that starting all as root works.


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

Branch: refs/heads/master
Commit: d22bf18f4ccb56e7fe263f6e5e1aaffe6d41d2b2
Parents: 53f2e34
Author: Sean Busbey bus...@cloudera.com
Authored: Mon Mar 17 16:30:30 2014 -0500
Committer: Sean Busbey bus...@cloudera.com
Committed: Wed Mar 19 23:13:34 2014 -0500

--
 test/system/continuous/datanode-agitator.pl |  9 +++--
 test/system/continuous/master-agitator.pl   |  8 +++-
 test/system/continuous/start-agitator.sh| 20 ++--
 test/system/continuous/tserver-agitator.pl  |  9 +++--
 4 files changed, 31 insertions(+), 15 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/d22bf18f/test/system/continuous/datanode-agitator.pl
--
diff --git a/test/system/continuous/datanode-agitator.pl 
b/test/system/continuous/datanode-agitator.pl
index f823593..acb5843 100755
--- a/test/system/continuous/datanode-agitator.pl
+++ b/test/system/continuous/datanode-agitator.pl
@@ -24,8 +24,13 @@ if(scalar(@ARGV) != 5  scalar(@ARGV) != 3){
   exit(1);
 }
 
-$cwd=Cwd::cwd();
-$ACCUMULO_HOME=$cwd . '/../../..';
+my $ACCUMULO_HOME;
+if( defined $ENV{'ACCUMULO_HOME'} ){
+  $ACCUMULO_HOME = $ENV{'ACCUMULO_HOME'};
+} else {
+  $cwd=Cwd::cwd();
+  $ACCUMULO_HOME=$cwd . '/../../..';
+}
 $HADOOP_PREFIX=$ARGV[2];
 
 print ACCUMULO_HOME=$ACCUMULO_HOME\n;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d22bf18f/test/system/continuous/master-agitator.pl
--
diff --git a/test/system/continuous/master-agitator.pl 
b/test/system/continuous/master-agitator.pl
index a40bfb2..0b7ff0d 100755
--- a/test/system/continuous/master-agitator.pl
+++ b/test/system/continuous/master-agitator.pl
@@ -23,7 +23,13 @@ if(scalar(@ARGV) != 2){
exit(1);
 }
 
-$ACCUMULO_HOME=../../..;
+my $ACCUMULO_HOME;
+if( defined $ENV{'ACCUMULO_HOME'} ){
+  $ACCUMULO_HOME = $ENV{'ACCUMULO_HOME'};
+} else {
+  $cwd=Cwd::cwd();
+  $ACCUMULO_HOME=$cwd . '/../../..';
+}
 
 if(defined $ENV{'ACCUMULO_CONF_DIR'}){
 $ACCUMULO_CONF_DIR = $ENV{'ACCUMULO_CONF_DIR'};

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d22bf18f/test/system/continuous/start-agitator.sh
--
diff --git a/test/system/continuous/start-agitator.sh 
b/test/system/continuous/start-agitator.sh
index 979899f..70d5c53 100755
--- a/test/system/continuous/start-agitator.sh
+++ b/test/system/continuous/start-agitator.sh
@@ -38,34 +38,34 @@ if [[ `whoami` == root ]];  then
   echo Running master-agitator and tserver-agitator as $ACCUMULO_USER using 
su. Running datanode-agitator as $HDFS_USER using su.
 
   # Change to the correct user if started as root
-  su -c nohup $CONTINUOUS_CONF_DIR/master-agitator.pl $MASTER_KILL_SLEEP_TIME 
$MASTER_RESTART_SLEEP_TIME ${LOG_BASE}_master-agitator.out 
2${LOG_BASE}_master-agitator.err  -m - $ACCUMULO_USER
+  su -c nohup ${bin}/master-agitator.pl $MASTER_KILL_SLEEP_TIME 
$MASTER_RESTART_SLEEP_TIME ${LOG_BASE}_master-agitator.out 
2${LOG_BASE}_master-agitator.err  -m - $ACCUMULO_USER
 
-  su -c nohup $CONTINUOUS_CONF_DIR/tserver-agitator.pl $KILL_SLEEP_TIME 
$TUP_SLEEP_TIME $MIN_KILL $MAX_KILL ${LOG_BASE}_tserver-agitator.out 
2${LOG_BASE}_tserver-agitator.err  -m - $ACCUMULO_USER
+  su -c nohup ${bin}/tserver-agitator.pl $KILL_SLEEP_TIME $TUP_SLEEP_TIME 
$MIN_KILL $MAX_KILL ${LOG_BASE}_tserver-agitator.out 
2${LOG_BASE}_tserver-agitator.err  -m - $ACCUMULO_USER
 
-  su -c nohup $CONTINUOUS_CONF_DIR/datanode-agitator.pl $KILL_SLEEP_TIME 
$TUP_SLEEP_TIME $HADOOP_PREFIX $MIN_KILL $MAX_KILL 
${LOG_BASE}_datanode-agitator.out 2${LOG_BASE}_datanode-agitator.err  -m - 
$HDFS_USER
+  su -c nohup ${bin}/datanode-agitator.pl $KILL_SLEEP_TIME $TUP_SLEEP_TIME 
$HADOOP_PREFIX $MIN_KILL $MAX_KILL ${LOG_BASE}_datanode-agitator.out 
2${LOG_BASE}_datanode-agitator.err  -m - $HDFS_USER
 
 elif [[ `whoami` == $ACCUMULO_USER ]]; then
   echo Running master-agitator and tserver-agitator as `whoami`. Running 
datanode-agitator as $HDFS_USER using sudo.
   # Just run the master-agitator if we're the accumulo user
-  nohup $CONTINUOUS_CONF_DIR/master-agitator.pl $MASTER_KILL_SLEEP_TIME 
$MASTER_RESTART_SLEEP_TIME ${LOG_BASE}_master-agitator.out 

svn commit: r1579698 - /accumulo/site/trunk/content/bylaws.mdtext

2014-03-20 Thread bhavanki
Author: bhavanki
Date: Thu Mar 20 18:07:00 2014
New Revision: 1579698

URL: http://svn.apache.org/r1579698
Log:
Remove reinstatement voting actions

Modified:
accumulo/site/trunk/content/bylaws.mdtext

Modified: accumulo/site/trunk/content/bylaws.mdtext
URL: 
http://svn.apache.org/viewvc/accumulo/site/trunk/content/bylaws.mdtext?rev=1579698r1=1579697r2=1579698view=diff
==
--- accumulo/site/trunk/content/bylaws.mdtext (original)
+++ accumulo/site/trunk/content/bylaws.mdtext Thu Mar 20 18:07:00 2014
@@ -182,12 +182,12 @@ This section describes the various actio
 tdConsensus approval/td
 tdActive PMC members/td
 td7/td
-trtdNew Committer or Reinstatement/td
+trtdNew Committer/td
 tdWhen a new committer is proposed for the project./td
 tdConsensus approval/td
 tdActive PMC members/td
 td3/td
-trtdNew PMC Member or Reinstatement/td
+trtdNew PMC Member/td
 tdWhen a committer is proposed for the PMC./td
 tdConsensus approval/td
 tdActive PMC members/td




svn commit: r902568 - in /websites/production/accumulo/content: ./ 1.4/apidocs/ 1.5/apidocs/

2014-03-20 Thread bhavanki
Author: bhavanki
Date: Thu Mar 20 18:07:35 2014
New Revision: 902568

Log:
Publishing svnmucc operation to accumulo site by bhavanki

Added:
websites/production/accumulo/content/
  - copied from r902567, websites/staging/accumulo/trunk/content/
websites/production/accumulo/content/1.4/apidocs/
  - copied from r902567, websites/production/accumulo/content/1.4/apidocs/
websites/production/accumulo/content/1.5/apidocs/
  - copied from r902567, websites/production/accumulo/content/1.5/apidocs/



[1/3] git commit: ACCUMULO-2507 add debugging information, and timeout for reader thread to pull in all the output of the tserver

2014-03-20 Thread ecn
Repository: accumulo
Updated Branches:
  refs/heads/1.6.0-SNAPSHOT 0fb0369af - acce1d53f
  refs/heads/master fbb18d6eb - 7988f8f6c


ACCUMULO-2507 add debugging information, and timeout for reader thread to pull 
in all the output of the tserver


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: acce1d53f54dbb88804caf4b35f8eaac01252f5e
Parents: 0fb0369
Author: Eric C. Newton eric.new...@gmail.com
Authored: Thu Mar 20 14:25:34 2014 -0400
Committer: Eric C. Newton eric.new...@gmail.com
Committed: Thu Mar 20 14:26:06 2014 -0400

--
 .../accumulo/test/functional/HalfDeadTServerIT.java| 13 +
 1 file changed, 9 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/acce1d53/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
--
diff --git 
a/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java 
b/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
index d08b822..0346f2f 100644
--- 
a/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
+++ 
b/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
@@ -16,8 +16,7 @@
  */
 package org.apache.accumulo.test.functional;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
 
 import java.io.BufferedReader;
 import java.io.File;
@@ -94,8 +93,13 @@ public class HalfDeadTServerIT extends ConfigurableMacIT {
   @Test(timeout = 4 * 60 * 1000)
   public void testTimeout() throws Exception {
 String results = test(40);
-if (results != null)
-  assertTrue(results.contains(Session expired));
+if (results != null) {
+   if (!results.contains(Session expired)) {
+   System.out.println(Failed to find Session expired in);
+   System.out.println(results);
+   fail(zookeeper session failed to expire);
+   }
+}
   }
   
   public String test(int seconds) throws Exception {
@@ -169,6 +173,7 @@ public class HalfDeadTServerIT extends ConfigurableMacIT {
   tserver.destroy();
   tserver.waitFor();
   t.join();
+  UtilWaitThread.sleep(1000);
 }
   }
   



[2/3] git commit: ACCUMULO-2507 add debugging information, and timeout for reader thread to pull in all the output of the tserver

2014-03-20 Thread ecn
ACCUMULO-2507 add debugging information, and timeout for reader thread to pull 
in all the output of the tserver


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

Branch: refs/heads/master
Commit: acce1d53f54dbb88804caf4b35f8eaac01252f5e
Parents: 0fb0369
Author: Eric C. Newton eric.new...@gmail.com
Authored: Thu Mar 20 14:25:34 2014 -0400
Committer: Eric C. Newton eric.new...@gmail.com
Committed: Thu Mar 20 14:26:06 2014 -0400

--
 .../accumulo/test/functional/HalfDeadTServerIT.java| 13 +
 1 file changed, 9 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/acce1d53/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
--
diff --git 
a/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java 
b/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
index d08b822..0346f2f 100644
--- 
a/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
+++ 
b/test/src/test/java/org/apache/accumulo/test/functional/HalfDeadTServerIT.java
@@ -16,8 +16,7 @@
  */
 package org.apache.accumulo.test.functional;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
 
 import java.io.BufferedReader;
 import java.io.File;
@@ -94,8 +93,13 @@ public class HalfDeadTServerIT extends ConfigurableMacIT {
   @Test(timeout = 4 * 60 * 1000)
   public void testTimeout() throws Exception {
 String results = test(40);
-if (results != null)
-  assertTrue(results.contains(Session expired));
+if (results != null) {
+   if (!results.contains(Session expired)) {
+   System.out.println(Failed to find Session expired in);
+   System.out.println(results);
+   fail(zookeeper session failed to expire);
+   }
+}
   }
   
   public String test(int seconds) throws Exception {
@@ -169,6 +173,7 @@ public class HalfDeadTServerIT extends ConfigurableMacIT {
   tserver.destroy();
   tserver.waitFor();
   t.join();
+  UtilWaitThread.sleep(1000);
 }
   }
   



[3/3] git commit: Merge branch '1.6.0-SNAPSHOT'

2014-03-20 Thread ecn
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/7988f8f6
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/7988f8f6
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/7988f8f6

Branch: refs/heads/master
Commit: 7988f8f6c5bd023e584382b9e92ed6d5cb112d54
Parents: fbb18d6 acce1d5
Author: Eric C. Newton eric.new...@gmail.com
Authored: Thu Mar 20 14:41:11 2014 -0400
Committer: Eric C. Newton eric.new...@gmail.com
Committed: Thu Mar 20 14:41:11 2014 -0400

--
 .../accumulo/test/functional/HalfDeadTServerIT.java| 13 +
 1 file changed, 9 insertions(+), 4 deletions(-)
--




[09/10] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread bhavanki
Merge branch '1.5.2-SNAPSHOT' into 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/aefa52e2
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/aefa52e2
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/aefa52e2

Branch: refs/heads/master
Commit: aefa52e2af722ef3dc8ea6ebf342b61a40611397
Parents: acce1d5 4b7a011
Author: Bill Havanki bhava...@cloudera.com
Authored: Thu Mar 20 15:01:47 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Thu Mar 20 15:01:47 2014 -0400

--
 .../java/org/apache/accumulo/test/randomwalk/security/DropUser.java | 1 +
 1 file changed, 1 insertion(+)
--




[07/10] git commit: Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

2014-03-20 Thread bhavanki
Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

Conflicts:

test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java


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

Branch: refs/heads/master
Commit: 4b7a011ca59cd0f731192169d3999c630e14c0e1
Parents: d22bf18 bbd6aeb
Author: Bill Havanki bhava...@cloudera.com
Authored: Thu Mar 20 15:01:37 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Thu Mar 20 15:01:37 2014 -0400

--
 .../java/org/apache/accumulo/test/randomwalk/security/DropUser.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/4b7a011c/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
--
diff --cc 
test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
index ddf39aa,000..d48a2cd
mode 100644,00..100644
--- 
a/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
+++ 
b/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
@@@ -1,66 -1,0 +1,67 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.test.randomwalk.security;
 +
 +import java.util.Properties;
 +
 +import org.apache.accumulo.core.client.AccumuloException;
 +import org.apache.accumulo.core.client.AccumuloSecurityException;
 +import org.apache.accumulo.core.client.Connector;
 +import org.apache.accumulo.test.randomwalk.State;
 +import org.apache.accumulo.test.randomwalk.Test;
 +
 +public class DropUser extends Test {
 +  
 +  @Override
 +  public void visit(State state, Properties props) throws Exception {
 +Connector conn = 
state.getInstance().getConnector(WalkingSecurity.get(state).getSysUserName(), 
WalkingSecurity.get(state).getSysToken());
 +
 +String tableUserName = WalkingSecurity.get(state).getTabUserName();
 +
 +boolean exists = WalkingSecurity.get(state).userExists(tableUserName);
 +boolean hasPermission = 
WalkingSecurity.get(state).canDropUser(WalkingSecurity.get(state).getSysCredentials(),
 tableUserName);
 +
 +try {
 +  conn.securityOperations().dropLocalUser(tableUserName);
 +} catch (AccumuloSecurityException ae) {
 +  switch (ae.getSecurityErrorCode()) {
 +case PERMISSION_DENIED:
 +  if (hasPermission)
 +throw new AccumuloException(Got a security exception when I 
should have had permission., ae);
 +  else {
 +if (exists) {
 +  
state.getConnector().securityOperations().dropLocalUser(tableUserName);
 +  WalkingSecurity.get(state).dropUser(tableUserName);
 +}
 +return;
 +  }
 +  
 +case USER_DOESNT_EXIST:
 +  if (exists)
 +throw new AccumuloException(Got user DNE exception when user 
should exists., ae);
 +  else
 +return;
 +default:
 +  throw new AccumuloException(Got unexpected exception, ae);
 +  }
 +}
 +WalkingSecurity.get(state).dropUser(tableUserName);
++Thread.sleep(1000);
 +if (!hasPermission)
 +  throw new AccumuloException(Didn't get Security Exception when we 
should have);
 +  }
 +}



[04/10] git commit: ACCUMULO-2508 Add delay after dropping user in security randomwalk

2014-03-20 Thread bhavanki
ACCUMULO-2508 Add delay after dropping user in security randomwalk


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

Branch: refs/heads/master
Commit: bbd6aeb3303ddd230f7f609b1cf7d3137cbc180d
Parents: 4a27da5
Author: Bill Havanki bhava...@cloudera.com
Authored: Thu Mar 20 14:57:25 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Thu Mar 20 14:57:25 2014 -0400

--
 .../apache/accumulo/server/test/randomwalk/security/DropUser.java   | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/bbd6aeb3/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
--
diff --git 
a/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
 
b/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
index 8957e6a..1fa3789 100644
--- 
a/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
+++ 
b/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
@@ -71,6 +71,7 @@ public class DropUser extends Test {
   SecurityHelper.setTabPerm(state, tableUserName, tp, false);
 for (SystemPermission sp : SystemPermission.values())
   SecurityHelper.setSysPerm(state, tableUserName, sp, false);
+Thread.sleep(1000);
 if (!hasPermission)
   throw new AccumuloException(Didn't get Security Exception when we 
should have);
   }



[06/10] git commit: Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

2014-03-20 Thread bhavanki
Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

Conflicts:

test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java


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

Branch: refs/heads/1.5.2-SNAPSHOT
Commit: 4b7a011ca59cd0f731192169d3999c630e14c0e1
Parents: d22bf18 bbd6aeb
Author: Bill Havanki bhava...@cloudera.com
Authored: Thu Mar 20 15:01:37 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Thu Mar 20 15:01:37 2014 -0400

--
 .../java/org/apache/accumulo/test/randomwalk/security/DropUser.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/4b7a011c/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
--
diff --cc 
test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
index ddf39aa,000..d48a2cd
mode 100644,00..100644
--- 
a/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
+++ 
b/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
@@@ -1,66 -1,0 +1,67 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.test.randomwalk.security;
 +
 +import java.util.Properties;
 +
 +import org.apache.accumulo.core.client.AccumuloException;
 +import org.apache.accumulo.core.client.AccumuloSecurityException;
 +import org.apache.accumulo.core.client.Connector;
 +import org.apache.accumulo.test.randomwalk.State;
 +import org.apache.accumulo.test.randomwalk.Test;
 +
 +public class DropUser extends Test {
 +  
 +  @Override
 +  public void visit(State state, Properties props) throws Exception {
 +Connector conn = 
state.getInstance().getConnector(WalkingSecurity.get(state).getSysUserName(), 
WalkingSecurity.get(state).getSysToken());
 +
 +String tableUserName = WalkingSecurity.get(state).getTabUserName();
 +
 +boolean exists = WalkingSecurity.get(state).userExists(tableUserName);
 +boolean hasPermission = 
WalkingSecurity.get(state).canDropUser(WalkingSecurity.get(state).getSysCredentials(),
 tableUserName);
 +
 +try {
 +  conn.securityOperations().dropLocalUser(tableUserName);
 +} catch (AccumuloSecurityException ae) {
 +  switch (ae.getSecurityErrorCode()) {
 +case PERMISSION_DENIED:
 +  if (hasPermission)
 +throw new AccumuloException(Got a security exception when I 
should have had permission., ae);
 +  else {
 +if (exists) {
 +  
state.getConnector().securityOperations().dropLocalUser(tableUserName);
 +  WalkingSecurity.get(state).dropUser(tableUserName);
 +}
 +return;
 +  }
 +  
 +case USER_DOESNT_EXIST:
 +  if (exists)
 +throw new AccumuloException(Got user DNE exception when user 
should exists., ae);
 +  else
 +return;
 +default:
 +  throw new AccumuloException(Got unexpected exception, ae);
 +  }
 +}
 +WalkingSecurity.get(state).dropUser(tableUserName);
++Thread.sleep(1000);
 +if (!hasPermission)
 +  throw new AccumuloException(Didn't get Security Exception when we 
should have);
 +  }
 +}



[10/10] git commit: Merge branch '1.6.0-SNAPSHOT'

2014-03-20 Thread bhavanki
Merge branch '1.6.0-SNAPSHOT'

Conflicts:

test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java


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

Branch: refs/heads/master
Commit: b644edade2041f05cd837542cadce3fa5a7e2923
Parents: 7988f8f aefa52e
Author: Bill Havanki bhava...@cloudera.com
Authored: Thu Mar 20 15:02:19 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Thu Mar 20 15:02:19 2014 -0400

--
 .../java/org/apache/accumulo/test/randomwalk/security/DropUser.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/b644edad/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
--
diff --cc 
test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
index f310116,d48a2cd..40bde3b
--- 
a/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
+++ 
b/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
@@@ -60,7 -59,8 +60,8 @@@ public class DropUser extends Test 
throw new AccumuloException(Got unexpected exception, ae);
}
  }
 -WalkingSecurity.get(state).dropUser(tableUserName);
 +WalkingSecurity.get(state,env).dropUser(tableUserName);
+ Thread.sleep(1000);
  if (!hasPermission)
throw new AccumuloException(Didn't get Security Exception when we 
should have);
}



[03/10] git commit: ACCUMULO-2508 Add delay after dropping user in security randomwalk

2014-03-20 Thread bhavanki
ACCUMULO-2508 Add delay after dropping user in security randomwalk


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: bbd6aeb3303ddd230f7f609b1cf7d3137cbc180d
Parents: 4a27da5
Author: Bill Havanki bhava...@cloudera.com
Authored: Thu Mar 20 14:57:25 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Thu Mar 20 14:57:25 2014 -0400

--
 .../apache/accumulo/server/test/randomwalk/security/DropUser.java   | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/bbd6aeb3/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
--
diff --git 
a/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
 
b/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
index 8957e6a..1fa3789 100644
--- 
a/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
+++ 
b/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
@@ -71,6 +71,7 @@ public class DropUser extends Test {
   SecurityHelper.setTabPerm(state, tableUserName, tp, false);
 for (SystemPermission sp : SystemPermission.values())
   SecurityHelper.setSysPerm(state, tableUserName, sp, false);
+Thread.sleep(1000);
 if (!hasPermission)
   throw new AccumuloException(Didn't get Security Exception when we 
should have);
   }



[02/10] git commit: ACCUMULO-2508 Add delay after dropping user in security randomwalk

2014-03-20 Thread bhavanki
ACCUMULO-2508 Add delay after dropping user in security randomwalk


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

Branch: refs/heads/1.5.2-SNAPSHOT
Commit: bbd6aeb3303ddd230f7f609b1cf7d3137cbc180d
Parents: 4a27da5
Author: Bill Havanki bhava...@cloudera.com
Authored: Thu Mar 20 14:57:25 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Thu Mar 20 14:57:25 2014 -0400

--
 .../apache/accumulo/server/test/randomwalk/security/DropUser.java   | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/bbd6aeb3/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
--
diff --git 
a/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
 
b/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
index 8957e6a..1fa3789 100644
--- 
a/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
+++ 
b/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
@@ -71,6 +71,7 @@ public class DropUser extends Test {
   SecurityHelper.setTabPerm(state, tableUserName, tp, false);
 for (SystemPermission sp : SystemPermission.values())
   SecurityHelper.setSysPerm(state, tableUserName, sp, false);
+Thread.sleep(1000);
 if (!hasPermission)
   throw new AccumuloException(Didn't get Security Exception when we 
should have);
   }



[01/10] git commit: ACCUMULO-2508 Add delay after dropping user in security randomwalk

2014-03-20 Thread bhavanki
Repository: accumulo
Updated Branches:
  refs/heads/1.4.5-SNAPSHOT 4a27da546 - bbd6aeb33
  refs/heads/1.5.2-SNAPSHOT d22bf18f4 - 4b7a011ca
  refs/heads/1.6.0-SNAPSHOT acce1d53f - aefa52e2a
  refs/heads/master 7988f8f6c - b644edade


ACCUMULO-2508 Add delay after dropping user in security randomwalk


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

Branch: refs/heads/1.4.5-SNAPSHOT
Commit: bbd6aeb3303ddd230f7f609b1cf7d3137cbc180d
Parents: 4a27da5
Author: Bill Havanki bhava...@cloudera.com
Authored: Thu Mar 20 14:57:25 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Thu Mar 20 14:57:25 2014 -0400

--
 .../apache/accumulo/server/test/randomwalk/security/DropUser.java   | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/bbd6aeb3/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
--
diff --git 
a/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
 
b/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
index 8957e6a..1fa3789 100644
--- 
a/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
+++ 
b/src/server/src/main/java/org/apache/accumulo/server/test/randomwalk/security/DropUser.java
@@ -71,6 +71,7 @@ public class DropUser extends Test {
   SecurityHelper.setTabPerm(state, tableUserName, tp, false);
 for (SystemPermission sp : SystemPermission.values())
   SecurityHelper.setSysPerm(state, tableUserName, sp, false);
+Thread.sleep(1000);
 if (!hasPermission)
   throw new AccumuloException(Didn't get Security Exception when we 
should have);
   }



[08/10] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread bhavanki
Merge branch '1.5.2-SNAPSHOT' into 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/aefa52e2
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/aefa52e2
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/aefa52e2

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: aefa52e2af722ef3dc8ea6ebf342b61a40611397
Parents: acce1d5 4b7a011
Author: Bill Havanki bhava...@cloudera.com
Authored: Thu Mar 20 15:01:47 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Thu Mar 20 15:01:47 2014 -0400

--
 .../java/org/apache/accumulo/test/randomwalk/security/DropUser.java | 1 +
 1 file changed, 1 insertion(+)
--




[05/10] git commit: Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

2014-03-20 Thread bhavanki
Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

Conflicts:

test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 4b7a011ca59cd0f731192169d3999c630e14c0e1
Parents: d22bf18 bbd6aeb
Author: Bill Havanki bhava...@cloudera.com
Authored: Thu Mar 20 15:01:37 2014 -0400
Committer: Bill Havanki bhava...@cloudera.com
Committed: Thu Mar 20 15:01:37 2014 -0400

--
 .../java/org/apache/accumulo/test/randomwalk/security/DropUser.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/4b7a011c/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
--
diff --cc 
test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
index ddf39aa,000..d48a2cd
mode 100644,00..100644
--- 
a/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
+++ 
b/test/src/main/java/org/apache/accumulo/test/randomwalk/security/DropUser.java
@@@ -1,66 -1,0 +1,67 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.test.randomwalk.security;
 +
 +import java.util.Properties;
 +
 +import org.apache.accumulo.core.client.AccumuloException;
 +import org.apache.accumulo.core.client.AccumuloSecurityException;
 +import org.apache.accumulo.core.client.Connector;
 +import org.apache.accumulo.test.randomwalk.State;
 +import org.apache.accumulo.test.randomwalk.Test;
 +
 +public class DropUser extends Test {
 +  
 +  @Override
 +  public void visit(State state, Properties props) throws Exception {
 +Connector conn = 
state.getInstance().getConnector(WalkingSecurity.get(state).getSysUserName(), 
WalkingSecurity.get(state).getSysToken());
 +
 +String tableUserName = WalkingSecurity.get(state).getTabUserName();
 +
 +boolean exists = WalkingSecurity.get(state).userExists(tableUserName);
 +boolean hasPermission = 
WalkingSecurity.get(state).canDropUser(WalkingSecurity.get(state).getSysCredentials(),
 tableUserName);
 +
 +try {
 +  conn.securityOperations().dropLocalUser(tableUserName);
 +} catch (AccumuloSecurityException ae) {
 +  switch (ae.getSecurityErrorCode()) {
 +case PERMISSION_DENIED:
 +  if (hasPermission)
 +throw new AccumuloException(Got a security exception when I 
should have had permission., ae);
 +  else {
 +if (exists) {
 +  
state.getConnector().securityOperations().dropLocalUser(tableUserName);
 +  WalkingSecurity.get(state).dropUser(tableUserName);
 +}
 +return;
 +  }
 +  
 +case USER_DOESNT_EXIST:
 +  if (exists)
 +throw new AccumuloException(Got user DNE exception when user 
should exists., ae);
 +  else
 +return;
 +default:
 +  throw new AccumuloException(Got unexpected exception, ae);
 +  }
 +}
 +WalkingSecurity.get(state).dropUser(tableUserName);
++Thread.sleep(1000);
 +if (!hasPermission)
 +  throw new AccumuloException(Didn't get Security Exception when we 
should have);
 +  }
 +}



svn commit: r1579718 - /accumulo/site/branches/redesign14/

2014-03-20 Thread bhavanki
Author: bhavanki
Date: Thu Mar 20 19:20:20 2014
New Revision: 1579718

URL: http://svn.apache.org/r1579718
Log:
Branch for early 2014 redesign with Bootstrap etc.

Added:
accumulo/site/branches/redesign14/   (props changed)
  - copied from r1579717, accumulo/site/trunk/

Propchange: accumulo/site/branches/redesign14/
--
--- svn:ignore (added)
+++ svn:ignore Thu Mar 20 19:20:20 2014
@@ -0,0 +1 @@
+.project

Propchange: accumulo/site/branches/redesign14/
--
svn:mergeinfo = /accumulo/site/branches/git:1490088-1504703




svn commit: r902575 - /websites/staging/accumulo/trunk/content/

2014-03-20 Thread buildbot
Author: buildbot
Date: Thu Mar 20 19:20:27 2014
New Revision: 902575

Log:
Staging update by buildbot for accumulo

Modified:
websites/staging/accumulo/trunk/content/   (props changed)

Propchange: websites/staging/accumulo/trunk/content/
--
--- cms:source-revision (original)
+++ cms:source-revision Thu Mar 20 19:20:27 2014
@@ -1 +1 @@
-1579698
+1579718




svn commit: r902577 - /websites/staging/accumulo/trunk/content/

2014-03-20 Thread buildbot
Author: buildbot
Date: Thu Mar 20 19:25:56 2014
New Revision: 902577

Log:
Staging update by buildbot for accumulo

Modified:
websites/staging/accumulo/trunk/content/   (props changed)

Propchange: websites/staging/accumulo/trunk/content/
--
--- cms:source-revision (original)
+++ cms:source-revision Thu Mar 20 19:25:56 2014
@@ -1 +1 @@
-1579718
+1579720




svn commit: r902579 - in /websites/staging/accumulo/trunk/content: ./ bylaws.html

2014-03-20 Thread buildbot
Author: buildbot
Date: Thu Mar 20 19:40:11 2014
New Revision: 902579

Log:
Staging update by buildbot for accumulo

Modified:
websites/staging/accumulo/trunk/content/   (props changed)
websites/staging/accumulo/trunk/content/bylaws.html

Propchange: websites/staging/accumulo/trunk/content/
--
--- cms:source-revision (original)
+++ cms:source-revision Thu Mar 20 19:40:11 2014
@@ -1 +1 @@
-1579720
+1579722

Modified: websites/staging/accumulo/trunk/content/bylaws.html
==
--- websites/staging/accumulo/trunk/content/bylaws.html (original)
+++ websites/staging/accumulo/trunk/content/bylaws.html Thu Mar 20 19:40:11 2014
@@ -104,8 +104,8 @@
 h2 id=contributorsContributors/h2
 pAll of the volunteers who are contributing time, code, documentation, or 
resources to the Accumulo project are considered contributors. A contributor 
that makes sustained, welcome contributions to the project may be invited to 
become a committer, though the exact timing of such invitations depends on many 
factors./p
 h2 id=committersCommitters/h2
-pThe project's committers are responsible for the project's technical 
management. Committers have write access to the project's code repositories and 
may cast binding votes on any technical discussion regarding Accumulo. 
Committer access is by invitation only and must be approved by consensus 
approval of the active PMC members. Upon acceptance of the invitation to become 
a committer, it is the accepting member’s responsibility to update his/her 
status on the Accumulo web page accordingly./p
-pA committer is considered emeritus, meaning inactive, by his or her own 
declaration or by not reviewing patches or committing patches to the project 
for over six months. Emeritus members will be recognized by the PMC on the 
Accumulo web page, in honor of their past contributions. Emeritus members 
retain all voting and commit rights associated with their former designation 
and can move themselves out of emeritus status by sending an announcement of 
their return to the developer mailing list. It will be the returning member's 
responsibility to update his/her status on the web page accordingly./p
+pThe project's committers are responsible for the project's technical 
management. Committers have write access to the project's code repositories and 
may cast binding votes on any technical discussion regarding Accumulo. 
Committer access is by invitation only and must be approved by consensus 
approval of the active PMC members. Upon acceptance of the invitation to become 
a committer, it is the accepting member’s responsibility to update their 
status on the Accumulo web page accordingly./p
+pA committer is considered emeritus, meaning inactive, by their own 
declaration or by not reviewing patches or committing patches to the project 
for over six months. Emeritus members will be recognized by the PMC on the 
Accumulo web page, in honor of their past contributions. Emeritus members 
retain all voting and commit rights associated with their former designation 
and can move themselves out of emeritus status by sending an announcement of 
their return to the developer mailing list. It will be the returning member's 
responsibility to update their status on the web page accordingly./p
 pAn emeritus committer’s commit access may be disabled as part of routine 
security. Access shall not be removed without notifying the committer, and 
access shall be maintained if the committer wishes to leave it active. A 
committer’s commit access shall be reactivated upon the committer’s request 
to the PMC./p
 pAll Apache committers are required to have a signed a 
href=http://www.apache.org/licenses/icla.txt;Contributor License 
Agreement/a (CLA) on file with the Apache Software Foundation. Under the 
terms of the CLA that all committers must sign, a committer's primary 
responsibility is to ensure that all code committed to Apache Accumulo is 
licensed appropriately and meets those criteria set forth in the CLA (including 
both original works and patches committed on behalf of other contributors). 
There is a a href=http://www.apache.org/dev/committers.html;Committer 
FAQ/a which provides more details on the requirements for committers. /p
 pIt is the custom of the Accumulo project to also invite each committer to 
become a member of the Accumulo PMC./p
@@ -131,8 +131,8 @@ stability, and robustness of both code a
 liMaintaining these bylaws and other guidelines of the project./li
 /ul
 pIn particular, PMC members must understand both our project's criteria and 
ASF criteria for voting on a a 
href=http://www.apache.org/dev/release.html#management;release/a./p
-pMembership of the PMC is by invitation only and must be approved by a 
consensus approval of active PMC members. Upon acceptance of the invitation to 
become a PMC member, it is the 

svn commit: r902580 - in /websites/production/accumulo/content: ./ 1.4/apidocs/ 1.5/apidocs/

2014-03-20 Thread ctubbsii
Author: ctubbsii
Date: Thu Mar 20 19:41:12 2014
New Revision: 902580

Log:
Use generic pronouns instead of gender-specific ones

Added:
websites/production/accumulo/content/
  - copied from r902579, websites/staging/accumulo/trunk/content/
websites/production/accumulo/content/1.4/apidocs/
  - copied from r902579, websites/production/accumulo/content/1.4/apidocs/
websites/production/accumulo/content/1.5/apidocs/
  - copied from r902579, websites/production/accumulo/content/1.5/apidocs/



[1/2] git commit: ACCUMULO-2061 Fixing whitespace nits

2014-03-20 Thread elserj
Repository: accumulo
Updated Branches:
  refs/heads/ACCUMULO-2061 3487f8a80 - e796ffc7a


ACCUMULO-2061 Fixing whitespace nits


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

Branch: refs/heads/ACCUMULO-2061
Commit: f5ba4d5ba51697597077d9851a7bde09532758f6
Parents: 3487f8a
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 13:23:04 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 13:23:04 2014 -0400

--
 .../org/apache/accumulo/core/volume/NonConfiguredVolume.java | 2 +-
 .../org/apache/accumulo/core/volume/VolumeConfiguration.java | 4 ++--
 .../main/java/org/apache/accumulo/core/volume/VolumeImpl.java| 2 +-
 .../org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java | 3 ---
 4 files changed, 4 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/f5ba4d5b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
index 3cfd1c2..3d56fa9 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
@@ -23,7 +23,7 @@ import org.apache.hadoop.fs.Path;
 /**
  * Volume implementation which represents a Volume for which we have a 
FileSystem but no base path because it is not configured via
  * {@link Property#INSTANCE_VOLUMES}
- * 
+ *
  * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references to these volumes have not been updated. This 
Volume should
  * never be used to create new files, only to read existing files.
  */

http://git-wip-us.apache.org/repos/asf/accumulo/blob/f5ba4d5b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
index 71ad611..e7a51d7 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
@@ -85,7 +85,7 @@ public class VolumeConfiguration {
 
   /**
* Compute the URIs to be used by Accumulo
-   * 
+   *
* @param conf
* @return
*/
@@ -134,7 +134,7 @@ public class VolumeConfiguration {
 
   /**
* Create a Volume with the given FileSystem that writes to the default path
-   * 
+   *
* @param fs
*  A FileSystem to write to
* @return A Volume instance writing to the given FileSystem in the default 
path

http://git-wip-us.apache.org/repos/asf/accumulo/blob/f5ba4d5b/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
--
diff --git a/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
index f902c35..43ab96b 100644
--- a/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
+++ b/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
@@ -29,7 +29,7 @@ import org.apache.hadoop.fs.Path;
 import org.apache.log4j.Logger;
 
 /**
- * Basic Volume implementation that contains a FileSystem and a base path 
+ * Basic Volume implementation that contains a FileSystem and a base path
  * that should be used within that filesystem.
  */
 public class VolumeImpl implements Volume {

http://git-wip-us.apache.org/repos/asf/accumulo/blob/f5ba4d5b/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
--
diff --git 
a/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
 
b/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
index 937baf8..8d4a800 100644
--- 
a/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
+++ 
b/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
@@ -25,9 +25,6 @@ import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
-/**
- * 
- */
 public class NonConfiguredVolumeTest {
 
   private NonConfiguredVolume volume;



[2/2] git commit: ACCUMULO-2061 Make sure we sleep to allow the processes to die before fs rename

2014-03-20 Thread elserj
ACCUMULO-2061 Make sure we sleep to allow the processes to die before fs rename

If we don't wait a little bit, it's possible that the MAC processes will
recreate a file in the directory we just renamed which will cause the test
to fail despite Accumulo doing the right things.


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

Branch: refs/heads/ACCUMULO-2061
Commit: e796ffc7ae2195ba8feb877bded675f4c4346f30
Parents: f5ba4d5
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 16:16:30 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 16:16:30 2014 -0400

--
 .../test/java/org/apache/accumulo/test/VolumeIT.java   | 13 +
 1 file changed, 13 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/e796ffc7/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
--
diff --git a/test/src/test/java/org/apache/accumulo/test/VolumeIT.java 
b/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
index c0e41c1..d014e0e 100644
--- a/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
@@ -488,6 +488,19 @@ public class VolumeIT extends ConfigurableMacIT {
 
 cluster.stop();
 
+// If we don't wait, we have no certainty that the processes will actually 
be
+// dead by the time we attempt the rename. If the processes haven't died, 
it's 
+// possible that an open file will recreate the old volume directories 
which
+// will cause this test to fail.
+// For reference, OpenJDK6 will send SIGTERM to each process in 
cluster.stop()
+try {
+  Thread.sleep(5000);
+} catch (InterruptedException e) {
+  Thread.currentThread().interrupt();
+  log.error(Test thread interrupted, e);
+  Assert.fail(Test thread interrupted);
+}
+
 File v1f = new File(v1.toUri());
 File v8f = new File(new File(v1.getParent().toUri()), v8);
 Assert.assertTrue(Failed to rename  + v1f +  to  + v8f, 
v1f.renameTo(v8f));



svn commit: r1579730 - in /accumulo/site/branches/redesign14: content/css/accumulo.css templates/nav.html templates/skeleton.html

2014-03-20 Thread bhavanki
Author: bhavanki
Date: Thu Mar 20 20:29:21 2014
New Revision: 1579730

URL: http://svn.apache.org/r1579730
Log:
Integrate Bootstrap, reworking nav menu and skeleton.

Added:
accumulo/site/branches/redesign14/templates/nav.html
Modified:
accumulo/site/branches/redesign14/content/css/accumulo.css
accumulo/site/branches/redesign14/templates/skeleton.html

Modified: accumulo/site/branches/redesign14/content/css/accumulo.css
URL: 
http://svn.apache.org/viewvc/accumulo/site/branches/redesign14/content/css/accumulo.css?rev=1579730r1=1579729r2=1579730view=diff
==
--- accumulo/site/branches/redesign14/content/css/accumulo.css (original)
+++ accumulo/site/branches/redesign14/content/css/accumulo.css Thu Mar 20 
20:29:21 2014
@@ -14,21 +14,6 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
-body {
-color: white;
-font-family: Verdana,Geneva,sans-serif;
-font-size: 10pt;
-margin: 0;
-}
-#banner {
-margin-top: 0;
-min-width: 850px;
-padding: 10px;
-}
-#logo {
-margin-left: 20px;
-text-align: left;
-}
 #bannertext {
 margin-top: 10px;
 text-align: left;
@@ -36,125 +21,23 @@ body {
 .clear {
 clear: both;
 }
-a {
-color: #107EC0;
-}
-a:visited {
-color: #107EC0;
-}
-a:hover {
-background-color: #E6EBED;
-color: #107EC0;
-}
-a img {
-border: medium none;
-}
-h1, h2, h3, h4, h5, h6 {
-border-bottom: 2px dashed #66;
-color: black;
-text-transform: uppercase;
-}
 #content {
-color: #33;
-margin: 0 150px 20px 220px;
 padding: 0 8px 40px;
 }
-#content h1 {
-font-size: 1.4em;
-padding-top: 15px;
-padding-bottom: 15px;
-}
-#content h2 {
-border-bottom: 1px dashed #66;
-font-size: 1.2em;
-margin-top: 2em;
-}
-#content h3 {
-border-bottom: medium none;
-font-size: 1.1em;
-margin-bottom: 0;
-}
-#content h4, h5, h6 {
-border-bottom: medium none;
-font-size: 1em;
-margin-bottom: 0;
-}
 #content img {
 vertical-align: middle;
 }
-.codehilite {
-background-color: #FF;
-border-radius: 10px 10px 10px 10px;
-padding: 0.01em 1em;
-}
-#navigation {
--moz-border-bottom-colors: none;
--moz-border-image: none;
--moz-border-left-colors: none;
--moz-border-right-colors: none;
--moz-border-top-colors: none;
-background: none repeat scroll 0 0 #F5F8FA;
-border-color: #C0C0C0 #C0C0C0 #C0C0C0 -moz-use-text-color;
-border-radius: 0 10px 10px 0;
-border-style: solid solid solid none;
-border-width: 1px 1px 1px medium;
-color: #33;
-float: left;
-font-size: 0.9em;
-margin: 0 0 20px;
-padding: 15px 15px 5px 25px;
-width: 170px;
-}
-#navigation img {
-display: block;
-margin-left: auto;
-margin-right: auto;
-}
-#navigation h1 {
-border-bottom: 2px dashed #66;
-color: #00;
-font-size: 1em;
-margin-bottom: 0;
-margin-top: 0.8em;
-padding: 0;
-}
-#navigation ul {
-list-style: none outside none;
-margin: 0;
-padding: 0;
-}
-#navigation li {
-border-bottom: 1px solid #CC;
-margin: 0.2em 0;
-padding: 0;
-}
-#navigation li a {
-margin: 0;
-text-decoration: none;
-}
-#navigation li a:hover {
-background: none repeat scroll 0 0 transparent;
-color: #193240;
-}
 #footer {
 border-top: 1px solid #CC;
 color: #66;
 font-size: 0.8em;
-margin: 20px 150px 20px 250px;
-padding: 0 8px;
+padding: 8px 8px;
 text-align: center;
 }
-.copyright {
-float: left;
-}
 #asf-logo {
 float: left;
 padding-top: 15px;
 }
-dd {
-}
-dl {
-}
 dt {
 display: inline;
 float: left;
@@ -170,4 +53,4 @@ dt {
 
 #release_notes_testing tbody tr th, #release_notes_testing tbody tr td {
 padding: 5px;
-}
\ No newline at end of file
+}

Added: accumulo/site/branches/redesign14/templates/nav.html
URL: 
http://svn.apache.org/viewvc/accumulo/site/branches/redesign14/templates/nav.html?rev=1579730view=auto
==
--- accumulo/site/branches/redesign14/templates/nav.html (added)
+++ accumulo/site/branches/redesign14/templates/nav.html Thu Mar 20 20:29:21 
2014
@@ -0,0 +1,90 @@
+nav class=navbar navbar-default navbar-static-top role=navigation
+div class=container-fluid
+  div class=navbar-header
+a class=navbar-brand href=index.htmlAccumulo/a
+  /div
+  ul class=nav navbar-nav
+li class=dropdown
+  a class=dropdown-toggle data-toggle=dropdown href=#
+Project span class=caret/span
+  /a
+ul class=dropdown-menu
+li class=activea href=/index.htmlHome/a/li
+lia href=/downloadsDownloads/a/li
+lia href=/notable_features.htmlFeatures/a/li
+lia href=/licenses/LICENSE-2.0License/a/li
+/ul
+/li
+
+li class=dropdown
+  a class=dropdown-toggle data-toggle=dropdown href=#
+

svn commit: r902586 - /websites/staging/accumulo/trunk/content/

2014-03-20 Thread buildbot
Author: buildbot
Date: Thu Mar 20 20:29:26 2014
New Revision: 902586

Log:
Staging update by buildbot for accumulo

Modified:
websites/staging/accumulo/trunk/content/   (props changed)

Propchange: websites/staging/accumulo/trunk/content/
--
--- cms:source-revision (original)
+++ cms:source-revision Thu Mar 20 20:29:26 2014
@@ -1 +1 @@
-1579722
+1579730




svn commit: r902587 - /websites/staging/accumulo/trunk/content/

2014-03-20 Thread buildbot
Author: buildbot
Date: Thu Mar 20 20:34:15 2014
New Revision: 902587

Log:
Staging update by buildbot for accumulo

Modified:
websites/staging/accumulo/trunk/content/   (props changed)

Propchange: websites/staging/accumulo/trunk/content/
--
--- cms:source-revision (original)
+++ cms:source-revision Thu Mar 20 20:34:15 2014
@@ -1 +1 @@
-1579730
+1579731




svn commit: r1579731 - in /accumulo/site/branches/redesign14/templates: nav.html skeleton.html

2014-03-20 Thread bhavanki
Author: bhavanki
Date: Thu Mar 20 20:34:10 2014
New Revision: 1579731

URL: http://svn.apache.org/r1579731
Log:
Fixed template links.

Modified:
accumulo/site/branches/redesign14/templates/nav.html
accumulo/site/branches/redesign14/templates/skeleton.html

Modified: accumulo/site/branches/redesign14/templates/nav.html
URL: 
http://svn.apache.org/viewvc/accumulo/site/branches/redesign14/templates/nav.html?rev=1579731r1=1579730r2=1579731view=diff
==
--- accumulo/site/branches/redesign14/templates/nav.html (original)
+++ accumulo/site/branches/redesign14/templates/nav.html Thu Mar 20 20:34:10 
2014
@@ -12,7 +12,7 @@
 li class=activea href=/index.htmlHome/a/li
 lia href=/downloadsDownloads/a/li
 lia href=/notable_features.htmlFeatures/a/li
-lia href=/licenses/LICENSE-2.0License/a/li
+lia href=http://www.apache.org/licenses/LICENSE-2.0;License/a/li
 /ul
 /li
 

Modified: accumulo/site/branches/redesign14/templates/skeleton.html
URL: 
http://svn.apache.org/viewvc/accumulo/site/branches/redesign14/templates/skeleton.html?rev=1579731r1=1579730r2=1579731view=diff
==
--- accumulo/site/branches/redesign14/templates/skeleton.html (original)
+++ accumulo/site/branches/redesign14/templates/skeleton.html Thu Mar 20 
20:34:10 2014
@@ -20,16 +20,16 @@
   meta charset=utf-8
   meta http-equiv=X-UA-Compatible content=IE=edge
   meta name=viewport content=width=device-width, initial-scale=1
-  link href=css/bootstrap.min.css rel=stylesheet
-  link href=css/bootstrap-theme.min.css rel=stylesheet
+  link href=/css/bootstrap.min.css rel=stylesheet
+  link href=/css/bootstrap-theme.min.css rel=stylesheet
   !-- WARNING: Respond.js doesn't work if you view the page via file:// --
   !--[if lt IE 9]
 script 
src=https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js;/script
 script 
src=https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js;/script
   ![endif]--
   script 
src=https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js;/script
-  script src=js/bootstrap.min.js/script
-  link href=css/accumulo.css rel=stylesheet type=text/css
+  script src=/js/bootstrap.min.js/script
+  link href=/css/accumulo.css rel=stylesheet type=text/css
   title{% block title %}{{ headers.title }}{% endblock %}/title
   
   script type=text/javascript
@@ -73,7 +73,7 @@
 
   div id=footer
 a alt=Apache Software Foundation href=http://www.apache.org;
-  img id=asf-logo alt=Apache Software Foundation 
src=images/feather-small.gif width=100
+  img id=asf-logo alt=Apache Software Foundation 
src=/images/feather-small.gif width=100
 /a
 div class=copyright
   p




git commit: ACCUMULO-2061 Add a utility method to pull a Path with the instance_id

2014-03-20 Thread elserj
Repository: accumulo
Updated Branches:
  refs/heads/ACCUMULO-2061 e796ffc7a - 05553e8fa


ACCUMULO-2061 Add a utility method to pull a Path with the instance_id

Consolidates a little bit of code in one place.


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

Branch: refs/heads/ACCUMULO-2061
Commit: 05553e8fa5e0ab047cd4c8e1d442c1efbaa4bf8b
Parents: e796ffc
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 17:39:13 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 17:40:14 2014 -0400

--
 .../main/java/org/apache/accumulo/server/Accumulo.java|  7 +++
 .../java/org/apache/accumulo/server/ServerConstants.java  |  2 +-
 .../apache/accumulo/server/client/HdfsZooInstance.java| 10 +-
 .../org/apache/accumulo/server/conf/ZooConfiguration.java | 10 --
 4 files changed, 17 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/05553e8f/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
--
diff --git a/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java 
b/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
index f7f2298..925c0d0 100644
--- a/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
+++ b/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
@@ -32,6 +32,7 @@ import org.apache.accumulo.core.util.AddressUtil;
 import org.apache.accumulo.core.util.UtilWaitThread;
 import org.apache.accumulo.core.util.Version;
 import org.apache.accumulo.core.volume.Volume;
+import org.apache.accumulo.core.zookeeper.ZooUtil;
 import org.apache.accumulo.server.client.HdfsZooInstance;
 import org.apache.accumulo.server.conf.ServerConfiguration;
 import org.apache.accumulo.server.fs.VolumeManager;
@@ -91,6 +92,12 @@ public class Accumulo {
 return getAccumuloPersistentVersion(v.getFileSystem(), path);
   }
 
+  public static synchronized Path getAccumuloInstanceIdPath(VolumeManager fs) {
+// It doesn't matter which Volume is used as they should all have the 
instance ID stored
+Volume v = fs.getVolumes().iterator().next();
+return ServerConstants.getInstanceIdLocation(v);
+  }
+
   public static void enableTracing(String address, String application) {
 try {
   DistributedTrace.enable(HdfsZooInstance.getInstance(), 
ZooReaderWriter.getInstance(), application, address);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/05553e8f/server/base/src/main/java/org/apache/accumulo/server/ServerConstants.java
--
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/ServerConstants.java 
b/server/base/src/main/java/org/apache/accumulo/server/ServerConstants.java
index 7dd0a08..b577abb 100644
--- a/server/base/src/main/java/org/apache/accumulo/server/ServerConstants.java
+++ b/server/base/src/main/java/org/apache/accumulo/server/ServerConstants.java
@@ -76,7 +76,7 @@ public class ServerConstants {
   String currentIid;
   Integer currentVersion;
   try {
-currentIid = ZooUtil.getInstanceIDFromHdfs(new Path(baseDir, 
INSTANCE_ID_DIR), ServerConfiguration.getSiteConfiguration());
+currentIid = ZooUtil.getInstanceIDFromHdfs(path, 
ServerConfiguration.getSiteConfiguration());
 Path vpath = new Path(baseDir, VERSION_DIR);
 currentVersion = 
Accumulo.getAccumuloPersistentVersion(vpath.getFileSystem(CachedConfiguration.getInstance()),
 vpath);
   } catch (Exception e) {

http://git-wip-us.apache.org/repos/asf/accumulo/blob/05553e8f/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
--
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
 
b/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
index ee928f3..620188c 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
@@ -39,14 +39,14 @@ import org.apache.accumulo.core.util.ByteBufferUtil;
 import org.apache.accumulo.core.util.OpTimer;
 import org.apache.accumulo.core.util.StringUtil;
 import org.apache.accumulo.core.util.TextUtil;
-import org.apache.accumulo.core.volume.Volume;
 import org.apache.accumulo.core.zookeeper.ZooUtil;
 import org.apache.accumulo.fate.zookeeper.ZooCache;
-import org.apache.accumulo.server.ServerConstants;
+import 

[01/10] git commit: ACCUMULO-2512 Wait for each MAC process to exit before returning from MAC.stop()

2014-03-20 Thread elserj
Repository: accumulo
Updated Branches:
  refs/heads/1.4.5-SNAPSHOT bbd6aeb33 - 0753a754b
  refs/heads/1.5.2-SNAPSHOT 4b7a011ca - 63d5e55a0
  refs/heads/1.6.0-SNAPSHOT aefa52e2a - 44b13c12e
  refs/heads/master b644edade - 394fe061f


ACCUMULO-2512 Wait for each MAC process to exit before returning from MAC.stop()


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

Branch: refs/heads/1.4.5-SNAPSHOT
Commit: 0753a754b0a1751ab7f2bb4ddd922aa9dd492252
Parents: bbd6aeb
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 16:35:04 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 16:35:04 2014 -0400

--
 .../accumulo/minicluster/MiniAccumuloCluster.java  | 17 +
 1 file changed, 13 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/0753a754/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
--
diff --git 
a/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
 
b/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
index cbed375..848e14f 100644
--- 
a/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
+++ 
b/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
@@ -362,22 +362,31 @@ public class MiniAccumuloCluster {
*/
   
   public void stop() throws IOException, InterruptedException {
-if (zooKeeperProcess != null)
+if (zooKeeperProcess != null) {
   zooKeeperProcess.destroy();
-if (loggerProcess != null)
+  zooKeeperProcess.waitFor();
+}
+if (loggerProcess != null) {
   loggerProcess.destroy();
-if (masterProcess != null)
+  loggerProcess.waitFor();
+}
+if (masterProcess != null) {
   masterProcess.destroy();
+  masterProcess.waitFor();
+}
 if (tabletServerProcesses != null) {
   for (Process tserver : tabletServerProcesses) {
 tserver.destroy();
+tserver.waitFor();
   }
 }
 
 for (LogWriter lw : logWriters)
   lw.flush();
 
-if (gcProcess != null)
+if (gcProcess != null) {
   gcProcess.destroy();
+  gcProcess.waitFor();
+}
   }
 }



[02/10] git commit: ACCUMULO-2512 Wait for each MAC process to exit before returning from MAC.stop()

2014-03-20 Thread elserj
ACCUMULO-2512 Wait for each MAC process to exit before returning from MAC.stop()


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

Branch: refs/heads/1.5.2-SNAPSHOT
Commit: 0753a754b0a1751ab7f2bb4ddd922aa9dd492252
Parents: bbd6aeb
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 16:35:04 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 16:35:04 2014 -0400

--
 .../accumulo/minicluster/MiniAccumuloCluster.java  | 17 +
 1 file changed, 13 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/0753a754/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
--
diff --git 
a/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
 
b/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
index cbed375..848e14f 100644
--- 
a/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
+++ 
b/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
@@ -362,22 +362,31 @@ public class MiniAccumuloCluster {
*/
   
   public void stop() throws IOException, InterruptedException {
-if (zooKeeperProcess != null)
+if (zooKeeperProcess != null) {
   zooKeeperProcess.destroy();
-if (loggerProcess != null)
+  zooKeeperProcess.waitFor();
+}
+if (loggerProcess != null) {
   loggerProcess.destroy();
-if (masterProcess != null)
+  loggerProcess.waitFor();
+}
+if (masterProcess != null) {
   masterProcess.destroy();
+  masterProcess.waitFor();
+}
 if (tabletServerProcesses != null) {
   for (Process tserver : tabletServerProcesses) {
 tserver.destroy();
+tserver.waitFor();
   }
 }
 
 for (LogWriter lw : logWriters)
   lw.flush();
 
-if (gcProcess != null)
+if (gcProcess != null) {
   gcProcess.destroy();
+  gcProcess.waitFor();
+}
   }
 }



[05/10] git commit: Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

Conflicts:

minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 63d5e55a0b03910246b9b21efecfde5ac5e709f0
Parents: 4b7a011 0753a75
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 16:50:59 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 16:50:59 2014 -0400

--
 .../accumulo/minicluster/MiniAccumuloCluster.java  | 13 ++---
 1 file changed, 10 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/63d5e55a/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
--
diff --cc 
minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
index 4018a33,000..a366c16
mode 100644,00..100644
--- 
a/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
+++ 
b/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
@@@ -1,385 -1,0 +1,392 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.minicluster;
 +
 +import java.io.BufferedReader;
 +import java.io.BufferedWriter;
 +import java.io.File;
 +import java.io.FileOutputStream;
 +import java.io.IOException;
 +import java.io.InputStream;
 +import java.io.InputStreamReader;
 +import java.io.OutputStreamWriter;
 +import java.io.Writer;
 +import java.util.ArrayList;
 +import java.util.Arrays;
 +import java.util.HashMap;
 +import java.util.List;
 +import java.util.Map;
 +import java.util.Map.Entry;
 +import java.util.Properties;
 +
 +import org.apache.accumulo.core.Constants;
 +import org.apache.accumulo.core.conf.Property;
 +import org.apache.accumulo.core.util.UtilWaitThread;
 +import org.apache.accumulo.server.gc.SimpleGarbageCollector;
 +import org.apache.accumulo.server.master.Master;
 +import org.apache.accumulo.server.tabletserver.TabletServer;
 +import org.apache.accumulo.server.util.Initialize;
 +import org.apache.accumulo.server.util.PortUtils;
 +import org.apache.accumulo.server.util.time.SimpleTimer;
 +import org.apache.accumulo.start.Main;
 +import org.apache.zookeeper.server.ZooKeeperServerMain;
 +
 +/**
 + * A utility class that will create Zookeeper and Accumulo processes that 
write all of their data to a single local directory. This class makes it easy 
to test
 + * code against a real Accumulo instance. Its much more accurate for testing 
than MockAccumulo, but much slower than MockAccumulo.
 + * 
 + * @since 1.5.0
 + */
 +public class MiniAccumuloCluster {
 +  
 +  private static final String INSTANCE_SECRET = DONTTELL;
 +  private static final String INSTANCE_NAME = miniInstance;
 +  
 +  private static class LogWriter extends Thread {
 +private BufferedReader in;
 +private BufferedWriter out;
 +
 +/**
 + * @throws IOException
 + */
 +public LogWriter(InputStream stream, File logFile) throws IOException {
 +  this.setDaemon(true);
 +  this.in = new BufferedReader(new InputStreamReader(stream, 
Constants.UTF8));
 +  out = new BufferedWriter(new OutputStreamWriter(new 
FileOutputStream(logFile), Constants.UTF8));
 +  
 +  SimpleTimer.getInstance().schedule(new Runnable() {
 +@Override
 +public void run() {
 +  try {
 +flush();
 +  } catch (IOException e) {
 +e.printStackTrace();
 +  }
 +}
 +  }, 1000, 1000);
 +}
 +
 +public synchronized void flush() throws IOException {
 +  if (out != null)
 +out.flush();
 +}
 +
 +@Override
 +public void run() {
 +  String line;
 +  
 +  try {
 +while ((line = 

[04/10] git commit: ACCUMULO-2512 Wait for each MAC process to exit before returning from MAC.stop()

2014-03-20 Thread elserj
ACCUMULO-2512 Wait for each MAC process to exit before returning from MAC.stop()


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

Branch: refs/heads/master
Commit: 0753a754b0a1751ab7f2bb4ddd922aa9dd492252
Parents: bbd6aeb
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 16:35:04 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 16:35:04 2014 -0400

--
 .../accumulo/minicluster/MiniAccumuloCluster.java  | 17 +
 1 file changed, 13 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/0753a754/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
--
diff --git 
a/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
 
b/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
index cbed375..848e14f 100644
--- 
a/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
+++ 
b/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
@@ -362,22 +362,31 @@ public class MiniAccumuloCluster {
*/
   
   public void stop() throws IOException, InterruptedException {
-if (zooKeeperProcess != null)
+if (zooKeeperProcess != null) {
   zooKeeperProcess.destroy();
-if (loggerProcess != null)
+  zooKeeperProcess.waitFor();
+}
+if (loggerProcess != null) {
   loggerProcess.destroy();
-if (masterProcess != null)
+  loggerProcess.waitFor();
+}
+if (masterProcess != null) {
   masterProcess.destroy();
+  masterProcess.waitFor();
+}
 if (tabletServerProcesses != null) {
   for (Process tserver : tabletServerProcesses) {
 tserver.destroy();
+tserver.waitFor();
   }
 }
 
 for (LogWriter lw : logWriters)
   lw.flush();
 
-if (gcProcess != null)
+if (gcProcess != null) {
   gcProcess.destroy();
+  gcProcess.waitFor();
+}
   }
 }



[03/10] git commit: ACCUMULO-2512 Wait for each MAC process to exit before returning from MAC.stop()

2014-03-20 Thread elserj
ACCUMULO-2512 Wait for each MAC process to exit before returning from MAC.stop()


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 0753a754b0a1751ab7f2bb4ddd922aa9dd492252
Parents: bbd6aeb
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 16:35:04 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 16:35:04 2014 -0400

--
 .../accumulo/minicluster/MiniAccumuloCluster.java  | 17 +
 1 file changed, 13 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/0753a754/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
--
diff --git 
a/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
 
b/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
index cbed375..848e14f 100644
--- 
a/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
+++ 
b/src/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
@@ -362,22 +362,31 @@ public class MiniAccumuloCluster {
*/
   
   public void stop() throws IOException, InterruptedException {
-if (zooKeeperProcess != null)
+if (zooKeeperProcess != null) {
   zooKeeperProcess.destroy();
-if (loggerProcess != null)
+  zooKeeperProcess.waitFor();
+}
+if (loggerProcess != null) {
   loggerProcess.destroy();
-if (masterProcess != null)
+  loggerProcess.waitFor();
+}
+if (masterProcess != null) {
   masterProcess.destroy();
+  masterProcess.waitFor();
+}
 if (tabletServerProcesses != null) {
   for (Process tserver : tabletServerProcesses) {
 tserver.destroy();
+tserver.waitFor();
   }
 }
 
 for (LogWriter lw : logWriters)
   lw.flush();
 
-if (gcProcess != null)
+if (gcProcess != null) {
   gcProcess.destroy();
+  gcProcess.waitFor();
+}
   }
 }



[10/10] git commit: Merge branch '1.6.0-SNAPSHOT'

2014-03-20 Thread elserj
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/394fe061
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/394fe061
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/394fe061

Branch: refs/heads/master
Commit: 394fe061fb896e740b0932a9736c0fcc16caee95
Parents: b644eda 44b13c1
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 17:48:57 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 17:48:57 2014 -0400

--
 .../minicluster/impl/MiniAccumuloClusterImpl.java   | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/394fe061/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
--



[07/10] git commit: Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

Conflicts:

minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java


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

Branch: refs/heads/master
Commit: 63d5e55a0b03910246b9b21efecfde5ac5e709f0
Parents: 4b7a011 0753a75
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 16:50:59 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 16:50:59 2014 -0400

--
 .../accumulo/minicluster/MiniAccumuloCluster.java  | 13 ++---
 1 file changed, 10 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/63d5e55a/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
--
diff --cc 
minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
index 4018a33,000..a366c16
mode 100644,00..100644
--- 
a/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
+++ 
b/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
@@@ -1,385 -1,0 +1,392 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.minicluster;
 +
 +import java.io.BufferedReader;
 +import java.io.BufferedWriter;
 +import java.io.File;
 +import java.io.FileOutputStream;
 +import java.io.IOException;
 +import java.io.InputStream;
 +import java.io.InputStreamReader;
 +import java.io.OutputStreamWriter;
 +import java.io.Writer;
 +import java.util.ArrayList;
 +import java.util.Arrays;
 +import java.util.HashMap;
 +import java.util.List;
 +import java.util.Map;
 +import java.util.Map.Entry;
 +import java.util.Properties;
 +
 +import org.apache.accumulo.core.Constants;
 +import org.apache.accumulo.core.conf.Property;
 +import org.apache.accumulo.core.util.UtilWaitThread;
 +import org.apache.accumulo.server.gc.SimpleGarbageCollector;
 +import org.apache.accumulo.server.master.Master;
 +import org.apache.accumulo.server.tabletserver.TabletServer;
 +import org.apache.accumulo.server.util.Initialize;
 +import org.apache.accumulo.server.util.PortUtils;
 +import org.apache.accumulo.server.util.time.SimpleTimer;
 +import org.apache.accumulo.start.Main;
 +import org.apache.zookeeper.server.ZooKeeperServerMain;
 +
 +/**
 + * A utility class that will create Zookeeper and Accumulo processes that 
write all of their data to a single local directory. This class makes it easy 
to test
 + * code against a real Accumulo instance. Its much more accurate for testing 
than MockAccumulo, but much slower than MockAccumulo.
 + * 
 + * @since 1.5.0
 + */
 +public class MiniAccumuloCluster {
 +  
 +  private static final String INSTANCE_SECRET = DONTTELL;
 +  private static final String INSTANCE_NAME = miniInstance;
 +  
 +  private static class LogWriter extends Thread {
 +private BufferedReader in;
 +private BufferedWriter out;
 +
 +/**
 + * @throws IOException
 + */
 +public LogWriter(InputStream stream, File logFile) throws IOException {
 +  this.setDaemon(true);
 +  this.in = new BufferedReader(new InputStreamReader(stream, 
Constants.UTF8));
 +  out = new BufferedWriter(new OutputStreamWriter(new 
FileOutputStream(logFile), Constants.UTF8));
 +  
 +  SimpleTimer.getInstance().schedule(new Runnable() {
 +@Override
 +public void run() {
 +  try {
 +flush();
 +  } catch (IOException e) {
 +e.printStackTrace();
 +  }
 +}
 +  }, 1000, 1000);
 +}
 +
 +public synchronized void flush() throws IOException {
 +  if (out != null)
 +out.flush();
 +}
 +
 +@Override
 +public void run() {
 +  String line;
 +  
 +  try {
 +while ((line = 

[09/10] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

Conflicts:

minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java


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

Branch: refs/heads/master
Commit: 44b13c12eb9da6165affe038f825a6b17fa2
Parents: aefa52e 63d5e55
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 17:48:51 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 17:48:51 2014 -0400

--
 .../minicluster/impl/MiniAccumuloClusterImpl.java   | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/44b13c12/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
--
diff --cc 
minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
index 8a9736d,000..009988e
mode 100644,00..100644
--- 
a/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
+++ 
b/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
@@@ -1,649 -1,0 +1,659 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.minicluster.impl;
 +
 +import java.io.BufferedReader;
 +import java.io.BufferedWriter;
 +import java.io.File;
 +import java.io.FileFilter;
 +import java.io.FileWriter;
 +import java.io.IOException;
 +import java.io.InputStream;
 +import java.io.InputStreamReader;
 +import java.net.InetSocketAddress;
 +import java.net.Socket;
 +import java.net.URI;
 +import java.net.URISyntaxException;
 +import java.net.URL;
 +import java.net.URLClassLoader;
 +import java.util.ArrayList;
 +import java.util.Arrays;
 +import java.util.Collection;
 +import java.util.Collections;
 +import java.util.HashMap;
 +import java.util.HashSet;
 +import java.util.List;
 +import java.util.Map;
 +import java.util.Map.Entry;
 +import java.util.Properties;
 +import java.util.Set;
 +
 +import org.apache.accumulo.core.client.AccumuloException;
 +import org.apache.accumulo.core.client.AccumuloSecurityException;
 +import org.apache.accumulo.core.client.ClientConfiguration;
 +import org.apache.accumulo.core.client.Connector;
 +import org.apache.accumulo.core.client.Instance;
 +import org.apache.accumulo.core.client.ZooKeeperInstance;
 +import org.apache.accumulo.core.client.security.tokens.PasswordToken;
 +import org.apache.accumulo.core.conf.Property;
 +import org.apache.accumulo.core.master.thrift.MasterGoalState;
 +import org.apache.accumulo.core.util.Daemon;
 +import org.apache.accumulo.core.util.Pair;
 +import org.apache.accumulo.core.util.StringUtil;
 +import org.apache.accumulo.core.util.UtilWaitThread;
 +import org.apache.accumulo.gc.SimpleGarbageCollector;
 +import org.apache.accumulo.master.Master;
 +import org.apache.accumulo.master.state.SetGoalState;
 +import org.apache.accumulo.minicluster.ServerType;
 +import org.apache.accumulo.server.init.Initialize;
 +import org.apache.accumulo.server.util.PortUtils;
 +import org.apache.accumulo.server.util.time.SimpleTimer;
 +import org.apache.accumulo.start.Main;
 +import org.apache.accumulo.start.classloader.vfs.MiniDFSUtil;
 +import org.apache.accumulo.tserver.TabletServer;
 +import org.apache.commons.configuration.MapConfiguration;
 +import org.apache.commons.vfs2.FileObject;
 +import org.apache.commons.vfs2.impl.VFSClassLoader;
 +import org.apache.hadoop.conf.Configuration;
 +import org.apache.hadoop.fs.FileSystem;
 +import org.apache.hadoop.hdfs.DFSConfigKeys;
 +import org.apache.hadoop.hdfs.MiniDFSCluster;
 +import org.apache.zookeeper.server.ZooKeeperServerMain;
 +
 +import com.google.common.base.Predicate;
 +import com.google.common.collect.Maps;
 +
 +/**
 + * A utility class that will create Zookeeper 

[06/10] git commit: Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.4.5-SNAPSHOT' into 1.5.2-SNAPSHOT

Conflicts:

minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java


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

Branch: refs/heads/1.5.2-SNAPSHOT
Commit: 63d5e55a0b03910246b9b21efecfde5ac5e709f0
Parents: 4b7a011 0753a75
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 16:50:59 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 16:50:59 2014 -0400

--
 .../accumulo/minicluster/MiniAccumuloCluster.java  | 13 ++---
 1 file changed, 10 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/63d5e55a/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
--
diff --cc 
minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
index 4018a33,000..a366c16
mode 100644,00..100644
--- 
a/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
+++ 
b/minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java
@@@ -1,385 -1,0 +1,392 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.minicluster;
 +
 +import java.io.BufferedReader;
 +import java.io.BufferedWriter;
 +import java.io.File;
 +import java.io.FileOutputStream;
 +import java.io.IOException;
 +import java.io.InputStream;
 +import java.io.InputStreamReader;
 +import java.io.OutputStreamWriter;
 +import java.io.Writer;
 +import java.util.ArrayList;
 +import java.util.Arrays;
 +import java.util.HashMap;
 +import java.util.List;
 +import java.util.Map;
 +import java.util.Map.Entry;
 +import java.util.Properties;
 +
 +import org.apache.accumulo.core.Constants;
 +import org.apache.accumulo.core.conf.Property;
 +import org.apache.accumulo.core.util.UtilWaitThread;
 +import org.apache.accumulo.server.gc.SimpleGarbageCollector;
 +import org.apache.accumulo.server.master.Master;
 +import org.apache.accumulo.server.tabletserver.TabletServer;
 +import org.apache.accumulo.server.util.Initialize;
 +import org.apache.accumulo.server.util.PortUtils;
 +import org.apache.accumulo.server.util.time.SimpleTimer;
 +import org.apache.accumulo.start.Main;
 +import org.apache.zookeeper.server.ZooKeeperServerMain;
 +
 +/**
 + * A utility class that will create Zookeeper and Accumulo processes that 
write all of their data to a single local directory. This class makes it easy 
to test
 + * code against a real Accumulo instance. Its much more accurate for testing 
than MockAccumulo, but much slower than MockAccumulo.
 + * 
 + * @since 1.5.0
 + */
 +public class MiniAccumuloCluster {
 +  
 +  private static final String INSTANCE_SECRET = DONTTELL;
 +  private static final String INSTANCE_NAME = miniInstance;
 +  
 +  private static class LogWriter extends Thread {
 +private BufferedReader in;
 +private BufferedWriter out;
 +
 +/**
 + * @throws IOException
 + */
 +public LogWriter(InputStream stream, File logFile) throws IOException {
 +  this.setDaemon(true);
 +  this.in = new BufferedReader(new InputStreamReader(stream, 
Constants.UTF8));
 +  out = new BufferedWriter(new OutputStreamWriter(new 
FileOutputStream(logFile), Constants.UTF8));
 +  
 +  SimpleTimer.getInstance().schedule(new Runnable() {
 +@Override
 +public void run() {
 +  try {
 +flush();
 +  } catch (IOException e) {
 +e.printStackTrace();
 +  }
 +}
 +  }, 1000, 1000);
 +}
 +
 +public synchronized void flush() throws IOException {
 +  if (out != null)
 +out.flush();
 +}
 +
 +@Override
 +public void run() {
 +  String line;
 +  
 +  try {
 +while ((line = 

[08/10] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

Conflicts:

minicluster/src/main/java/org/apache/accumulo/minicluster/MiniAccumuloCluster.java


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 44b13c12eb9da6165affe038f825a6b17fa2
Parents: aefa52e 63d5e55
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 17:48:51 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 17:48:51 2014 -0400

--
 .../minicluster/impl/MiniAccumuloClusterImpl.java   | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/44b13c12/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
--
diff --cc 
minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
index 8a9736d,000..009988e
mode 100644,00..100644
--- 
a/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
+++ 
b/minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
@@@ -1,649 -1,0 +1,659 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.minicluster.impl;
 +
 +import java.io.BufferedReader;
 +import java.io.BufferedWriter;
 +import java.io.File;
 +import java.io.FileFilter;
 +import java.io.FileWriter;
 +import java.io.IOException;
 +import java.io.InputStream;
 +import java.io.InputStreamReader;
 +import java.net.InetSocketAddress;
 +import java.net.Socket;
 +import java.net.URI;
 +import java.net.URISyntaxException;
 +import java.net.URL;
 +import java.net.URLClassLoader;
 +import java.util.ArrayList;
 +import java.util.Arrays;
 +import java.util.Collection;
 +import java.util.Collections;
 +import java.util.HashMap;
 +import java.util.HashSet;
 +import java.util.List;
 +import java.util.Map;
 +import java.util.Map.Entry;
 +import java.util.Properties;
 +import java.util.Set;
 +
 +import org.apache.accumulo.core.client.AccumuloException;
 +import org.apache.accumulo.core.client.AccumuloSecurityException;
 +import org.apache.accumulo.core.client.ClientConfiguration;
 +import org.apache.accumulo.core.client.Connector;
 +import org.apache.accumulo.core.client.Instance;
 +import org.apache.accumulo.core.client.ZooKeeperInstance;
 +import org.apache.accumulo.core.client.security.tokens.PasswordToken;
 +import org.apache.accumulo.core.conf.Property;
 +import org.apache.accumulo.core.master.thrift.MasterGoalState;
 +import org.apache.accumulo.core.util.Daemon;
 +import org.apache.accumulo.core.util.Pair;
 +import org.apache.accumulo.core.util.StringUtil;
 +import org.apache.accumulo.core.util.UtilWaitThread;
 +import org.apache.accumulo.gc.SimpleGarbageCollector;
 +import org.apache.accumulo.master.Master;
 +import org.apache.accumulo.master.state.SetGoalState;
 +import org.apache.accumulo.minicluster.ServerType;
 +import org.apache.accumulo.server.init.Initialize;
 +import org.apache.accumulo.server.util.PortUtils;
 +import org.apache.accumulo.server.util.time.SimpleTimer;
 +import org.apache.accumulo.start.Main;
 +import org.apache.accumulo.start.classloader.vfs.MiniDFSUtil;
 +import org.apache.accumulo.tserver.TabletServer;
 +import org.apache.commons.configuration.MapConfiguration;
 +import org.apache.commons.vfs2.FileObject;
 +import org.apache.commons.vfs2.impl.VFSClassLoader;
 +import org.apache.hadoop.conf.Configuration;
 +import org.apache.hadoop.fs.FileSystem;
 +import org.apache.hadoop.hdfs.DFSConfigKeys;
 +import org.apache.hadoop.hdfs.MiniDFSCluster;
 +import org.apache.zookeeper.server.ZooKeeperServerMain;
 +
 +import com.google.common.base.Predicate;
 +import com.google.common.collect.Maps;
 +
 +/**
 + * A utility class that will create 

[2/6] git commit: ACCUMULO-2489 Fixes race condition in TableConfiguration where NPE may occur.

2014-03-20 Thread elserj
ACCUMULO-2489 Fixes race condition in TableConfiguration where NPE may occur.

Make invalidateCache much more efficient by calling clear on ZooCache
instead of creating a new one.


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 1d608a81f488c2bf371fc81f83e0022bd2943a36
Parents: 63d5e55
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 18:08:55 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:08:55 2014 -0400

--
 .../server/conf/ServerConfiguration.java|   1 +
 .../server/conf/TableConfiguration.java |  80 ++
 .../test/TableConfigurationUpdateTest.java  | 152 +++
 3 files changed, 200 insertions(+), 33 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/1d608a81/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
--
diff --git 
a/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java 
b/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
index b2acd1a..8653274 100644
--- 
a/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
+++ 
b/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
@@ -27,6 +27,7 @@ import org.apache.accumulo.core.conf.ConfigSanityCheck;
 import org.apache.accumulo.core.conf.DefaultConfiguration;
 import org.apache.accumulo.core.conf.SiteConfiguration;
 import org.apache.accumulo.core.data.KeyExtent;
+import org.apache.accumulo.server.client.HdfsZooInstance;
 
 public class ServerConfiguration {
   

http://git-wip-us.apache.org/repos/asf/accumulo/blob/1d608a81/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
--
diff --git 
a/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java 
b/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
index 59ff1f7..7a3d6e4 100644
--- 
a/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
+++ 
b/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
@@ -37,37 +37,46 @@ import org.apache.log4j.Logger;
 
 public class TableConfiguration extends AccumuloConfiguration {
   private static final Logger log = Logger.getLogger(TableConfiguration.class);
-  
+
   // Need volatile keyword to ensure double-checked locking works as intended
   private static volatile ZooCache tablePropCache = null;
+  private static final Object initLock = new Object();
+
   private final String instanceId;
+  private final Instance instance;
   private final AccumuloConfiguration parent;
-  
+
   private String table = null;
   private SetConfigurationObserver observers;
-  
+
   public TableConfiguration(String instanceId, String table, 
AccumuloConfiguration parent) {
+this(instanceId, HdfsZooInstance.getInstance(), table, parent);
+  }
+
+  public TableConfiguration(String instanceId, Instance instance, String 
table, AccumuloConfiguration parent) {
 this.instanceId = instanceId;
+this.instance = instance;
 this.table = table;
 this.parent = parent;
-
+
 this.observers = Collections.synchronizedSet(new 
HashSetConfigurationObserver());
   }
-  
-  /**
-   * @deprecated not for client use
-   */
-  @Deprecated
-  private static ZooCache getTablePropCache() {
-Instance inst = HdfsZooInstance.getInstance();
-if (tablePropCache == null)
-  synchronized (TableConfiguration.class) {
-if (tablePropCache == null)
-  tablePropCache = new ZooCache(inst.getZooKeepers(), 
inst.getZooKeepersSessionTimeOut(), new TableConfWatcher(inst));
+
+  private void initializeZooCache() {
+synchronized (initLock) {
+  if (null == tablePropCache) {
+tablePropCache = new ZooCache(instance.getZooKeepers(), 
instance.getZooKeepersSessionTimeOut(), new TableConfWatcher(instance));
   }
+}
+  }
+
+  private ZooCache getTablePropCache() {
+if (null == tablePropCache) {
+  initializeZooCache();
+}
 return tablePropCache;
   }
-  
+
   public void addObserver(ConfigurationObserver co) {
 if (table == null) {
   String err = Attempt to add observer for non-table configuration;
@@ -77,7 +86,7 @@ public class TableConfiguration extends AccumuloConfiguration 
{
 iterator();
 observers.add(co);
   }
-  
+
   public void removeObserver(ConfigurationObserver configObserver) {
 if (table == null) {
   String err = Attempt to remove 

[4/6] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

Conflicts:

server/base/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java


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

Branch: refs/heads/master
Commit: ef5dc4a1f6d67f643f80dd821280140fd20ee947
Parents: 44b13c1 1d608a8
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 18:43:55 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:43:55 2014 -0400

--
 .../server/conf/NamespaceConfiguration.java |  10 ++
 .../server/conf/TableConfiguration.java |  39 +++--
 .../test/TableConfigurationUpdateIT.java| 154 +++
 3 files changed, 193 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/ef5dc4a1/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
--
diff --cc 
server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
index c0ac0b8,000..d08d45f
mode 100644,00..100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
@@@ -1,172 -1,0 +1,182 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.server.conf;
 +
 +import java.util.Collection;
 +import java.util.Collections;
 +import java.util.HashSet;
 +import java.util.List;
 +import java.util.Map;
 +import java.util.Set;
 +
 +import org.apache.accumulo.core.Constants;
 +import org.apache.accumulo.core.client.Instance;
 +import org.apache.accumulo.core.client.impl.Namespaces;
 +import org.apache.accumulo.core.conf.AccumuloConfiguration;
 +import org.apache.accumulo.core.conf.ConfigurationObserver;
 +import org.apache.accumulo.core.conf.Property;
 +import org.apache.accumulo.core.zookeeper.ZooUtil;
 +import org.apache.accumulo.fate.zookeeper.ZooCache;
 +import org.apache.accumulo.server.client.HdfsZooInstance;
 +import org.apache.log4j.Logger;
 +
 +public class NamespaceConfiguration extends AccumuloConfiguration {
 +  private static final Logger log = 
Logger.getLogger(NamespaceConfiguration.class);
 +
 +  private final AccumuloConfiguration parent;
 +  private static ZooCache propCache = null;
 +  protected String namespaceId = null;
 +  protected Instance inst = null;
 +  private SetConfigurationObserver observers;
 +
 +  public NamespaceConfiguration(String namespaceId, AccumuloConfiguration 
parent) {
 +inst = HdfsZooInstance.getInstance();
 +this.parent = parent;
 +this.namespaceId = namespaceId;
 +this.observers = Collections.synchronizedSet(new 
HashSetConfigurationObserver());
 +  }
 +
 +  @Override
 +  public String get(Property property) {
 +String key = property.getKey();
 +String value = get(getPropCache(), key);
 +
 +if (value == null || !property.getType().isValidFormat(value)) {
 +  if (value != null)
 +log.error(Using default value for  + key +  due to improperly 
formatted  + property.getType() + :  + value);
 +  if (!(namespaceId.equals(Namespaces.ACCUMULO_NAMESPACE_ID)  
isIteratorOrConstraint(property.getKey( {
 +// ignore iterators from parent if system namespace
 +value = parent.get(property);
 +  }
 +}
 +return value;
 +  }
 +
 +  private String get(ZooCache zc, String key) {
 +String zPath = ZooUtil.getRoot(inst.getInstanceID()) + 
Constants.ZNAMESPACES + / + getNamespaceId() + Constants.ZNAMESPACE_CONF + 
/ + key;
 +byte[] v = zc.get(zPath);
 +String value = null;
 +if (v != null)
 +  value = new String(v, Constants.UTF8);
 +return value;
 +  }
 +
 +  private synchronized static ZooCache getPropCache() {
 +Instance inst = 

[6/6] git commit: Merge branch '1.6.0-SNAPSHOT'

2014-03-20 Thread elserj
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/866422d2
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/866422d2
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/866422d2

Branch: refs/heads/master
Commit: 866422d277ce80f29119af80ea65b23cff08fc3a
Parents: 394fe06 ef5dc4a
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 18:44:06 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:44:06 2014 -0400

--
 .../server/conf/NamespaceConfiguration.java |  10 ++
 .../server/conf/TableConfiguration.java |  39 +++--
 .../test/TableConfigurationUpdateIT.java| 154 +++
 3 files changed, 193 insertions(+), 10 deletions(-)
--




[5/6] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

2014-03-20 Thread elserj
Merge branch '1.5.2-SNAPSHOT' into 1.6.0-SNAPSHOT

Conflicts:

server/base/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: ef5dc4a1f6d67f643f80dd821280140fd20ee947
Parents: 44b13c1 1d608a8
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 18:43:55 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:43:55 2014 -0400

--
 .../server/conf/NamespaceConfiguration.java |  10 ++
 .../server/conf/TableConfiguration.java |  39 +++--
 .../test/TableConfigurationUpdateIT.java| 154 +++
 3 files changed, 193 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/ef5dc4a1/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
--
diff --cc 
server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
index c0ac0b8,000..d08d45f
mode 100644,00..100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
@@@ -1,172 -1,0 +1,182 @@@
 +/*
 + * Licensed to the Apache Software Foundation (ASF) under one or more
 + * contributor license agreements.  See the NOTICE file distributed with
 + * this work for additional information regarding copyright ownership.
 + * The ASF licenses this file to You under the Apache License, Version 2.0
 + * (the License); you may not use this file except in compliance with
 + * the License.  You may obtain a copy of the License at
 + *
 + * http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing, software
 + * distributed under the License is distributed on an AS IS BASIS,
 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 + * See the License for the specific language governing permissions and
 + * limitations under the License.
 + */
 +package org.apache.accumulo.server.conf;
 +
 +import java.util.Collection;
 +import java.util.Collections;
 +import java.util.HashSet;
 +import java.util.List;
 +import java.util.Map;
 +import java.util.Set;
 +
 +import org.apache.accumulo.core.Constants;
 +import org.apache.accumulo.core.client.Instance;
 +import org.apache.accumulo.core.client.impl.Namespaces;
 +import org.apache.accumulo.core.conf.AccumuloConfiguration;
 +import org.apache.accumulo.core.conf.ConfigurationObserver;
 +import org.apache.accumulo.core.conf.Property;
 +import org.apache.accumulo.core.zookeeper.ZooUtil;
 +import org.apache.accumulo.fate.zookeeper.ZooCache;
 +import org.apache.accumulo.server.client.HdfsZooInstance;
 +import org.apache.log4j.Logger;
 +
 +public class NamespaceConfiguration extends AccumuloConfiguration {
 +  private static final Logger log = 
Logger.getLogger(NamespaceConfiguration.class);
 +
 +  private final AccumuloConfiguration parent;
 +  private static ZooCache propCache = null;
 +  protected String namespaceId = null;
 +  protected Instance inst = null;
 +  private SetConfigurationObserver observers;
 +
 +  public NamespaceConfiguration(String namespaceId, AccumuloConfiguration 
parent) {
 +inst = HdfsZooInstance.getInstance();
 +this.parent = parent;
 +this.namespaceId = namespaceId;
 +this.observers = Collections.synchronizedSet(new 
HashSetConfigurationObserver());
 +  }
 +
 +  @Override
 +  public String get(Property property) {
 +String key = property.getKey();
 +String value = get(getPropCache(), key);
 +
 +if (value == null || !property.getType().isValidFormat(value)) {
 +  if (value != null)
 +log.error(Using default value for  + key +  due to improperly 
formatted  + property.getType() + :  + value);
 +  if (!(namespaceId.equals(Namespaces.ACCUMULO_NAMESPACE_ID)  
isIteratorOrConstraint(property.getKey( {
 +// ignore iterators from parent if system namespace
 +value = parent.get(property);
 +  }
 +}
 +return value;
 +  }
 +
 +  private String get(ZooCache zc, String key) {
 +String zPath = ZooUtil.getRoot(inst.getInstanceID()) + 
Constants.ZNAMESPACES + / + getNamespaceId() + Constants.ZNAMESPACE_CONF + 
/ + key;
 +byte[] v = zc.get(zPath);
 +String value = null;
 +if (v != null)
 +  value = new String(v, Constants.UTF8);
 +return value;
 +  }
 +
 +  private synchronized static ZooCache getPropCache() {
 +Instance inst = 

[3/6] git commit: ACCUMULO-2489 Fixes race condition in TableConfiguration where NPE may occur.

2014-03-20 Thread elserj
ACCUMULO-2489 Fixes race condition in TableConfiguration where NPE may occur.

Make invalidateCache much more efficient by calling clear on ZooCache
instead of creating a new one.


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

Branch: refs/heads/master
Commit: 1d608a81f488c2bf371fc81f83e0022bd2943a36
Parents: 63d5e55
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 18:08:55 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:08:55 2014 -0400

--
 .../server/conf/ServerConfiguration.java|   1 +
 .../server/conf/TableConfiguration.java |  80 ++
 .../test/TableConfigurationUpdateTest.java  | 152 +++
 3 files changed, 200 insertions(+), 33 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/1d608a81/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
--
diff --git 
a/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java 
b/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
index b2acd1a..8653274 100644
--- 
a/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
+++ 
b/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
@@ -27,6 +27,7 @@ import org.apache.accumulo.core.conf.ConfigSanityCheck;
 import org.apache.accumulo.core.conf.DefaultConfiguration;
 import org.apache.accumulo.core.conf.SiteConfiguration;
 import org.apache.accumulo.core.data.KeyExtent;
+import org.apache.accumulo.server.client.HdfsZooInstance;
 
 public class ServerConfiguration {
   

http://git-wip-us.apache.org/repos/asf/accumulo/blob/1d608a81/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
--
diff --git 
a/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java 
b/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
index 59ff1f7..7a3d6e4 100644
--- 
a/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
+++ 
b/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
@@ -37,37 +37,46 @@ import org.apache.log4j.Logger;
 
 public class TableConfiguration extends AccumuloConfiguration {
   private static final Logger log = Logger.getLogger(TableConfiguration.class);
-  
+
   // Need volatile keyword to ensure double-checked locking works as intended
   private static volatile ZooCache tablePropCache = null;
+  private static final Object initLock = new Object();
+
   private final String instanceId;
+  private final Instance instance;
   private final AccumuloConfiguration parent;
-  
+
   private String table = null;
   private SetConfigurationObserver observers;
-  
+
   public TableConfiguration(String instanceId, String table, 
AccumuloConfiguration parent) {
+this(instanceId, HdfsZooInstance.getInstance(), table, parent);
+  }
+
+  public TableConfiguration(String instanceId, Instance instance, String 
table, AccumuloConfiguration parent) {
 this.instanceId = instanceId;
+this.instance = instance;
 this.table = table;
 this.parent = parent;
-
+
 this.observers = Collections.synchronizedSet(new 
HashSetConfigurationObserver());
   }
-  
-  /**
-   * @deprecated not for client use
-   */
-  @Deprecated
-  private static ZooCache getTablePropCache() {
-Instance inst = HdfsZooInstance.getInstance();
-if (tablePropCache == null)
-  synchronized (TableConfiguration.class) {
-if (tablePropCache == null)
-  tablePropCache = new ZooCache(inst.getZooKeepers(), 
inst.getZooKeepersSessionTimeOut(), new TableConfWatcher(inst));
+
+  private void initializeZooCache() {
+synchronized (initLock) {
+  if (null == tablePropCache) {
+tablePropCache = new ZooCache(instance.getZooKeepers(), 
instance.getZooKeepersSessionTimeOut(), new TableConfWatcher(instance));
   }
+}
+  }
+
+  private ZooCache getTablePropCache() {
+if (null == tablePropCache) {
+  initializeZooCache();
+}
 return tablePropCache;
   }
-  
+
   public void addObserver(ConfigurationObserver co) {
 if (table == null) {
   String err = Attempt to add observer for non-table configuration;
@@ -77,7 +86,7 @@ public class TableConfiguration extends AccumuloConfiguration 
{
 iterator();
 observers.add(co);
   }
-  
+
   public void removeObserver(ConfigurationObserver configObserver) {
 if (table == null) {
   String err = Attempt to remove observer 

[1/6] git commit: ACCUMULO-2489 Fixes race condition in TableConfiguration where NPE may occur.

2014-03-20 Thread elserj
Repository: accumulo
Updated Branches:
  refs/heads/1.5.2-SNAPSHOT 63d5e55a0 - 1d608a81f
  refs/heads/1.6.0-SNAPSHOT 44b13c12e - ef5dc4a1f
  refs/heads/master 394fe061f - 866422d27


ACCUMULO-2489 Fixes race condition in TableConfiguration where NPE may occur.

Make invalidateCache much more efficient by calling clear on ZooCache
instead of creating a new one.


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

Branch: refs/heads/1.5.2-SNAPSHOT
Commit: 1d608a81f488c2bf371fc81f83e0022bd2943a36
Parents: 63d5e55
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 18:08:55 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:08:55 2014 -0400

--
 .../server/conf/ServerConfiguration.java|   1 +
 .../server/conf/TableConfiguration.java |  80 ++
 .../test/TableConfigurationUpdateTest.java  | 152 +++
 3 files changed, 200 insertions(+), 33 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/1d608a81/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
--
diff --git 
a/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java 
b/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
index b2acd1a..8653274 100644
--- 
a/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
+++ 
b/server/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java
@@ -27,6 +27,7 @@ import org.apache.accumulo.core.conf.ConfigSanityCheck;
 import org.apache.accumulo.core.conf.DefaultConfiguration;
 import org.apache.accumulo.core.conf.SiteConfiguration;
 import org.apache.accumulo.core.data.KeyExtent;
+import org.apache.accumulo.server.client.HdfsZooInstance;
 
 public class ServerConfiguration {
   

http://git-wip-us.apache.org/repos/asf/accumulo/blob/1d608a81/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
--
diff --git 
a/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java 
b/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
index 59ff1f7..7a3d6e4 100644
--- 
a/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
+++ 
b/server/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java
@@ -37,37 +37,46 @@ import org.apache.log4j.Logger;
 
 public class TableConfiguration extends AccumuloConfiguration {
   private static final Logger log = Logger.getLogger(TableConfiguration.class);
-  
+
   // Need volatile keyword to ensure double-checked locking works as intended
   private static volatile ZooCache tablePropCache = null;
+  private static final Object initLock = new Object();
+
   private final String instanceId;
+  private final Instance instance;
   private final AccumuloConfiguration parent;
-  
+
   private String table = null;
   private SetConfigurationObserver observers;
-  
+
   public TableConfiguration(String instanceId, String table, 
AccumuloConfiguration parent) {
+this(instanceId, HdfsZooInstance.getInstance(), table, parent);
+  }
+
+  public TableConfiguration(String instanceId, Instance instance, String 
table, AccumuloConfiguration parent) {
 this.instanceId = instanceId;
+this.instance = instance;
 this.table = table;
 this.parent = parent;
-
+
 this.observers = Collections.synchronizedSet(new 
HashSetConfigurationObserver());
   }
-  
-  /**
-   * @deprecated not for client use
-   */
-  @Deprecated
-  private static ZooCache getTablePropCache() {
-Instance inst = HdfsZooInstance.getInstance();
-if (tablePropCache == null)
-  synchronized (TableConfiguration.class) {
-if (tablePropCache == null)
-  tablePropCache = new ZooCache(inst.getZooKeepers(), 
inst.getZooKeepersSessionTimeOut(), new TableConfWatcher(inst));
+
+  private void initializeZooCache() {
+synchronized (initLock) {
+  if (null == tablePropCache) {
+tablePropCache = new ZooCache(instance.getZooKeepers(), 
instance.getZooKeepersSessionTimeOut(), new TableConfWatcher(instance));
   }
+}
+  }
+
+  private ZooCache getTablePropCache() {
+if (null == tablePropCache) {
+  initializeZooCache();
+}
 return tablePropCache;
   }
-  
+
   public void addObserver(ConfigurationObserver co) {
 if (table == null) {
   String err = Attempt to add observer for non-table configuration;
@@ -77,7 +86,7 @@ public class TableConfiguration extends AccumuloConfiguration 
{
 

[05/25] git commit: ACCUMULO-2451 Update the data version on all volumes instead of just one

2014-03-20 Thread elserj
ACCUMULO-2451 Update the data version on all volumes instead of just one


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: d45b723f0df73fa3f24d9911da44481615c7298b
Parents: 7c94c08
Author: Josh Elser els...@apache.org
Authored: Wed Mar 12 12:10:44 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:58:41 2014 -0400

--
 .../org/apache/accumulo/server/Accumulo.java| 22 +---
 1 file changed, 14 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/d45b723f/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
--
diff --git a/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java 
b/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
index 48534f0..f7f2298 100644
--- a/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
+++ b/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
@@ -51,15 +51,21 @@ public class Accumulo {
   private static final Logger log = Logger.getLogger(Accumulo.class);
   
   public static synchronized void updateAccumuloVersion(VolumeManager fs) {
-// TODO ACCUMULO-2451 Should update all volumes, not one 
-Volume volume = fs.getVolumes().iterator().next();
-try {
-  if (getAccumuloPersistentVersion(fs) == 
ServerConstants.PREV_DATA_VERSION) {
-fs.create(new Path(ServerConstants.getDataVersionLocation(volume), 
Integer.toString(ServerConstants.DATA_VERSION)));
-fs.delete(new Path(ServerConstants.getDataVersionLocation(volume), 
Integer.toString(ServerConstants.PREV_DATA_VERSION)));
+for (Volume volume : fs.getVolumes()) {
+  try {
+if (getAccumuloPersistentVersion(fs) == 
ServerConstants.PREV_DATA_VERSION) {
+  log.debug(Attempting to upgrade  + volume);
+  Path dataVersionLocation = 
ServerConstants.getDataVersionLocation(volume);
+  fs.create(new Path(dataVersionLocation, 
Integer.toString(ServerConstants.DATA_VERSION))).close();
+
+  Path prevDataVersionLoc = new Path(dataVersionLocation, 
Integer.toString(ServerConstants.PREV_DATA_VERSION));
+  if (!fs.delete(prevDataVersionLoc)) {
+throw new RuntimeException(Could not delete previous data version 
location ( + prevDataVersionLoc + ) for  + volume);
+  }
+}
+  } catch (IOException e) {
+throw new RuntimeException(Unable to set accumulo version: an error 
occurred., e);
   }
-} catch (IOException e) {
-  throw new RuntimeException(Unable to set accumulo version: an error 
occurred., e);
 }
   }
   



[18/25] git commit: ACCUMULO-2061 Co-locate volumes with the MAC dir

2014-03-20 Thread elserj
ACCUMULO-2061 Co-locate volumes with the MAC dir

Losing the volumes on test failure sucks because you can't validate
if we misplaced a file on the wrong volume in the first place.


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 53b9f25db94d812f78fd468e88e05da33fdd5190
Parents: 9172f52
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 12:18:42 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:30 2014 -0400

--
 .../java/org/apache/accumulo/test/VolumeIT.java | 26 ++--
 1 file changed, 7 insertions(+), 19 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/53b9f25d/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
--
diff --git a/test/src/test/java/org/apache/accumulo/test/VolumeIT.java 
b/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
index 0a7ef3f..c0e41c1 100644
--- a/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
@@ -22,7 +22,6 @@ import static org.junit.Assert.assertTrue;
 import java.io.BufferedOutputStream;
 import java.io.File;
 import java.io.FileOutputStream;
-import java.io.IOException;
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -65,7 +64,6 @@ import org.apache.accumulo.server.ServerConstants;
 import org.apache.accumulo.server.init.Initialize;
 import org.apache.accumulo.server.util.Admin;
 import org.apache.accumulo.test.functional.ConfigurableMacIT;
-import org.apache.commons.io.FileUtils;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileStatus;
 import org.apache.hadoop.fs.FileSystem;
@@ -73,38 +71,28 @@ import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.fs.RawLocalFileSystem;
 import org.apache.hadoop.io.Text;
 import org.apache.zookeeper.ZooKeeper;
-import org.junit.After;
 import org.junit.Assert;
-import org.junit.BeforeClass;
 import org.junit.Test;
 
 public class VolumeIT extends ConfigurableMacIT {
 
   private static final Text EMPTY = new Text();
   private static final Value EMPTY_VALUE = new Value(new byte[] {});
-  public static File volDirBase;
-  public static Path v1;
-  public static Path v2;
+  private File volDirBase;
+  private Path v1, v2;
 
-  @BeforeClass
-  public static void createVolumeDirs() throws IOException {
-volDirBase = createSharedTestDir(VolumeIT.class.getName() + -volumes);
+  @SuppressWarnings(deprecation)
+  @Override
+  public void configure(MiniAccumuloConfigImpl cfg, Configuration 
hadoopCoreSite) {
+File baseDir = cfg.getDir();
+volDirBase = new File(baseDir, volumes);
 File v1f = new File(volDirBase, v1);
 File v2f = new File(volDirBase, v2);
 v1f.mkdir();
 v2f.mkdir();
 v1 = new Path(file:// + v1f.getAbsolutePath());
 v2 = new Path(file:// + v2f.getAbsolutePath());
-  }
 
-  @After
-  public void clearDirs() throws IOException {
-FileUtils.deleteQuietly(new File(v1.getParent().toUri()));
-  }
-
-  @SuppressWarnings(deprecation)
-  @Override
-  public void configure(MiniAccumuloConfigImpl cfg, Configuration 
hadoopCoreSite) {
 // Run MAC on two locations in the local file system
 URI v1Uri = v1.toUri();
 cfg.setProperty(Property.INSTANCE_DFS_DIR, v1Uri.getPath());



[14/25] git commit: ACCUMULO-2061 Fixing whitespace nits

2014-03-20 Thread elserj
ACCUMULO-2061 Fixing whitespace nits


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 03baf91611120dfdd36eaa5a824b99144b9eb36a
Parents: 53b9f25
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 13:23:04 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:30 2014 -0400

--
 .../org/apache/accumulo/core/volume/NonConfiguredVolume.java | 2 +-
 .../org/apache/accumulo/core/volume/VolumeConfiguration.java | 4 ++--
 .../main/java/org/apache/accumulo/core/volume/VolumeImpl.java| 2 +-
 .../org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java | 3 ---
 4 files changed, 4 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/03baf916/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
index 3cfd1c2..3d56fa9 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
@@ -23,7 +23,7 @@ import org.apache.hadoop.fs.Path;
 /**
  * Volume implementation which represents a Volume for which we have a 
FileSystem but no base path because it is not configured via
  * {@link Property#INSTANCE_VOLUMES}
- * 
+ *
  * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references to these volumes have not been updated. This 
Volume should
  * never be used to create new files, only to read existing files.
  */

http://git-wip-us.apache.org/repos/asf/accumulo/blob/03baf916/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
index 71ad611..e7a51d7 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
@@ -85,7 +85,7 @@ public class VolumeConfiguration {
 
   /**
* Compute the URIs to be used by Accumulo
-   * 
+   *
* @param conf
* @return
*/
@@ -134,7 +134,7 @@ public class VolumeConfiguration {
 
   /**
* Create a Volume with the given FileSystem that writes to the default path
-   * 
+   *
* @param fs
*  A FileSystem to write to
* @return A Volume instance writing to the given FileSystem in the default 
path

http://git-wip-us.apache.org/repos/asf/accumulo/blob/03baf916/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
--
diff --git a/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
index f902c35..43ab96b 100644
--- a/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
+++ b/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
@@ -29,7 +29,7 @@ import org.apache.hadoop.fs.Path;
 import org.apache.log4j.Logger;
 
 /**
- * Basic Volume implementation that contains a FileSystem and a base path 
+ * Basic Volume implementation that contains a FileSystem and a base path
  * that should be used within that filesystem.
  */
 public class VolumeImpl implements Volume {

http://git-wip-us.apache.org/repos/asf/accumulo/blob/03baf916/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
--
diff --git 
a/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
 
b/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
index 937baf8..8d4a800 100644
--- 
a/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
+++ 
b/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
@@ -25,9 +25,6 @@ import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
-/**
- * 
- */
 public class NonConfiguredVolumeTest {
 
   private NonConfiguredVolume volume;



[16/25] git commit: ACCUMULO-2061 Use URI instead of FileSystem as the key to find correct Volumes and ensure that absolute URIs are still valid even after they are not configured.

2014-03-20 Thread elserj
ACCUMULO-2061 Use URI instead of FileSystem as the key to find correct Volumes 
and ensure that absolute URIs
are still valid even after they are not configured.

This will help ensure that FileSystem implementations' hashCode and equals don't
have the potential to collide but still provide unique access back to the 
Volumes
contained in the FileSystem. Added tests for the NonConfiguredVolume and also
for the no-longer-configured volumes.


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 42f6b58e58a8fb1a8f05c371844f86c536fe143a
Parents: 492768d
Author: Josh Elser els...@apache.org
Authored: Fri Mar 14 17:06:32 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:30 2014 -0400

--
 .../core/volume/NonConfiguredVolume.java| 92 
 .../core/volume/NonConfiguredVolumeTest.java| 71 +++
 .../accumulo/server/fs/VolumeManagerImpl.java   | 25 +++---
 .../java/org/apache/accumulo/test/VolumeIT.java | 55 +++-
 4 files changed, 231 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/42f6b58e/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
new file mode 100644
index 000..7dcbd88
--- /dev/null
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
@@ -0,0 +1,92 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.accumulo.core.volume;
+
+import java.io.IOException;
+
+import org.apache.accumulo.core.conf.Property;
+import org.apache.accumulo.core.util.CachedConfiguration;
+import org.apache.hadoop.fs.FileSystem;
+import org.apache.hadoop.fs.Path;
+import org.apache.log4j.Logger;
+
+/**
+ * Volume implementation which represents a Volume for which we have a 
FileSystem
+ * but no base path because it is not configured via {@link 
Property#INSTANCE_VOLUMES}
+ * 
+ * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references
+ * to these volumes have not been updated. This Volume should never be used to 
create new files,
+ * only to read existing files.
+ */
+public class NonConfiguredVolume implements Volume {
+  private static final Logger log = 
Logger.getLogger(NonConfiguredVolume.class);
+
+  private FileSystem fs;
+
+  public NonConfiguredVolume(FileSystem fs) {
+this.fs = fs;
+  }
+
+  @Override
+  public FileSystem getFileSystem() {
+return fs;
+  }
+
+  @Override
+  public String getBasePath() {
+throw new UnsupportedOperationException(No base path known because this 
volume isn't configured in accumulo-site.xml);
+  }
+
+  @Override
+  public Path prefixChild(Path p) {
+throw new UnsupportedOperationException(Cannot prefix path because this 
volume isn't configured in accumulo-site.xml);
+  }
+
+  @Override
+  public Path prefixChild(String p) {
+throw new UnsupportedOperationException(Cannot prefix path because this 
volume isn't configured in accumulo-site.xml);
+  }
+
+  @Override
+  public boolean isValidPath(Path p) {
+try {
+  return fs.equals(p.getFileSystem(CachedConfiguration.getInstance()));
+} catch (IOException e) {
+  log.debug(Cannot determine FileSystem from path:  + p, e);
+}
+return false;
+  }
+
+  @Override
+  public boolean equals(Object o) {
+if (o instanceof NonConfiguredVolume) {
+  NonConfiguredVolume other = (NonConfiguredVolume) o;
+  return this.fs.equals(other.getFileSystem());
+}
+return false;
+  }
+
+  @Override
+  public String toString() {
+return NonConfiguredVolume:  + this.fs.toString();
+  }
+
+  @Override

[22/25] git commit: ACCUMULO-2061 A few more minor fixes from reviewboard.

2014-03-20 Thread elserj
ACCUMULO-2061 A few more minor fixes from reviewboard.

Fixed a PrintInfo comment. Expand the VolumeImpl.isValidPath javadoc
and implementation to be more encompassing. Suppress warnings in VolumeIT.
Remove implementation of isValidPath from NonConfiguredVolume as it
could be misleading.


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

Branch: refs/heads/master
Commit: 9172f52bc74de2590603c5282c19264447e33da6
Parents: 42f6b58
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 11:22:38 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:30 2014 -0400

--
 .../accumulo/core/file/rfile/PrintInfo.java |  7 +++--
 .../core/volume/NonConfiguredVolume.java| 30 ++--
 .../org/apache/accumulo/core/volume/Volume.java |  4 +--
 .../apache/accumulo/core/volume/VolumeImpl.java | 16 ++-
 .../accumulo/server/fs/VolumeManagerImpl.java   |  8 +++---
 .../java/org/apache/accumulo/test/VolumeIT.java |  1 +
 6 files changed, 36 insertions(+), 30 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/9172f52b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java 
b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
index 7ed8f34..dc54b49 100644
--- a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
+++ b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
@@ -52,8 +52,11 @@ public class PrintInfo {
 
 @SuppressWarnings(deprecation)
 AccumuloConfiguration aconf = AccumuloConfiguration.getSiteConfiguration();
-// TODO ACCUMULO-2462 This will only work for RFiles in HDFS when the 
filesystem is defined in the core-site.xml
-// on the classpath if a path, and not a URI, is given
+// TODO ACCUMULO-2462 This will only work for RFiles (path only, not URI) 
in HDFS when the correct filesystem for the given file
+// is on Property.INSTANCE_DFS_DIR or, when INSTANCE_DFS_DIR is not 
defined, is on the default filesystem 
+// defined in the Hadoop's core-site.xml
+//
+// A workaround is to always provide a URI to this class
 FileSystem hadoopFs = VolumeConfiguration.getDefaultVolume(conf, 
aconf).getFileSystem();
 FileSystem localFs  = FileSystem.getLocal(conf);
 Opts opts = new Opts();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/9172f52b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
index 7dcbd88..3cfd1c2 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
@@ -16,25 +16,18 @@
  */
 package org.apache.accumulo.core.volume;
 
-import java.io.IOException;
-
 import org.apache.accumulo.core.conf.Property;
-import org.apache.accumulo.core.util.CachedConfiguration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
-import org.apache.log4j.Logger;
 
 /**
- * Volume implementation which represents a Volume for which we have a 
FileSystem
- * but no base path because it is not configured via {@link 
Property#INSTANCE_VOLUMES}
+ * Volume implementation which represents a Volume for which we have a 
FileSystem but no base path because it is not configured via
+ * {@link Property#INSTANCE_VOLUMES}
  * 
- * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references
- * to these volumes have not been updated. This Volume should never be used to 
create new files,
- * only to read existing files.
+ * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references to these volumes have not been updated. This 
Volume should
+ * never be used to create new files, only to read existing files.
  */
 public class NonConfiguredVolume implements Volume {
-  private static final Logger log = 
Logger.getLogger(NonConfiguredVolume.class);
-
   private FileSystem fs;
 
   public NonConfiguredVolume(FileSystem fs) {
@@ -48,27 +41,22 @@ public class NonConfiguredVolume implements Volume {
 
   @Override
   public String getBasePath() {
-throw new UnsupportedOperationException(No base path known because this 
volume isn't configured in accumulo-site.xml);
+throw new 

[19/25] git commit: ACCUMULO-2061 A few more minor fixes from reviewboard.

2014-03-20 Thread elserj
ACCUMULO-2061 A few more minor fixes from reviewboard.

Fixed a PrintInfo comment. Expand the VolumeImpl.isValidPath javadoc
and implementation to be more encompassing. Suppress warnings in VolumeIT.
Remove implementation of isValidPath from NonConfiguredVolume as it
could be misleading.


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 9172f52bc74de2590603c5282c19264447e33da6
Parents: 42f6b58
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 11:22:38 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:30 2014 -0400

--
 .../accumulo/core/file/rfile/PrintInfo.java |  7 +++--
 .../core/volume/NonConfiguredVolume.java| 30 ++--
 .../org/apache/accumulo/core/volume/Volume.java |  4 +--
 .../apache/accumulo/core/volume/VolumeImpl.java | 16 ++-
 .../accumulo/server/fs/VolumeManagerImpl.java   |  8 +++---
 .../java/org/apache/accumulo/test/VolumeIT.java |  1 +
 6 files changed, 36 insertions(+), 30 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/9172f52b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java 
b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
index 7ed8f34..dc54b49 100644
--- a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
+++ b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
@@ -52,8 +52,11 @@ public class PrintInfo {
 
 @SuppressWarnings(deprecation)
 AccumuloConfiguration aconf = AccumuloConfiguration.getSiteConfiguration();
-// TODO ACCUMULO-2462 This will only work for RFiles in HDFS when the 
filesystem is defined in the core-site.xml
-// on the classpath if a path, and not a URI, is given
+// TODO ACCUMULO-2462 This will only work for RFiles (path only, not URI) 
in HDFS when the correct filesystem for the given file
+// is on Property.INSTANCE_DFS_DIR or, when INSTANCE_DFS_DIR is not 
defined, is on the default filesystem 
+// defined in the Hadoop's core-site.xml
+//
+// A workaround is to always provide a URI to this class
 FileSystem hadoopFs = VolumeConfiguration.getDefaultVolume(conf, 
aconf).getFileSystem();
 FileSystem localFs  = FileSystem.getLocal(conf);
 Opts opts = new Opts();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/9172f52b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
index 7dcbd88..3cfd1c2 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
@@ -16,25 +16,18 @@
  */
 package org.apache.accumulo.core.volume;
 
-import java.io.IOException;
-
 import org.apache.accumulo.core.conf.Property;
-import org.apache.accumulo.core.util.CachedConfiguration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
-import org.apache.log4j.Logger;
 
 /**
- * Volume implementation which represents a Volume for which we have a 
FileSystem
- * but no base path because it is not configured via {@link 
Property#INSTANCE_VOLUMES}
+ * Volume implementation which represents a Volume for which we have a 
FileSystem but no base path because it is not configured via
+ * {@link Property#INSTANCE_VOLUMES}
  * 
- * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references
- * to these volumes have not been updated. This Volume should never be used to 
create new files,
- * only to read existing files.
+ * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references to these volumes have not been updated. This 
Volume should
+ * never be used to create new files, only to read existing files.
  */
 public class NonConfiguredVolume implements Volume {
-  private static final Logger log = 
Logger.getLogger(NonConfiguredVolume.class);
-
   private FileSystem fs;
 
   public NonConfiguredVolume(FileSystem fs) {
@@ -48,27 +41,22 @@ public class NonConfiguredVolume implements Volume {
 
   @Override
   public String getBasePath() {
-throw new UnsupportedOperationException(No base path known because this 
volume isn't configured in accumulo-site.xml);
+

[24/25] git commit: ACCUMULO-2515 ACCUMULO-2489 Apply same fixes from TableConfiguration to NamespaceConfiguration

2014-03-20 Thread elserj
ACCUMULO-2515 ACCUMULO-2489 Apply same fixes from TableConfiguration to
NamespaceConfiguration

Also switch over TableConfigurationUpdateIT to use SimpleMacIT instead
of doing it itself.


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: cb2f4b58041a4176d907e77a0853e2c3316df4ec
Parents: c25a41f
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 21:14:35 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 21:14:35 2014 -0400

--
 .../server/conf/NamespaceConfiguration.java | 24 ++
 .../test/TableConfigurationUpdateIT.java| 34 
 2 files changed, 24 insertions(+), 34 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/cb2f4b58/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
--
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
 
b/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
index d08d45f..99532ca 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
@@ -38,13 +38,18 @@ public class NamespaceConfiguration extends 
AccumuloConfiguration {
   private static final Logger log = 
Logger.getLogger(NamespaceConfiguration.class);
 
   private final AccumuloConfiguration parent;
-  private static ZooCache propCache = null;
+  private static volatile ZooCache propCache = null;
+  private static final Object lock = new Object();
   protected String namespaceId = null;
   protected Instance inst = null;
   private SetConfigurationObserver observers;
 
   public NamespaceConfiguration(String namespaceId, AccumuloConfiguration 
parent) {
-inst = HdfsZooInstance.getInstance();
+this(namespaceId, HdfsZooInstance.getInstance(), parent);
+  }
+
+  public NamespaceConfiguration(String namespaceId, Instance inst, 
AccumuloConfiguration parent) {
+this.inst = inst;
 this.parent = parent;
 this.namespaceId = namespaceId;
 this.observers = Collections.synchronizedSet(new 
HashSetConfigurationObserver());
@@ -75,10 +80,17 @@ public class NamespaceConfiguration extends 
AccumuloConfiguration {
 return value;
   }
 
-  private synchronized static ZooCache getPropCache() {
-Instance inst = HdfsZooInstance.getInstance();
-if (propCache == null)
-   propCache = new ZooCache(inst.getZooKeepers(), 
inst.getZooKeepersSessionTimeOut(), new NamespaceConfWatcher(inst));
+  private void initializePropCache() {
+synchronized (lock) {
+  if (propCache == null)
+propCache = new ZooCache(inst.getZooKeepers(), 
inst.getZooKeepersSessionTimeOut(), new NamespaceConfWatcher(inst));
+}
+  }
+
+  private ZooCache getPropCache() {
+if (null == propCache) {
+  initializePropCache();
+}
 return propCache;
   }
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/cb2f4b58/test/src/test/java/org/apache/accumulo/test/TableConfigurationUpdateIT.java
--
diff --git 
a/test/src/test/java/org/apache/accumulo/test/TableConfigurationUpdateIT.java 
b/test/src/test/java/org/apache/accumulo/test/TableConfigurationUpdateIT.java
index c3e3342..5e2b2c9 100644
--- 
a/test/src/test/java/org/apache/accumulo/test/TableConfigurationUpdateIT.java
+++ 
b/test/src/test/java/org/apache/accumulo/test/TableConfigurationUpdateIT.java
@@ -27,50 +27,28 @@ import java.util.concurrent.TimeUnit;
 
 import org.apache.accumulo.core.client.Connector;
 import org.apache.accumulo.core.client.Instance;
-import org.apache.accumulo.core.client.ZooKeeperInstance;
-import org.apache.accumulo.core.client.security.tokens.PasswordToken;
+import org.apache.accumulo.core.client.impl.Namespaces;
 import org.apache.accumulo.core.conf.AccumuloConfiguration;
 import org.apache.accumulo.core.conf.Property;
-import org.apache.accumulo.minicluster.MiniAccumuloCluster;
 import org.apache.accumulo.server.conf.NamespaceConfiguration;
 import org.apache.accumulo.server.conf.TableConfiguration;
-import org.apache.accumulo.server.conf.TableParentConfiguration;
+import org.apache.accumulo.test.functional.SimpleMacIT;
 import org.apache.log4j.Logger;
-import org.junit.After;
 import org.junit.Assert;
-import org.junit.Before;
 import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
 
-public class TableConfigurationUpdateIT {
+public class 

[17/25] git commit: ACCUMULO-2061 Fixing whitespace nits

2014-03-20 Thread elserj
ACCUMULO-2061 Fixing whitespace nits


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

Branch: refs/heads/master
Commit: 03baf91611120dfdd36eaa5a824b99144b9eb36a
Parents: 53b9f25
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 13:23:04 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:30 2014 -0400

--
 .../org/apache/accumulo/core/volume/NonConfiguredVolume.java | 2 +-
 .../org/apache/accumulo/core/volume/VolumeConfiguration.java | 4 ++--
 .../main/java/org/apache/accumulo/core/volume/VolumeImpl.java| 2 +-
 .../org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java | 3 ---
 4 files changed, 4 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/03baf916/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
index 3cfd1c2..3d56fa9 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
@@ -23,7 +23,7 @@ import org.apache.hadoop.fs.Path;
 /**
  * Volume implementation which represents a Volume for which we have a 
FileSystem but no base path because it is not configured via
  * {@link Property#INSTANCE_VOLUMES}
- * 
+ *
  * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references to these volumes have not been updated. This 
Volume should
  * never be used to create new files, only to read existing files.
  */

http://git-wip-us.apache.org/repos/asf/accumulo/blob/03baf916/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
index 71ad611..e7a51d7 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
@@ -85,7 +85,7 @@ public class VolumeConfiguration {
 
   /**
* Compute the URIs to be used by Accumulo
-   * 
+   *
* @param conf
* @return
*/
@@ -134,7 +134,7 @@ public class VolumeConfiguration {
 
   /**
* Create a Volume with the given FileSystem that writes to the default path
-   * 
+   *
* @param fs
*  A FileSystem to write to
* @return A Volume instance writing to the given FileSystem in the default 
path

http://git-wip-us.apache.org/repos/asf/accumulo/blob/03baf916/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
--
diff --git a/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
index f902c35..43ab96b 100644
--- a/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
+++ b/core/src/main/java/org/apache/accumulo/core/volume/VolumeImpl.java
@@ -29,7 +29,7 @@ import org.apache.hadoop.fs.Path;
 import org.apache.log4j.Logger;
 
 /**
- * Basic Volume implementation that contains a FileSystem and a base path 
+ * Basic Volume implementation that contains a FileSystem and a base path
  * that should be used within that filesystem.
  */
 public class VolumeImpl implements Volume {

http://git-wip-us.apache.org/repos/asf/accumulo/blob/03baf916/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
--
diff --git 
a/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
 
b/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
index 937baf8..8d4a800 100644
--- 
a/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
+++ 
b/core/src/test/java/org/apache/accumulo/core/volume/NonConfiguredVolumeTest.java
@@ -25,9 +25,6 @@ import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
-/**
- * 
- */
 public class NonConfiguredVolumeTest {
 
   private NonConfiguredVolume volume;



[08/25] git commit: ACCUMULO-2061 Add comments, javadoc and other cleanup

2014-03-20 Thread elserj
ACCUMULO-2061 Add comments, javadoc and other cleanup


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

Branch: refs/heads/master
Commit: 550e5e61affc490f0931a8991d40f283b0282115
Parents: d45b723
Author: Josh Elser els...@apache.org
Authored: Wed Mar 12 12:11:48 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:58:53 2014 -0400

--
 .../accumulo/core/file/rfile/PrintInfo.java |  9 +-
 .../org/apache/accumulo/core/volume/Volume.java | 15 --
 .../core/volume/VolumeConfiguration.java| 30 
 .../apache/accumulo/core/volume/VolumeImpl.java | 22 +++---
 .../accumulo/server/fs/VolumeManager.java   |  2 --
 .../accumulo/server/fs/VolumeManagerImpl.java   | 19 +++--
 .../apache/accumulo/server/fs/VolumeUtil.java   |  2 +-
 .../accumulo/server/util/ChangeSecret.java  |  7 +++--
 .../accumulo/server/fs/VolumeUtilTest.java  |  2 +-
 9 files changed, 59 insertions(+), 49 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/550e5e61/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java 
b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
index 4e39fc7..7c0f067 100644
--- a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
+++ b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
@@ -31,10 +31,12 @@ import org.apache.accumulo.core.volume.VolumeConfiguration;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
+import org.apache.log4j.Logger;
 
 import com.beust.jcommander.Parameter;
 
 public class PrintInfo {
+  private static final Logger log = Logger.getLogger(PrintInfo.class);
   
   static class Opts extends Help {
 @Parameter(names = {-d, --dump}, description = dump the key/value 
pairs)
@@ -50,6 +52,8 @@ public class PrintInfo {
 
 @SuppressWarnings(deprecation)
 AccumuloConfiguration aconf = AccumuloConfiguration.getSiteConfiguration();
+// TODO This will only work for RFiles in HDFS when the filesystem is 
defined in the core-site.xml
+// on the classpath if a path, and not a URI, is given
 FileSystem hadoopFs = VolumeConfiguration.getDefaultVolume(conf, 
aconf).getFileSystem();
 FileSystem localFs  = FileSystem.getLocal(conf);
 Opts opts = new Opts();
@@ -68,8 +72,11 @@ public class PrintInfo {
   FileSystem fs;
   if (arg.contains(:))
 fs = path.getFileSystem(conf);
-  else
+  else {
+// Recommend a URI is given for the above todo reason
+log.warn(Attempting to find file across filesystems. Consider 
providing URI instead of path);
 fs = hadoopFs.exists(path) ? hadoopFs : localFs; // fall back to local
+  }
   
   CachableBlockFile.Reader _rdr = new CachableBlockFile.Reader(fs, path, 
conf, null, null, aconf);
   Reader iter = new RFile.Reader(_rdr);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/550e5e61/core/src/main/java/org/apache/accumulo/core/volume/Volume.java
--
diff --git a/core/src/main/java/org/apache/accumulo/core/volume/Volume.java 
b/core/src/main/java/org/apache/accumulo/core/volume/Volume.java
index 08f61d4..17b2bf3 100644
--- a/core/src/main/java/org/apache/accumulo/core/volume/Volume.java
+++ b/core/src/main/java/org/apache/accumulo/core/volume/Volume.java
@@ -21,39 +21,36 @@ import org.apache.hadoop.fs.Path;
 
 /**
  * Encapsulates a {@link FileSystem} and a base {@link Path} within that 
filesystem. This
- * also avoid the necessity to pass around a Configuration. 
+ * also avoid the necessity to pass around a Configuration.
  */
 public interface Volume {
 
   /**
* A {@link FileSystem} that Accumulo will use
-   * @return
*/
   public FileSystem getFileSystem();
 
   /**
* The base path which Accumulo will use within the given {@link FileSystem}
-   * @return
*/
   public String getBasePath();
-  
+
   /**
* Convert the given Path into a Path that is relative to the base path for 
this Volume
-   * @param p
-   * @return
+   * @param p The suffix to use
+   * @return A Path for this Volume with the provided suffix
*/
   public Path prefixChild(Path p);
 
   /**
* Convert the given child path into a Path that is relative to the base 
path for this Volume
-   * @param p
-   * @return
+   * @param p The suffix to use
+   * @return A Path 

[13/25] git commit: ACCUMULO-2061 Add a utility method to pull a Path with the instance_id

2014-03-20 Thread elserj
ACCUMULO-2061 Add a utility method to pull a Path with the instance_id

Consolidates a little bit of code in one place.


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: c25a41fe905cda4aa914f232db5cc26b3254f4a0
Parents: 03baf91
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 17:39:13 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:30 2014 -0400

--
 .../main/java/org/apache/accumulo/server/Accumulo.java|  7 +++
 .../java/org/apache/accumulo/server/ServerConstants.java  |  2 +-
 .../apache/accumulo/server/client/HdfsZooInstance.java| 10 +-
 .../org/apache/accumulo/server/conf/ZooConfiguration.java | 10 --
 4 files changed, 17 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/c25a41fe/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
--
diff --git a/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java 
b/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
index f7f2298..925c0d0 100644
--- a/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
+++ b/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
@@ -32,6 +32,7 @@ import org.apache.accumulo.core.util.AddressUtil;
 import org.apache.accumulo.core.util.UtilWaitThread;
 import org.apache.accumulo.core.util.Version;
 import org.apache.accumulo.core.volume.Volume;
+import org.apache.accumulo.core.zookeeper.ZooUtil;
 import org.apache.accumulo.server.client.HdfsZooInstance;
 import org.apache.accumulo.server.conf.ServerConfiguration;
 import org.apache.accumulo.server.fs.VolumeManager;
@@ -91,6 +92,12 @@ public class Accumulo {
 return getAccumuloPersistentVersion(v.getFileSystem(), path);
   }
 
+  public static synchronized Path getAccumuloInstanceIdPath(VolumeManager fs) {
+// It doesn't matter which Volume is used as they should all have the 
instance ID stored
+Volume v = fs.getVolumes().iterator().next();
+return ServerConstants.getInstanceIdLocation(v);
+  }
+
   public static void enableTracing(String address, String application) {
 try {
   DistributedTrace.enable(HdfsZooInstance.getInstance(), 
ZooReaderWriter.getInstance(), application, address);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/c25a41fe/server/base/src/main/java/org/apache/accumulo/server/ServerConstants.java
--
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/ServerConstants.java 
b/server/base/src/main/java/org/apache/accumulo/server/ServerConstants.java
index 7dd0a08..b577abb 100644
--- a/server/base/src/main/java/org/apache/accumulo/server/ServerConstants.java
+++ b/server/base/src/main/java/org/apache/accumulo/server/ServerConstants.java
@@ -76,7 +76,7 @@ public class ServerConstants {
   String currentIid;
   Integer currentVersion;
   try {
-currentIid = ZooUtil.getInstanceIDFromHdfs(new Path(baseDir, 
INSTANCE_ID_DIR), ServerConfiguration.getSiteConfiguration());
+currentIid = ZooUtil.getInstanceIDFromHdfs(path, 
ServerConfiguration.getSiteConfiguration());
 Path vpath = new Path(baseDir, VERSION_DIR);
 currentVersion = 
Accumulo.getAccumuloPersistentVersion(vpath.getFileSystem(CachedConfiguration.getInstance()),
 vpath);
   } catch (Exception e) {

http://git-wip-us.apache.org/repos/asf/accumulo/blob/c25a41fe/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
--
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
 
b/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
index ee928f3..620188c 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java
@@ -39,14 +39,14 @@ import org.apache.accumulo.core.util.ByteBufferUtil;
 import org.apache.accumulo.core.util.OpTimer;
 import org.apache.accumulo.core.util.StringUtil;
 import org.apache.accumulo.core.util.TextUtil;
-import org.apache.accumulo.core.volume.Volume;
 import org.apache.accumulo.core.zookeeper.ZooUtil;
 import org.apache.accumulo.fate.zookeeper.ZooCache;
-import org.apache.accumulo.server.ServerConstants;
+import org.apache.accumulo.server.Accumulo;
 import org.apache.accumulo.server.conf.ServerConfiguration;
 import 

[01/25] ACCUMULO-2061 Initial implementation to remove instance.dfs.dir from usage of instance.volumes

2014-03-20 Thread elserj
Repository: accumulo
Updated Branches:
  refs/heads/1.6.0-SNAPSHOT ef5dc4a1f - cb2f4b580
  refs/heads/master 866422d27 - 2dbc14fa9


http://git-wip-us.apache.org/repos/asf/accumulo/blob/7c94c086/server/base/src/test/java/org/apache/accumulo/server/fs/FileTypeTest.java
--
diff --git 
a/server/base/src/test/java/org/apache/accumulo/server/fs/FileTypeTest.java 
b/server/base/src/test/java/org/apache/accumulo/server/fs/FileTypeTest.java
index 205a793..ad29c19 100644
--- a/server/base/src/test/java/org/apache/accumulo/server/fs/FileTypeTest.java
+++ b/server/base/src/test/java/org/apache/accumulo/server/fs/FileTypeTest.java
@@ -27,28 +27,50 @@ import org.junit.Test;
 public class FileTypeTest {
   @Test
   public void testVolumeExtraction() {
-Assert.assertEquals(new Path(file:/a), FileType.TABLE.getVolume(new 
Path(file:/a/accumulo/tables/2b/t-001/C00.rf)));
-Assert.assertEquals(new Path(file:///a), FileType.TABLE.getVolume(new 
Path(file:/a/accumulo/tables/2b/t-001/C00.rf)));
-Assert.assertEquals(new Path(file:///a), FileType.TABLE.getVolume(new 
Path(file:///a/accumulo/tables/2b/t-001/C00.rf)));
-Assert.assertEquals(new Path(file:/a), FileType.TABLE.getVolume(new 
Path(file:///a/accumulo/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(file:/a/accumulo), 
FileType.TABLE.getVolume(new Path(file:/a/accumulo/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(file:///a/accumulo), 
FileType.TABLE.getVolume(new Path(file:/a/accumulo/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(file:///a/accumulo), 
FileType.TABLE.getVolume(new 
Path(file:///a/accumulo/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(file:/a/accumulo), 
FileType.TABLE.getVolume(new 
Path(file:///a/accumulo/tables/2b/t-001/C00.rf)));
 
-Assert.assertEquals(new Path(accumulo/tables/2b/t-001/C00.rf), 
FileType.TABLE.removeVolume(new 
Path(file:/a/accumulo/tables/2b/t-001/C00.rf)));
-Assert.assertEquals(new Path(accumulo/tables/2b/t-001/C00.rf), 
FileType.TABLE.removeVolume(new 
Path(file:///a/accumulo/tables/2b/t-001/C00.rf)));
+// Having an 'accumulo' directory is not a requirement
+Assert.assertEquals(new Path(file:/a), FileType.TABLE.getVolume(new 
Path(file:/a/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(file:///a), FileType.TABLE.getVolume(new 
Path(file:/a/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(file:///a), FileType.TABLE.getVolume(new 
Path(file:///a/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(file:/a), FileType.TABLE.getVolume(new 
Path(file:///a/tables/2b/t-001/C00.rf)));
 
-Assert.assertEquals(new Path(file:/), FileType.TABLE.getVolume(new 
Path(file:/accumulo/tables/2b/t-001/C00.rf)));
-Assert.assertEquals(new Path(file:/), FileType.TABLE.getVolume(new 
Path(file:///accumulo/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(tables/2b/t-001/C00.rf), 
FileType.TABLE.removeVolume(new 
Path(file:/a/accumulo/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(tables/2b/t-001/C00.rf), 
FileType.TABLE.removeVolume(new 
Path(file:///a/accumulo/tables/2b/t-001/C00.rf)));
 
-Assert.assertEquals(new Path(file:/a), FileType.WAL.getVolume(new 
Path(file:/a/accumulo/wal/1.2.3.4/aaa-bbb-ccc-ddd)));
+// Having an 'accumulo' directory is not a requirement
+Assert.assertEquals(new Path(tables/2b/t-001/C00.rf), 
FileType.TABLE.removeVolume(new Path(file:/a/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(tables/2b/t-001/C00.rf), 
FileType.TABLE.removeVolume(new Path(file:///a/tables/2b/t-001/C00.rf)));
+
+Assert.assertEquals(new Path(file:/accumulo), 
FileType.TABLE.getVolume(new Path(file:/accumulo/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(file:/accumulo), 
FileType.TABLE.getVolume(new Path(file:///accumulo/tables/2b/t-001/C00.rf)));
+
+// Having an 'accumulo' directory is not a requirement
+Assert.assertEquals(new Path(file:/), FileType.TABLE.getVolume(new 
Path(file:/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(file:/), FileType.TABLE.getVolume(new 
Path(file:///tables/2b/t-001/C00.rf)));
+
+Assert.assertEquals(new Path(file:/a), FileType.WAL.getVolume(new 
Path(file:/a/wal/1.2.3.4/aaa-bbb-ccc-ddd)));
 
 Assert.assertNull(FileType.WAL.getVolume(new 
Path(1.2.3.4/aaa-bbb-ccc-ddd)));
 Assert.assertNull(FileType.TABLE.getVolume(new 
Path(../2b/t-001/C00.rf)));
 Assert.assertNull(FileType.TABLE.getVolume(new Path(/t-001/C00.rf)));
 
-Assert.assertEquals(new Path(hdfs://nn1/), FileType.TABLE.getVolume(new 
Path(hdfs://nn1/accumulo/tables/2b/t-001/C00.rf)));
-Assert.assertEquals(new Path(hdfs://nn1/a/), 
FileType.TABLE.getVolume(new 
Path(hdfs://nn1/a/accumulo/tables/2b/t-001/C00.rf)));
+Assert.assertEquals(new Path(hdfs://nn1/accumulo), 
FileType.TABLE.getVolume(new 
Path(hdfs://nn1/accumulo/tables/2b/t-001/C00.rf)));
+

[11/25] git commit: ACCUMULO-2061 Propagate errors on delete or mkdirs failure.

2014-03-20 Thread elserj
ACCUMULO-2061 Propagate errors on delete or mkdirs failure.


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 7d48b1adec6b124054f64ca0c87913ba5a4b6b7e
Parents: 550e5e6
Author: Josh Elser els...@apache.org
Authored: Wed Mar 12 16:19:19 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:19 2014 -0400

--
 .../org/apache/accumulo/server/util/ChangeSecret.java | 10 --
 1 file changed, 8 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/7d48b1ad/server/base/src/main/java/org/apache/accumulo/server/util/ChangeSecret.java
--
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/util/ChangeSecret.java 
b/server/base/src/main/java/org/apache/accumulo/server/util/ChangeSecret.java
index f0dcd14..2926a3f 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/util/ChangeSecret.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/util/ChangeSecret.java
@@ -147,8 +147,14 @@ public class ChangeSecret {
 // Need to recreate the instanceId on all of them to keep consistency
 for (Volume v : fs.getVolumes()) {
   final Path instanceId = ServerConstants.getInstanceIdLocation(v);
-  v.getFileSystem().delete(instanceId, true);
-  v.getFileSystem().mkdirs(instanceId);
+  if (!v.getFileSystem().delete(instanceId, true)) {
+throw new IOException(Could not recursively delete  + instanceId);
+  }
+
+  if (!v.getFileSystem().mkdirs(instanceId)) {
+throw new IOException(Could not create directory  + instanceId);
+  }
+
   v.getFileSystem().create(new Path(instanceId, newInstanceId)).close();
 }
   }



[12/25] git commit: ACCUMULO-2061 Only append a trailing slash when one doesn't exist on the base dir

2014-03-20 Thread elserj
ACCUMULO-2061 Only append a trailing slash when one doesn't exist on the base 
dir


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

Branch: refs/heads/master
Commit: 492768d38221af64b71ba37bb8979d7bb841e738
Parents: 7d48b1a
Author: Josh Elser els...@apache.org
Authored: Wed Mar 12 16:25:19 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:19 2014 -0400

--
 .../java/org/apache/accumulo/core/file/rfile/PrintInfo.java| 2 +-
 .../org/apache/accumulo/core/volume/VolumeConfiguration.java   | 6 +-
 2 files changed, 6 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/492768d3/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java 
b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
index 7c0f067..7ed8f34 100644
--- a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
+++ b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
@@ -52,7 +52,7 @@ public class PrintInfo {
 
 @SuppressWarnings(deprecation)
 AccumuloConfiguration aconf = AccumuloConfiguration.getSiteConfiguration();
-// TODO This will only work for RFiles in HDFS when the filesystem is 
defined in the core-site.xml
+// TODO ACCUMULO-2462 This will only work for RFiles in HDFS when the 
filesystem is defined in the core-site.xml
 // on the classpath if a path, and not a URI, is given
 FileSystem hadoopFs = VolumeConfiguration.getDefaultVolume(conf, 
aconf).getFileSystem();
 FileSystem localFs  = FileSystem.getLocal(conf);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/492768d3/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
index 5db5bb2..71ad611 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
@@ -123,7 +123,11 @@ public class VolumeConfiguration {
   suffix = suffix.substring(1);
 String result[] = new String[bases.length];
 for (int i = 0; i  bases.length; i++) {
-  result[i] = bases[i] + / + suffix;
+  if (bases[i].endsWith(/)) {
+result[i] = bases[i] + suffix;
+  } else {
+result[i] = bases[i] + / + suffix;
+  }
 }
 return result;
   }



[06/25] git commit: ACCUMULO-2451 Update the data version on all volumes instead of just one

2014-03-20 Thread elserj
ACCUMULO-2451 Update the data version on all volumes instead of just one


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

Branch: refs/heads/master
Commit: d45b723f0df73fa3f24d9911da44481615c7298b
Parents: 7c94c08
Author: Josh Elser els...@apache.org
Authored: Wed Mar 12 12:10:44 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:58:41 2014 -0400

--
 .../org/apache/accumulo/server/Accumulo.java| 22 +---
 1 file changed, 14 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/d45b723f/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
--
diff --git a/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java 
b/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
index 48534f0..f7f2298 100644
--- a/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
+++ b/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
@@ -51,15 +51,21 @@ public class Accumulo {
   private static final Logger log = Logger.getLogger(Accumulo.class);
   
   public static synchronized void updateAccumuloVersion(VolumeManager fs) {
-// TODO ACCUMULO-2451 Should update all volumes, not one 
-Volume volume = fs.getVolumes().iterator().next();
-try {
-  if (getAccumuloPersistentVersion(fs) == 
ServerConstants.PREV_DATA_VERSION) {
-fs.create(new Path(ServerConstants.getDataVersionLocation(volume), 
Integer.toString(ServerConstants.DATA_VERSION)));
-fs.delete(new Path(ServerConstants.getDataVersionLocation(volume), 
Integer.toString(ServerConstants.PREV_DATA_VERSION)));
+for (Volume volume : fs.getVolumes()) {
+  try {
+if (getAccumuloPersistentVersion(fs) == 
ServerConstants.PREV_DATA_VERSION) {
+  log.debug(Attempting to upgrade  + volume);
+  Path dataVersionLocation = 
ServerConstants.getDataVersionLocation(volume);
+  fs.create(new Path(dataVersionLocation, 
Integer.toString(ServerConstants.DATA_VERSION))).close();
+
+  Path prevDataVersionLoc = new Path(dataVersionLocation, 
Integer.toString(ServerConstants.PREV_DATA_VERSION));
+  if (!fs.delete(prevDataVersionLoc)) {
+throw new RuntimeException(Could not delete previous data version 
location ( + prevDataVersionLoc + ) for  + volume);
+  }
+}
+  } catch (IOException e) {
+throw new RuntimeException(Unable to set accumulo version: an error 
occurred., e);
   }
-} catch (IOException e) {
-  throw new RuntimeException(Unable to set accumulo version: an error 
occurred., e);
 }
   }
   



[21/25] git commit: ACCUMULO-2061 Co-locate volumes with the MAC dir

2014-03-20 Thread elserj
ACCUMULO-2061 Co-locate volumes with the MAC dir

Losing the volumes on test failure sucks because you can't validate
if we misplaced a file on the wrong volume in the first place.


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

Branch: refs/heads/master
Commit: 53b9f25db94d812f78fd468e88e05da33fdd5190
Parents: 9172f52
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 12:18:42 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:30 2014 -0400

--
 .../java/org/apache/accumulo/test/VolumeIT.java | 26 ++--
 1 file changed, 7 insertions(+), 19 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/53b9f25d/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
--
diff --git a/test/src/test/java/org/apache/accumulo/test/VolumeIT.java 
b/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
index 0a7ef3f..c0e41c1 100644
--- a/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/VolumeIT.java
@@ -22,7 +22,6 @@ import static org.junit.Assert.assertTrue;
 import java.io.BufferedOutputStream;
 import java.io.File;
 import java.io.FileOutputStream;
-import java.io.IOException;
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -65,7 +64,6 @@ import org.apache.accumulo.server.ServerConstants;
 import org.apache.accumulo.server.init.Initialize;
 import org.apache.accumulo.server.util.Admin;
 import org.apache.accumulo.test.functional.ConfigurableMacIT;
-import org.apache.commons.io.FileUtils;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileStatus;
 import org.apache.hadoop.fs.FileSystem;
@@ -73,38 +71,28 @@ import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.fs.RawLocalFileSystem;
 import org.apache.hadoop.io.Text;
 import org.apache.zookeeper.ZooKeeper;
-import org.junit.After;
 import org.junit.Assert;
-import org.junit.BeforeClass;
 import org.junit.Test;
 
 public class VolumeIT extends ConfigurableMacIT {
 
   private static final Text EMPTY = new Text();
   private static final Value EMPTY_VALUE = new Value(new byte[] {});
-  public static File volDirBase;
-  public static Path v1;
-  public static Path v2;
+  private File volDirBase;
+  private Path v1, v2;
 
-  @BeforeClass
-  public static void createVolumeDirs() throws IOException {
-volDirBase = createSharedTestDir(VolumeIT.class.getName() + -volumes);
+  @SuppressWarnings(deprecation)
+  @Override
+  public void configure(MiniAccumuloConfigImpl cfg, Configuration 
hadoopCoreSite) {
+File baseDir = cfg.getDir();
+volDirBase = new File(baseDir, volumes);
 File v1f = new File(volDirBase, v1);
 File v2f = new File(volDirBase, v2);
 v1f.mkdir();
 v2f.mkdir();
 v1 = new Path(file:// + v1f.getAbsolutePath());
 v2 = new Path(file:// + v2f.getAbsolutePath());
-  }
 
-  @After
-  public void clearDirs() throws IOException {
-FileUtils.deleteQuietly(new File(v1.getParent().toUri()));
-  }
-
-  @SuppressWarnings(deprecation)
-  @Override
-  public void configure(MiniAccumuloConfigImpl cfg, Configuration 
hadoopCoreSite) {
 // Run MAC on two locations in the local file system
 URI v1Uri = v1.toUri();
 cfg.setProperty(Property.INSTANCE_DFS_DIR, v1Uri.getPath());



[23/25] git commit: ACCUMULO-2515 ACCUMULO-2489 Apply same fixes from TableConfiguration to NamespaceConfiguration

2014-03-20 Thread elserj
ACCUMULO-2515 ACCUMULO-2489 Apply same fixes from TableConfiguration to
NamespaceConfiguration

Also switch over TableConfigurationUpdateIT to use SimpleMacIT instead
of doing it itself.


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

Branch: refs/heads/master
Commit: cb2f4b58041a4176d907e77a0853e2c3316df4ec
Parents: c25a41f
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 21:14:35 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 21:14:35 2014 -0400

--
 .../server/conf/NamespaceConfiguration.java | 24 ++
 .../test/TableConfigurationUpdateIT.java| 34 
 2 files changed, 24 insertions(+), 34 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/cb2f4b58/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
--
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
 
b/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
index d08d45f..99532ca 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java
@@ -38,13 +38,18 @@ public class NamespaceConfiguration extends 
AccumuloConfiguration {
   private static final Logger log = 
Logger.getLogger(NamespaceConfiguration.class);
 
   private final AccumuloConfiguration parent;
-  private static ZooCache propCache = null;
+  private static volatile ZooCache propCache = null;
+  private static final Object lock = new Object();
   protected String namespaceId = null;
   protected Instance inst = null;
   private SetConfigurationObserver observers;
 
   public NamespaceConfiguration(String namespaceId, AccumuloConfiguration 
parent) {
-inst = HdfsZooInstance.getInstance();
+this(namespaceId, HdfsZooInstance.getInstance(), parent);
+  }
+
+  public NamespaceConfiguration(String namespaceId, Instance inst, 
AccumuloConfiguration parent) {
+this.inst = inst;
 this.parent = parent;
 this.namespaceId = namespaceId;
 this.observers = Collections.synchronizedSet(new 
HashSetConfigurationObserver());
@@ -75,10 +80,17 @@ public class NamespaceConfiguration extends 
AccumuloConfiguration {
 return value;
   }
 
-  private synchronized static ZooCache getPropCache() {
-Instance inst = HdfsZooInstance.getInstance();
-if (propCache == null)
-   propCache = new ZooCache(inst.getZooKeepers(), 
inst.getZooKeepersSessionTimeOut(), new NamespaceConfWatcher(inst));
+  private void initializePropCache() {
+synchronized (lock) {
+  if (propCache == null)
+propCache = new ZooCache(inst.getZooKeepers(), 
inst.getZooKeepersSessionTimeOut(), new NamespaceConfWatcher(inst));
+}
+  }
+
+  private ZooCache getPropCache() {
+if (null == propCache) {
+  initializePropCache();
+}
 return propCache;
   }
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/cb2f4b58/test/src/test/java/org/apache/accumulo/test/TableConfigurationUpdateIT.java
--
diff --git 
a/test/src/test/java/org/apache/accumulo/test/TableConfigurationUpdateIT.java 
b/test/src/test/java/org/apache/accumulo/test/TableConfigurationUpdateIT.java
index c3e3342..5e2b2c9 100644
--- 
a/test/src/test/java/org/apache/accumulo/test/TableConfigurationUpdateIT.java
+++ 
b/test/src/test/java/org/apache/accumulo/test/TableConfigurationUpdateIT.java
@@ -27,50 +27,28 @@ import java.util.concurrent.TimeUnit;
 
 import org.apache.accumulo.core.client.Connector;
 import org.apache.accumulo.core.client.Instance;
-import org.apache.accumulo.core.client.ZooKeeperInstance;
-import org.apache.accumulo.core.client.security.tokens.PasswordToken;
+import org.apache.accumulo.core.client.impl.Namespaces;
 import org.apache.accumulo.core.conf.AccumuloConfiguration;
 import org.apache.accumulo.core.conf.Property;
-import org.apache.accumulo.minicluster.MiniAccumuloCluster;
 import org.apache.accumulo.server.conf.NamespaceConfiguration;
 import org.apache.accumulo.server.conf.TableConfiguration;
-import org.apache.accumulo.server.conf.TableParentConfiguration;
+import org.apache.accumulo.test.functional.SimpleMacIT;
 import org.apache.log4j.Logger;
-import org.junit.After;
 import org.junit.Assert;
-import org.junit.Before;
 import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
 
-public class TableConfigurationUpdateIT {
+public class 

[09/25] git commit: ACCUMULO-2061 Only append a trailing slash when one doesn't exist on the base dir

2014-03-20 Thread elserj
ACCUMULO-2061 Only append a trailing slash when one doesn't exist on the base 
dir


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 492768d38221af64b71ba37bb8979d7bb841e738
Parents: 7d48b1a
Author: Josh Elser els...@apache.org
Authored: Wed Mar 12 16:25:19 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:19 2014 -0400

--
 .../java/org/apache/accumulo/core/file/rfile/PrintInfo.java| 2 +-
 .../org/apache/accumulo/core/volume/VolumeConfiguration.java   | 6 +-
 2 files changed, 6 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/492768d3/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java 
b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
index 7c0f067..7ed8f34 100644
--- a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
+++ b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
@@ -52,7 +52,7 @@ public class PrintInfo {
 
 @SuppressWarnings(deprecation)
 AccumuloConfiguration aconf = AccumuloConfiguration.getSiteConfiguration();
-// TODO This will only work for RFiles in HDFS when the filesystem is 
defined in the core-site.xml
+// TODO ACCUMULO-2462 This will only work for RFiles in HDFS when the 
filesystem is defined in the core-site.xml
 // on the classpath if a path, and not a URI, is given
 FileSystem hadoopFs = VolumeConfiguration.getDefaultVolume(conf, 
aconf).getFileSystem();
 FileSystem localFs  = FileSystem.getLocal(conf);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/492768d3/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
index 5db5bb2..71ad611 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/VolumeConfiguration.java
@@ -123,7 +123,11 @@ public class VolumeConfiguration {
   suffix = suffix.substring(1);
 String result[] = new String[bases.length];
 for (int i = 0; i  bases.length; i++) {
-  result[i] = bases[i] + / + suffix;
+  if (bases[i].endsWith(/)) {
+result[i] = bases[i] + suffix;
+  } else {
+result[i] = bases[i] + / + suffix;
+  }
 }
 return result;
   }



[20/25] git commit: ACCUMULO-2061 Use URI instead of FileSystem as the key to find correct Volumes and ensure that absolute URIs are still valid even after they are not configured.

2014-03-20 Thread elserj
ACCUMULO-2061 Use URI instead of FileSystem as the key to find correct Volumes 
and ensure that absolute URIs
are still valid even after they are not configured.

This will help ensure that FileSystem implementations' hashCode and equals don't
have the potential to collide but still provide unique access back to the 
Volumes
contained in the FileSystem. Added tests for the NonConfiguredVolume and also
for the no-longer-configured volumes.


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

Branch: refs/heads/master
Commit: 42f6b58e58a8fb1a8f05c371844f86c536fe143a
Parents: 492768d
Author: Josh Elser els...@apache.org
Authored: Fri Mar 14 17:06:32 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:59:30 2014 -0400

--
 .../core/volume/NonConfiguredVolume.java| 92 
 .../core/volume/NonConfiguredVolumeTest.java| 71 +++
 .../accumulo/server/fs/VolumeManagerImpl.java   | 25 +++---
 .../java/org/apache/accumulo/test/VolumeIT.java | 55 +++-
 4 files changed, 231 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/42f6b58e/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
new file mode 100644
index 000..7dcbd88
--- /dev/null
+++ 
b/core/src/main/java/org/apache/accumulo/core/volume/NonConfiguredVolume.java
@@ -0,0 +1,92 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.accumulo.core.volume;
+
+import java.io.IOException;
+
+import org.apache.accumulo.core.conf.Property;
+import org.apache.accumulo.core.util.CachedConfiguration;
+import org.apache.hadoop.fs.FileSystem;
+import org.apache.hadoop.fs.Path;
+import org.apache.log4j.Logger;
+
+/**
+ * Volume implementation which represents a Volume for which we have a 
FileSystem
+ * but no base path because it is not configured via {@link 
Property#INSTANCE_VOLUMES}
+ * 
+ * This is useful to handle volumes that have been removed from 
accumulo-site.xml but references
+ * to these volumes have not been updated. This Volume should never be used to 
create new files,
+ * only to read existing files.
+ */
+public class NonConfiguredVolume implements Volume {
+  private static final Logger log = 
Logger.getLogger(NonConfiguredVolume.class);
+
+  private FileSystem fs;
+
+  public NonConfiguredVolume(FileSystem fs) {
+this.fs = fs;
+  }
+
+  @Override
+  public FileSystem getFileSystem() {
+return fs;
+  }
+
+  @Override
+  public String getBasePath() {
+throw new UnsupportedOperationException(No base path known because this 
volume isn't configured in accumulo-site.xml);
+  }
+
+  @Override
+  public Path prefixChild(Path p) {
+throw new UnsupportedOperationException(Cannot prefix path because this 
volume isn't configured in accumulo-site.xml);
+  }
+
+  @Override
+  public Path prefixChild(String p) {
+throw new UnsupportedOperationException(Cannot prefix path because this 
volume isn't configured in accumulo-site.xml);
+  }
+
+  @Override
+  public boolean isValidPath(Path p) {
+try {
+  return fs.equals(p.getFileSystem(CachedConfiguration.getInstance()));
+} catch (IOException e) {
+  log.debug(Cannot determine FileSystem from path:  + p, e);
+}
+return false;
+  }
+
+  @Override
+  public boolean equals(Object o) {
+if (o instanceof NonConfiguredVolume) {
+  NonConfiguredVolume other = (NonConfiguredVolume) o;
+  return this.fs.equals(other.getFileSystem());
+}
+return false;
+  }
+
+  @Override
+  public String toString() {
+return NonConfiguredVolume:  + this.fs.toString();
+  }
+
+  @Override
+  

[07/25] git commit: ACCUMULO-2061 Add comments, javadoc and other cleanup

2014-03-20 Thread elserj
ACCUMULO-2061 Add comments, javadoc and other cleanup


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 550e5e61affc490f0931a8991d40f283b0282115
Parents: d45b723
Author: Josh Elser els...@apache.org
Authored: Wed Mar 12 12:11:48 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 18:58:53 2014 -0400

--
 .../accumulo/core/file/rfile/PrintInfo.java |  9 +-
 .../org/apache/accumulo/core/volume/Volume.java | 15 --
 .../core/volume/VolumeConfiguration.java| 30 
 .../apache/accumulo/core/volume/VolumeImpl.java | 22 +++---
 .../accumulo/server/fs/VolumeManager.java   |  2 --
 .../accumulo/server/fs/VolumeManagerImpl.java   | 19 +++--
 .../apache/accumulo/server/fs/VolumeUtil.java   |  2 +-
 .../accumulo/server/util/ChangeSecret.java  |  7 +++--
 .../accumulo/server/fs/VolumeUtilTest.java  |  2 +-
 9 files changed, 59 insertions(+), 49 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/550e5e61/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
--
diff --git 
a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java 
b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
index 4e39fc7..7c0f067 100644
--- a/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
+++ b/core/src/main/java/org/apache/accumulo/core/file/rfile/PrintInfo.java
@@ -31,10 +31,12 @@ import org.apache.accumulo.core.volume.VolumeConfiguration;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
+import org.apache.log4j.Logger;
 
 import com.beust.jcommander.Parameter;
 
 public class PrintInfo {
+  private static final Logger log = Logger.getLogger(PrintInfo.class);
   
   static class Opts extends Help {
 @Parameter(names = {-d, --dump}, description = dump the key/value 
pairs)
@@ -50,6 +52,8 @@ public class PrintInfo {
 
 @SuppressWarnings(deprecation)
 AccumuloConfiguration aconf = AccumuloConfiguration.getSiteConfiguration();
+// TODO This will only work for RFiles in HDFS when the filesystem is 
defined in the core-site.xml
+// on the classpath if a path, and not a URI, is given
 FileSystem hadoopFs = VolumeConfiguration.getDefaultVolume(conf, 
aconf).getFileSystem();
 FileSystem localFs  = FileSystem.getLocal(conf);
 Opts opts = new Opts();
@@ -68,8 +72,11 @@ public class PrintInfo {
   FileSystem fs;
   if (arg.contains(:))
 fs = path.getFileSystem(conf);
-  else
+  else {
+// Recommend a URI is given for the above todo reason
+log.warn(Attempting to find file across filesystems. Consider 
providing URI instead of path);
 fs = hadoopFs.exists(path) ? hadoopFs : localFs; // fall back to local
+  }
   
   CachableBlockFile.Reader _rdr = new CachableBlockFile.Reader(fs, path, 
conf, null, null, aconf);
   Reader iter = new RFile.Reader(_rdr);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/550e5e61/core/src/main/java/org/apache/accumulo/core/volume/Volume.java
--
diff --git a/core/src/main/java/org/apache/accumulo/core/volume/Volume.java 
b/core/src/main/java/org/apache/accumulo/core/volume/Volume.java
index 08f61d4..17b2bf3 100644
--- a/core/src/main/java/org/apache/accumulo/core/volume/Volume.java
+++ b/core/src/main/java/org/apache/accumulo/core/volume/Volume.java
@@ -21,39 +21,36 @@ import org.apache.hadoop.fs.Path;
 
 /**
  * Encapsulates a {@link FileSystem} and a base {@link Path} within that 
filesystem. This
- * also avoid the necessity to pass around a Configuration. 
+ * also avoid the necessity to pass around a Configuration.
  */
 public interface Volume {
 
   /**
* A {@link FileSystem} that Accumulo will use
-   * @return
*/
   public FileSystem getFileSystem();
 
   /**
* The base path which Accumulo will use within the given {@link FileSystem}
-   * @return
*/
   public String getBasePath();
-  
+
   /**
* Convert the given Path into a Path that is relative to the base path for 
this Volume
-   * @param p
-   * @return
+   * @param p The suffix to use
+   * @return A Path for this Volume with the provided suffix
*/
   public Path prefixChild(Path p);
 
   /**
* Convert the given child path into a Path that is relative to the base 
path for this Volume
-   * @param p
-   * @return
+   * @param p The suffix to use
+   * 

[25/25] git commit: Merge branch '1.6.0-SNAPSHOT'

2014-03-20 Thread elserj
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/2dbc14fa
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/2dbc14fa
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/2dbc14fa

Branch: refs/heads/master
Commit: 2dbc14fa9c2da05e97e270af9dfa1b3eaf3a6a50
Parents: 866422d cb2f4b5
Author: Josh Elser els...@apache.org
Authored: Thu Mar 20 22:12:39 2014 -0400
Committer: Josh Elser els...@apache.org
Committed: Thu Mar 20 22:12:39 2014 -0400

--
 .../core/client/admin/TableOperationsImpl.java  |   4 +-
 .../core/client/impl/OfflineScanner.java|   4 +-
 .../org/apache/accumulo/core/conf/Property.java |   2 +
 .../accumulo/core/file/VolumeConfiguration.java | 112 
 .../accumulo/core/file/rfile/PrintInfo.java |  16 +-
 .../core/file/rfile/bcfile/PrintInfo.java   |   4 +-
 .../apache/accumulo/core/util/shell/Shell.java  |   4 +-
 .../core/volume/NonConfiguredVolume.java|  80 +
 .../org/apache/accumulo/core/volume/Volume.java |  57 ++
 .../core/volume/VolumeConfiguration.java| 161 +
 .../apache/accumulo/core/volume/VolumeImpl.java | 107 
 .../apache/accumulo/core/zookeeper/ZooUtil.java |   4 +-
 .../core/volume/NonConfiguredVolumeTest.java|  68 
 .../org/apache/accumulo/server/Accumulo.java|  34 +++-
 .../apache/accumulo/server/ServerConstants.java |  50 +++---
 .../accumulo/server/client/BulkImporter.java|   4 +-
 .../accumulo/server/client/HdfsZooInstance.java |  18 +-
 .../server/conf/NamespaceConfiguration.java |  24 ++-
 .../accumulo/server/conf/ZooConfiguration.java  |  16 +-
 .../accumulo/server/fs/VolumeManager.java   |  19 +-
 .../accumulo/server/fs/VolumeManagerImpl.java   | 173 +--
 .../apache/accumulo/server/fs/VolumeUtil.java   |  25 ++-
 .../apache/accumulo/server/init/Initialize.java |  18 +-
 .../server/master/recovery/HadoopLogCloser.java |   2 +-
 .../server/master/recovery/MapRLogCloser.java   |   2 +-
 .../accumulo/server/util/ChangeSecret.java  |  25 ++-
 .../apache/accumulo/server/util/FileUtil.java   |  12 +-
 .../accumulo/server/util/LocalityCheck.java |   2 +-
 .../accumulo/server/util/TabletOperations.java  |   4 +-
 .../accumulo/server/util/ZooKeeperMain.java |   2 +-
 .../accumulo/server/ServerConstantsTest.java|  12 +-
 .../apache/accumulo/server/fs/FileTypeTest.java |  48 +++--
 .../accumulo/server/fs/VolumeUtilTest.java  |  89 +-
 .../accumulo/gc/GarbageCollectionTest.java  |  65 +++
 .../accumulo/master/tableOps/ExportTable.java   |   2 +-
 .../accumulo/master/tableOps/ImportTable.java   |   2 +-
 .../monitor/servlets/DefaultServlet.java|   6 +-
 .../tserver/BulkFailedCopyProcessor.java|  27 +--
 .../org/apache/accumulo/tserver/Compactor.java  |   4 +-
 .../apache/accumulo/tserver/FileManager.java|   2 +-
 .../org/apache/accumulo/tserver/Tablet.java |   4 +-
 .../apache/accumulo/tserver/TabletServer.java   |   2 +-
 .../compaction/MajorCompactionRequest.java  |   2 +-
 .../apache/accumulo/tserver/log/LogSorter.java  |   2 +-
 .../accumulo/tserver/log/MultiReader.java   |   2 +-
 .../apache/accumulo/tserver/RootFilesTest.java  |   1 +
 .../tserver/TabletServerSyncCheckTest.java  |  14 +-
 .../accumulo/tserver/log/MultiReaderTest.java   |   8 +-
 .../tserver/log/SortedLogRecoveryTest.java  |   9 +-
 .../tserver/log/TestUpgradePathForWALogs.java   |   6 +-
 .../performance/scan/CollectTabletStats.java|   6 +-
 .../test/TableConfigurationUpdateIT.java|  34 +---
 .../java/org/apache/accumulo/test/VolumeIT.java | 105 +++
 .../accumulo/test/functional/BulkFileIT.java|   4 +-
 54 files changed, 1113 insertions(+), 396 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/2dbc14fa/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperationsImpl.java
--

http://git-wip-us.apache.org/repos/asf/accumulo/blob/2dbc14fa/core/src/main/java/org/apache/accumulo/core/client/impl/OfflineScanner.java
--

http://git-wip-us.apache.org/repos/asf/accumulo/blob/2dbc14fa/core/src/main/java/org/apache/accumulo/core/conf/Property.java
--

http://git-wip-us.apache.org/repos/asf/accumulo/blob/2dbc14fa/server/base/src/main/java/org/apache/accumulo/server/Accumulo.java
--

http://git-wip-us.apache.org/repos/asf/accumulo/blob/2dbc14fa/server/base/src/main/java/org/apache/accumulo/server/client/HdfsZooInstance.java

svn commit: r1579871 - /accumulo/site/trunk/content/git.mdtext

2014-03-20 Thread busbey
Author: busbey
Date: Fri Mar 21 02:42:04 2014
New Revision: 1579871

URL: http://svn.apache.org/r1579871
Log:
CMS commit to accumulo by busbey

Modified:
accumulo/site/trunk/content/git.mdtext

Modified: accumulo/site/trunk/content/git.mdtext
URL: 
http://svn.apache.org/viewvc/accumulo/site/trunk/content/git.mdtext?rev=1579871r1=1579870r2=1579871view=diff
==
--- accumulo/site/trunk/content/git.mdtext (original)
+++ accumulo/site/trunk/content/git.mdtext Fri Mar 21 02:42:04 2014
@@ -134,9 +134,9 @@ Jira issue ACCUMULO-12345 that affects 1
 `git fetch  git fetch --tags`
 
 4. For the given issue you intend to work on, choose the 'lowest' fixVersion
-   and create a branch for yourself to work in.
+   and create a branch for yourself to work in. This example is against 
fixVersion 1.5.2.
 
-`git checkout -b ACCUMULO-12345-my-work origin/1.5.1-SNAPSHOT`
+`git checkout -b ACCUMULO-12345-my-work origin/1.5.2-SNAPSHOT`
 
 5. Make commits as you see fit as you fix the issue, referencing the issue name
in the commit message:
@@ -145,14 +145,14 @@ Jira issue ACCUMULO-12345 that affects 1
 
 6. Assuming others are developing against the version you also are, as you
work, or before you create your patch, rebase your branch against the remote
-   to lift your changes to the top of your branch.
+   to lift your changes to the top of your branch. The branch specified here 
should be the same one you used in step 4.
 
-`git pull --rebase origin 1.5.1-SNAPSHOT`
+`git pull --rebase origin 1.5.2-SNAPSHOT`
 
 7. At this point, you can create a patch file from the upstream branch to
-   attach to the ACCUMULO-12345 Jira issue.
+   attach to the ACCUMULO-12345 Jira issue. The branch specified here should 
be teh same one you used in step 4.
 
-`git format-patch 1.5.1-SNAPSHOT --stdout  ACCUMULO-12345.patch`
+`git format-patch --stdout origin/1.5.2-SNAPSHOT  ACCUMULO-12345.patch`
 
 An alternative to creating a patch is submitting a request to pull your changes
 from some repository, e.g. Github. Please include the repository and branch




svn commit: r902642 - in /websites/staging/accumulo/trunk/content: ./ git.html

2014-03-20 Thread buildbot
Author: buildbot
Date: Fri Mar 21 02:42:17 2014
New Revision: 902642

Log:
Staging update by buildbot for accumulo

Modified:
websites/staging/accumulo/trunk/content/   (props changed)
websites/staging/accumulo/trunk/content/git.html

Propchange: websites/staging/accumulo/trunk/content/
--
--- cms:source-revision (original)
+++ cms:source-revision Fri Mar 21 02:42:17 2014
@@ -1 +1 @@
-1579731
+1579871

Modified: websites/staging/accumulo/trunk/content/git.html
==
--- websites/staging/accumulo/trunk/content/git.html (original)
+++ websites/staging/accumulo/trunk/content/git.html Fri Mar 21 02:42:17 2014
@@ -200,8 +200,8 @@ Jira issue ACCUMULO-12345 that affects 1
 /li
 li
 pFor the given issue you intend to work on, choose the 'lowest' fixVersion
-   and create a branch for yourself to work in./p
-pcodegit checkout -b ACCUMULO-12345-my-work 
origin/1.5.1-SNAPSHOT/code/p
+   and create a branch for yourself to work in. This example is against 
fixVersion 1.5.2./p
+pcodegit checkout -b ACCUMULO-12345-my-work 
origin/1.5.2-SNAPSHOT/code/p
 /li
 li
 pMake commits as you see fit as you fix the issue, referencing the issue name
@@ -211,13 +211,13 @@ Jira issue ACCUMULO-12345 that affects 1
 li
 pAssuming others are developing against the version you also are, as you
work, or before you create your patch, rebase your branch against the remote
-   to lift your changes to the top of your branch./p
-pcodegit pull --rebase origin 1.5.1-SNAPSHOT/code/p
+   to lift your changes to the top of your branch. The branch specified here 
should be the same one you used in step 4./p
+pcodegit pull --rebase origin 1.5.2-SNAPSHOT/code/p
 /li
 li
 pAt this point, you can create a patch file from the upstream branch to
-   attach to the ACCUMULO-12345 Jira issue./p
-pcodegit format-patch 1.5.1-SNAPSHOT --stdout gt; 
ACCUMULO-12345.patch/code/p
+   attach to the ACCUMULO-12345 Jira issue. The branch specified here should 
be teh same one you used in step 4./p
+pcodegit format-patch --stdout origin/1.5.2-SNAPSHOT gt; 
ACCUMULO-12345.patch/code/p
 /li
 /ol
 pAn alternative to creating a patch is submitting a request to pull your 
changes




svn commit: r902643 - in /websites/production/accumulo/content: ./ 1.4/apidocs/ 1.5/apidocs/

2014-03-20 Thread busbey
Author: busbey
Date: Fri Mar 21 02:43:19 2014
New Revision: 902643

Log:
updating format-patch command in contributor section due to multiple 
contributors running into not having a local branch of a SNAPSHOT version.

Added:
websites/production/accumulo/content/
  - copied from r902642, websites/staging/accumulo/trunk/content/
websites/production/accumulo/content/1.4/apidocs/
  - copied from r902642, websites/production/accumulo/content/1.4/apidocs/
websites/production/accumulo/content/1.5/apidocs/
  - copied from r902642, websites/production/accumulo/content/1.5/apidocs/



[3/3] git commit: Merge branch '1.6.0-SNAPSHOT'

2014-03-20 Thread busbey
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/ac2ddc53
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/ac2ddc53
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/ac2ddc53

Branch: refs/heads/master
Commit: ac2ddc53ba0aaa25e39422b8856d85739e3df5aa
Parents: 2dbc14f 11d2dcf
Author: Sean Busbey bus...@cloudera.com
Authored: Thu Mar 20 23:54:43 2014 -0500
Committer: Sean Busbey bus...@cloudera.com
Committed: Thu Mar 20 23:54:43 2014 -0500

--
 .../accumulo/server/util/MetadataTableUtil.java | 24 ++--
 1 file changed, 12 insertions(+), 12 deletions(-)
--




[1/3] git commit: ACCUMULO-2513 - Inconsistent use of getBytes in MetadataTableUtil

2014-03-20 Thread busbey
Repository: accumulo
Updated Branches:
  refs/heads/1.6.0-SNAPSHOT cb2f4b580 - 11d2dcf1a
  refs/heads/master 2dbc14fa9 - ac2ddc53b


ACCUMULO-2513 - Inconsistent use of getBytes in MetadataTableUtil

Signed-off-by: Sean Busbey bus...@cloudera.com


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

Branch: refs/heads/1.6.0-SNAPSHOT
Commit: 11d2dcf1ab0038660bcfc46e3ceb023420e23776
Parents: cb2f4b5
Author: Al Krinker al.krin...@gmail.com
Authored: Thu Mar 20 21:32:04 2014 -0400
Committer: Sean Busbey bus...@cloudera.com
Committed: Thu Mar 20 21:50:56 2014 -0500

--
 .../accumulo/server/util/MetadataTableUtil.java | 24 ++--
 1 file changed, 12 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/11d2dcf1/server/base/src/main/java/org/apache/accumulo/server/util/MetadataTableUtil.java
--
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/util/MetadataTableUtil.java
 
b/server/base/src/main/java/org/apache/accumulo/server/util/MetadataTableUtil.java
index d49f9bc..760d57f 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/util/MetadataTableUtil.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/util/MetadataTableUtil.java
@@ -120,7 +120,7 @@ public class MetadataTableUtil {
 
   private static void putLockID(ZooLock zooLock, Mutation m) {
 TabletsSection.ServerColumnFamily.LOCK_COLUMN.put(m, new 
Value(zooLock.getLockID().serialize(ZooUtil.getRoot(HdfsZooInstance.getInstance())
 + /)
-.getBytes()));
+.getBytes(Constants.UTF8)));
   }
 
   private static void update(Credentials credentials, Mutation m, KeyExtent 
extent) {
@@ -152,7 +152,7 @@ public class MetadataTableUtil {
   public static void updateTabletFlushID(KeyExtent extent, long flushID, 
Credentials credentials, ZooLock zooLock) {
 if (!extent.isRootTablet()) {
   Mutation m = new Mutation(extent.getMetadataEntry());
-  TabletsSection.ServerColumnFamily.FLUSH_COLUMN.put(m, new Value((flushID 
+ ).getBytes()));
+  TabletsSection.ServerColumnFamily.FLUSH_COLUMN.put(m, new Value((flushID 
+ ).getBytes(Constants.UTF8)));
   update(credentials, zooLock, m, extent);
 }
   }
@@ -160,21 +160,21 @@ public class MetadataTableUtil {
   public static void updateTabletCompactID(KeyExtent extent, long compactID, 
Credentials credentials, ZooLock zooLock) {
 if (!extent.isRootTablet()) {
   Mutation m = new Mutation(extent.getMetadataEntry());
-  TabletsSection.ServerColumnFamily.COMPACT_COLUMN.put(m, new 
Value((compactID + ).getBytes()));
+  TabletsSection.ServerColumnFamily.COMPACT_COLUMN.put(m, new 
Value((compactID + ).getBytes(Constants.UTF8)));
   update(credentials, zooLock, m, extent);
 }
   }
 
   public static void updateTabletDataFile(long tid, KeyExtent extent, 
MapFileRef,DataFileValue estSizes, String time, Credentials credentials, 
ZooLock zooLock) {
 Mutation m = new Mutation(extent.getMetadataEntry());
-byte[] tidBytes = Long.toString(tid).getBytes();
+byte[] tidBytes = Long.toString(tid).getBytes(Constants.UTF8);
 
 for (EntryFileRef,DataFileValue entry : estSizes.entrySet()) {
   Text file = entry.getKey().meta();
   m.put(DataFileColumnFamily.NAME, file, new 
Value(entry.getValue().encode()));
   m.put(TabletsSection.BulkFileColumnFamily.NAME, file, new 
Value(tidBytes));
 }
-TabletsSection.ServerColumnFamily.TIME_COLUMN.put(m, new 
Value(time.getBytes()));
+TabletsSection.ServerColumnFamily.TIME_COLUMN.put(m, new 
Value(time.getBytes(Constants.UTF8)));
 update(credentials, zooLock, m, extent);
   }
 
@@ -187,8 +187,8 @@ public class MetadataTableUtil {
   public static void addTablet(KeyExtent extent, String path, Credentials 
credentials, char timeType, ZooLock lock) {
 Mutation m = extent.getPrevRowUpdateMutation();
 
-TabletsSection.ServerColumnFamily.DIRECTORY_COLUMN.put(m, new 
Value(path.getBytes()));
-TabletsSection.ServerColumnFamily.TIME_COLUMN.put(m, new Value((timeType + 
0).getBytes()));
+TabletsSection.ServerColumnFamily.DIRECTORY_COLUMN.put(m, new 
Value(path.getBytes(Constants.UTF8)));
+TabletsSection.ServerColumnFamily.TIME_COLUMN.put(m, new Value((timeType + 
0).getBytes(Constants.UTF8)));
 
 update(credentials, lock, m, extent);
   }
@@ -269,7 +269,7 @@ public class MetadataTableUtil {
   public static void splitTablet(KeyExtent extent, Text oldPrevEndRow, double 
splitRatio, Credentials credentials, ZooLock zooLock) {
 Mutation m = extent.getPrevRowUpdateMutation(); //
 
-

[2/3] git commit: ACCUMULO-2513 - Inconsistent use of getBytes in MetadataTableUtil

2014-03-20 Thread busbey
ACCUMULO-2513 - Inconsistent use of getBytes in MetadataTableUtil

Signed-off-by: Sean Busbey bus...@cloudera.com


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

Branch: refs/heads/master
Commit: 11d2dcf1ab0038660bcfc46e3ceb023420e23776
Parents: cb2f4b5
Author: Al Krinker al.krin...@gmail.com
Authored: Thu Mar 20 21:32:04 2014 -0400
Committer: Sean Busbey bus...@cloudera.com
Committed: Thu Mar 20 21:50:56 2014 -0500

--
 .../accumulo/server/util/MetadataTableUtil.java | 24 ++--
 1 file changed, 12 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/accumulo/blob/11d2dcf1/server/base/src/main/java/org/apache/accumulo/server/util/MetadataTableUtil.java
--
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/util/MetadataTableUtil.java
 
b/server/base/src/main/java/org/apache/accumulo/server/util/MetadataTableUtil.java
index d49f9bc..760d57f 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/util/MetadataTableUtil.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/util/MetadataTableUtil.java
@@ -120,7 +120,7 @@ public class MetadataTableUtil {
 
   private static void putLockID(ZooLock zooLock, Mutation m) {
 TabletsSection.ServerColumnFamily.LOCK_COLUMN.put(m, new 
Value(zooLock.getLockID().serialize(ZooUtil.getRoot(HdfsZooInstance.getInstance())
 + /)
-.getBytes()));
+.getBytes(Constants.UTF8)));
   }
 
   private static void update(Credentials credentials, Mutation m, KeyExtent 
extent) {
@@ -152,7 +152,7 @@ public class MetadataTableUtil {
   public static void updateTabletFlushID(KeyExtent extent, long flushID, 
Credentials credentials, ZooLock zooLock) {
 if (!extent.isRootTablet()) {
   Mutation m = new Mutation(extent.getMetadataEntry());
-  TabletsSection.ServerColumnFamily.FLUSH_COLUMN.put(m, new Value((flushID 
+ ).getBytes()));
+  TabletsSection.ServerColumnFamily.FLUSH_COLUMN.put(m, new Value((flushID 
+ ).getBytes(Constants.UTF8)));
   update(credentials, zooLock, m, extent);
 }
   }
@@ -160,21 +160,21 @@ public class MetadataTableUtil {
   public static void updateTabletCompactID(KeyExtent extent, long compactID, 
Credentials credentials, ZooLock zooLock) {
 if (!extent.isRootTablet()) {
   Mutation m = new Mutation(extent.getMetadataEntry());
-  TabletsSection.ServerColumnFamily.COMPACT_COLUMN.put(m, new 
Value((compactID + ).getBytes()));
+  TabletsSection.ServerColumnFamily.COMPACT_COLUMN.put(m, new 
Value((compactID + ).getBytes(Constants.UTF8)));
   update(credentials, zooLock, m, extent);
 }
   }
 
   public static void updateTabletDataFile(long tid, KeyExtent extent, 
MapFileRef,DataFileValue estSizes, String time, Credentials credentials, 
ZooLock zooLock) {
 Mutation m = new Mutation(extent.getMetadataEntry());
-byte[] tidBytes = Long.toString(tid).getBytes();
+byte[] tidBytes = Long.toString(tid).getBytes(Constants.UTF8);
 
 for (EntryFileRef,DataFileValue entry : estSizes.entrySet()) {
   Text file = entry.getKey().meta();
   m.put(DataFileColumnFamily.NAME, file, new 
Value(entry.getValue().encode()));
   m.put(TabletsSection.BulkFileColumnFamily.NAME, file, new 
Value(tidBytes));
 }
-TabletsSection.ServerColumnFamily.TIME_COLUMN.put(m, new 
Value(time.getBytes()));
+TabletsSection.ServerColumnFamily.TIME_COLUMN.put(m, new 
Value(time.getBytes(Constants.UTF8)));
 update(credentials, zooLock, m, extent);
   }
 
@@ -187,8 +187,8 @@ public class MetadataTableUtil {
   public static void addTablet(KeyExtent extent, String path, Credentials 
credentials, char timeType, ZooLock lock) {
 Mutation m = extent.getPrevRowUpdateMutation();
 
-TabletsSection.ServerColumnFamily.DIRECTORY_COLUMN.put(m, new 
Value(path.getBytes()));
-TabletsSection.ServerColumnFamily.TIME_COLUMN.put(m, new Value((timeType + 
0).getBytes()));
+TabletsSection.ServerColumnFamily.DIRECTORY_COLUMN.put(m, new 
Value(path.getBytes(Constants.UTF8)));
+TabletsSection.ServerColumnFamily.TIME_COLUMN.put(m, new Value((timeType + 
0).getBytes(Constants.UTF8)));
 
 update(credentials, lock, m, extent);
   }
@@ -269,7 +269,7 @@ public class MetadataTableUtil {
   public static void splitTablet(KeyExtent extent, Text oldPrevEndRow, double 
splitRatio, Credentials credentials, ZooLock zooLock) {
 Mutation m = extent.getPrevRowUpdateMutation(); //
 
-TabletsSection.TabletColumnFamily.SPLIT_RATIO_COLUMN.put(m, new 
Value(Double.toString(splitRatio).getBytes()));
+

svn commit: r902652 - in /websites/staging/accumulo/trunk/content: ./ people.html

2014-03-20 Thread buildbot
Author: buildbot
Date: Fri Mar 21 05:03:26 2014
New Revision: 902652

Log:
Staging update by buildbot for accumulo

Modified:
websites/staging/accumulo/trunk/content/   (props changed)
websites/staging/accumulo/trunk/content/people.html

Propchange: websites/staging/accumulo/trunk/content/
--
--- cms:source-revision (original)
+++ cms:source-revision Fri Mar 21 05:03:26 2014
@@ -1 +1 @@
-1579871
+1579887

Modified: websites/staging/accumulo/trunk/content/people.html
==
--- websites/staging/accumulo/trunk/content/people.html (original)
+++ websites/staging/accumulo/trunk/content/people.html Fri Mar 21 05:03:26 2014
@@ -146,6 +146,7 @@ tr:nth-child(2n+1) {
 table
   trthusername/ththname/ththorganization/ththtimezone/th/tr
   trtd/tdtdAaron Glahe/tdtda 
href=http://www.data-tactics.com/Data Tatics/a/tdtdET (a 
href=http://www.timeanddate.com/library/abbreviations/timezones/na/est.html-5/a
 / a 
href=http://www.timeanddate.com/library/abbreviations/timezones/na/edt.html-4/a)/td/tr
+  trtd/tdtdAl Krinker/tdtd/tdtdET (a 
href=http://www.timeanddate.com/library/abbreviations/timezones/na/est.html-5/a
 / a 
href=http://www.timeanddate.com/library/abbreviations/timezones/na/edt.html-4/a)/td/tr
   trtd/tdtdAlex Moundalexis/tdtda 
href=http://www.cloudera.com;Cloudera/a/tdtdET (a 
href=http://www.timeanddate.com/library/abbreviations/timezones/na/est.html-5/a
 / a 
href=http://www.timeanddate.com/library/abbreviations/timezones/na/edt.html-4/a)/td/tr
   trtd/tdtdArshak Navruzyan/tdtda 
href=http://www.argyledata.com/;Argyle Data/a/tdtd/td/tr
   trtd/tdtdChris Bennight/tdtd/tdtd/td/tr