Merge branch '1.6' into 1.7

Conflicts:
        core/src/main/java/org/apache/accumulo/core/Constants.java
        core/src/test/java/org/apache/accumulo/core/util/ByteBufferUtilTest.java
        test/src/test/java/org/apache/accumulo/harness/MiniClusterHarness.java
        test/src/test/java/org/apache/accumulo/test/functional/DeleteIT.java
        test/src/test/java/org/apache/accumulo/test/functional/ReadWriteIT.java
        test/src/test/java/org/apache/accumulo/test/functional/RestartIT.java
        
test/src/test/java/org/apache/accumulo/test/functional/RestartStressIT.java
        test/src/test/java/org/apache/accumulo/test/functional/SplitIT.java
        
trace/src/main/java/org/apache/accumulo/trace/instrument/receivers/ZooSpanClient.java


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

Branch: refs/heads/master
Commit: 4af87bfc718f958f19ddc09354f6b55f87809e91
Parents: 668c340 46958bf
Author: Christopher Tubbs <ctubb...@apache.org>
Authored: Tue Feb 2 21:35:21 2016 -0500
Committer: Christopher Tubbs <ctubb...@apache.org>
Committed: Tue Feb 2 21:35:21 2016 -0500

----------------------------------------------------------------------
 .../core/file/rfile/VisMetricsGatherer.java       |  5 +++--
 .../accumulo/core/util/ByteBufferUtilTest.java    | 18 +++++++++---------
 .../core/util/UnsynchronizedBufferTest.java       | 10 +++++-----
 .../apache/accumulo/proxy/ProxyServerTest.java    |  5 ++---
 .../server/util/FileSystemMonitorTest.java        |  3 +--
 .../vfs/providers/HdfsFileContentInfoFactory.java |  4 +++-
 .../classloader/vfs/providers/HdfsFileSystem.java |  4 +++-
 .../vfs/providers/HdfsRandomAccessContent.java    |  5 +++--
 .../accumulo/harness/MiniClusterHarness.java      |  4 ++--
 .../accumulo/test/AccumuloOutputFormatIT.java     |  2 +-
 .../apache/accumulo/test/ConditionalWriterIT.java |  6 +++---
 .../apache/accumulo/test/TransportCachingIT.java  |  2 +-
 .../test/functional/BulkSplitOptimizationIT.java  |  2 +-
 .../apache/accumulo/test/functional/DeleteIT.java |  5 ++---
 .../accumulo/test/functional/ExamplesIT.java      |  2 +-
 .../accumulo/test/functional/ReadWriteIT.java     |  6 +++---
 .../accumulo/test/functional/RestartIT.java       | 11 +++++------
 .../accumulo/test/functional/RestartStressIT.java |  7 +++----
 .../apache/accumulo/test/functional/ScanIdIT.java |  2 +-
 .../apache/accumulo/test/functional/SplitIT.java  |  7 +++----
 20 files changed, 55 insertions(+), 55 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/core/src/main/java/org/apache/accumulo/core/file/rfile/VisMetricsGatherer.java
----------------------------------------------------------------------
diff --cc 
core/src/main/java/org/apache/accumulo/core/file/rfile/VisMetricsGatherer.java
index 6050e41,0000000..8c8c949
mode 100644,000000..100644
--- 
a/core/src/main/java/org/apache/accumulo/core/file/rfile/VisMetricsGatherer.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/file/rfile/VisMetricsGatherer.java
@@@ -1,172 -1,0 +1,173 @@@
 +/*
 + * 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.file.rfile;
 +
++import static java.nio.charset.StandardCharsets.UTF_8;
++
 +import java.io.PrintStream;
 +import java.util.ArrayList;
 +import java.util.HashMap;
 +import java.util.Map;
 +import java.util.Map.Entry;
 +
 +import org.apache.accumulo.core.data.ArrayByteSequence;
 +import org.apache.accumulo.core.data.ByteSequence;
 +import org.apache.accumulo.core.data.Key;
 +import org.apache.accumulo.core.data.Value;
 +import org.apache.hadoop.io.Text;
 +
- import com.google.common.base.Charsets;
 +import com.google.common.hash.HashCode;
 +import com.google.common.hash.HashFunction;
 +import com.google.common.hash.Hashing;
 +import com.google.common.util.concurrent.AtomicLongMap;
 +
 +/**
 + * This class provides visibility metrics per locality group. The Map in 
getMetrics() maps the locality group name to an ArrayList of VisibilityMetric 
objects.
 + * These contain the components of a visibility metric; the visibility as a 
String, the number of times that is seen in a locality group, the percentage of 
keys
 + * that contain that visibility in the locality group, the number of blocks 
in the locality group that contain the visibility, and the percentage of blocks 
in
 + * the locality group that contain the visibility.
 + */
 +public class VisMetricsGatherer implements 
MetricsGatherer<Map<String,ArrayList<VisibilityMetric>>> {
 +
 +  protected Map<String,AtomicLongMap<String>> metric;
 +  protected Map<String,AtomicLongMap<String>> blocks;
 +  protected ArrayList<Long> numEntries;
 +  protected ArrayList<Integer> numBlocks;
 +  private ArrayList<String> inBlock;
 +  protected ArrayList<String> localityGroups;
 +  private int numLG;
 +  private Map<String,ArrayList<ByteSequence>> localityGroupCF;
 +
 +  public VisMetricsGatherer() {
 +    metric = new HashMap<>();
 +    blocks = new HashMap<>();
 +    numEntries = new ArrayList<>();
 +    numBlocks = new ArrayList<>();
 +    inBlock = new ArrayList<>();
 +    localityGroups = new ArrayList<>();
 +    numLG = 0;
 +  }
 +
 +  @Override
 +  public void init(Map<String,ArrayList<ByteSequence>> cf) {
 +    localityGroupCF = cf;
 +  }
 +
 +  @Override
 +  public void startLocalityGroup(Text oneCF) {
 +    String name = null;
 +    ByteSequence cf = new ArrayByteSequence(oneCF.toString());
 +    for (Entry<String,ArrayList<ByteSequence>> entry : 
localityGroupCF.entrySet()) {
 +      if (entry.getValue().contains(cf)) {
 +        if (entry.getKey() == null)
 +          name = null;
 +        else
 +          name = entry.getKey().toString();
 +        break;
 +      }
 +    }
 +    localityGroups.add(name);
 +    metric.put(name, AtomicLongMap.create(new HashMap<String,Long>()));
 +    blocks.put(name, AtomicLongMap.create(new HashMap<String,Long>()));
 +    numLG++;
 +    numEntries.add((long) 0);
 +    numBlocks.add(0);
 +  }
 +
 +  @Override
 +  public void addMetric(Key key, Value val) {
 +    String myMetric = key.getColumnVisibility().toString();
 +    String currLG = localityGroups.get(numLG - 1);
 +    if (metric.get(currLG).containsKey(myMetric)) {
 +      metric.get(currLG).getAndIncrement(myMetric);
 +    } else
 +      metric.get(currLG).put(myMetric, 1);
 +
 +    numEntries.set(numLG - 1, numEntries.get(numLG - 1) + 1);
 +
 +    if (!inBlock.contains(myMetric) && 
blocks.get(currLG).containsKey(myMetric)) {
 +      blocks.get(currLG).incrementAndGet(myMetric);
 +      inBlock.add(myMetric);
 +    } else if (!inBlock.contains(myMetric) && 
!blocks.get(currLG).containsKey(myMetric)) {
 +      blocks.get(currLG).put(myMetric, 1);
 +      inBlock.add(myMetric);
 +    }
 +
 +  }
 +
 +  @Override
 +  public void startBlock() {
 +    inBlock.clear();
 +    numBlocks.set(numLG - 1, numBlocks.get(numLG - 1) + 1);
 +  }
 +
 +  @Override
 +  public void printMetrics(boolean hash, String metricWord, PrintStream out) {
 +    for (int i = 0; i < numLG; i++) {
 +      String lGName = localityGroups.get(i);
 +      out.print("Locality Group: ");
 +      if (lGName == null)
 +        out.println("<DEFAULT>");
 +      else
 +        out.println(localityGroups.get(i));
 +      out.printf("%-27s", metricWord);
 +      out.println("Number of keys" + "\t   " + "Percent of keys" + "\t" + 
"Number of blocks" + "\t" + "Percent of blocks");
 +      for (Entry<String,Long> entry : metric.get(lGName).asMap().entrySet()) {
 +        HashFunction hf = Hashing.md5();
-         HashCode hc = hf.newHasher().putString(entry.getKey(), 
Charsets.UTF_8).hash();
++        HashCode hc = hf.newHasher().putString(entry.getKey(), UTF_8).hash();
 +        if (hash)
 +          out.printf("%-20s", hc.toString().substring(0, 8));
 +        else
 +          out.printf("%-20s", entry.getKey());
 +        out.print("\t\t" + entry.getValue() + "\t\t\t");
 +        out.printf("%.2f", ((double) entry.getValue() / numEntries.get(i)) * 
100);
 +        out.print("%\t\t\t");
 +
 +        long blocksIn = blocks.get(lGName).get(entry.getKey());
 +
 +        out.print(blocksIn + "\t\t   ");
 +        out.printf("%.2f", ((double) blocksIn / numBlocks.get(i)) * 100);
 +        out.print("%");
 +
 +        out.println("");
 +      }
 +      out.println("Number of keys: " + numEntries.get(i));
 +      out.println();
 +    }
 +  }
 +
 +  @Override
 +  public Map<String,ArrayList<VisibilityMetric>> getMetrics() {
 +    Map<String,ArrayList<VisibilityMetric>> getMetrics = new HashMap<>();
 +    for (int i = 0; i < numLG; i++) {
 +      String lGName = localityGroups.get(i);
 +      ArrayList<VisibilityMetric> rows = new ArrayList<>();
 +      for (Entry<String,Long> entry : metric.get(lGName).asMap().entrySet()) {
 +        long vis = entry.getValue();
 +        double visPer = ((double) entry.getValue() / numEntries.get(i)) * 100;
 +
 +        long blocksIn = blocks.get(lGName).get(entry.getKey());
 +        double blocksPer = ((double) blocksIn / numBlocks.get(i)) * 100;
 +
 +        rows.add(new VisibilityMetric(entry.getKey(), vis, visPer, blocksIn, 
blocksPer));
 +      }
 +      getMetrics.put(lGName, rows);
 +    }
 +    return getMetrics;
 +  }
 +
 +}

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/core/src/test/java/org/apache/accumulo/core/util/ByteBufferUtilTest.java
----------------------------------------------------------------------
diff --cc 
core/src/test/java/org/apache/accumulo/core/util/ByteBufferUtilTest.java
index f27a1ba,a21f598..5a8c0dc
--- a/core/src/test/java/org/apache/accumulo/core/util/ByteBufferUtilTest.java
+++ b/core/src/test/java/org/apache/accumulo/core/util/ByteBufferUtilTest.java
@@@ -17,9 -17,8 +17,11 @@@
  
  package org.apache.accumulo.core.util;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
+ 
 +import java.io.ByteArrayOutputStream;
 +import java.io.DataOutputStream;
 +import java.io.IOException;
  import java.nio.ByteBuffer;
  import java.util.Collections;
  import java.util.List;
@@@ -40,20 -37,9 +40,20 @@@ public class ByteBufferUtilTest 
  
      List<byte[]> bal = 
ByteBufferUtil.toBytesList(Collections.singletonList(bb));
      Assert.assertEquals(1, bal.size());
-     Assert.assertEquals(expected, new String(bal.get(0), Charsets.UTF_8));
+     Assert.assertEquals(expected, new String(bal.get(0), UTF_8));
  
      Assert.assertEquals(new ArrayByteSequence(expected), new 
ArrayByteSequence(bb));
 +
 +    ByteArrayOutputStream baos = new ByteArrayOutputStream();
 +    DataOutputStream dos = new DataOutputStream(baos);
 +    try {
 +      ByteBufferUtil.write(dos, bb);
 +      dos.close();
 +    } catch (IOException e) {
 +      throw new RuntimeException(e);
 +    }
 +
-     Assert.assertEquals(expected, new String(baos.toByteArray(), 
Charsets.UTF_8));
++    Assert.assertEquals(expected, new String(baos.toByteArray(), UTF_8));
    }
  
    @Test

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/core/src/test/java/org/apache/accumulo/core/util/UnsynchronizedBufferTest.java
----------------------------------------------------------------------
diff --cc 
core/src/test/java/org/apache/accumulo/core/util/UnsynchronizedBufferTest.java
index 6416219,64044f9..94feb43
--- 
a/core/src/test/java/org/apache/accumulo/core/util/UnsynchronizedBufferTest.java
+++ 
b/core/src/test/java/org/apache/accumulo/core/util/UnsynchronizedBufferTest.java
@@@ -16,6 -16,8 +16,8 @@@
   */
  package org.apache.accumulo.core.util;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
+ 
  import java.nio.ByteBuffer;
  
  import org.junit.Assert;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/proxy/src/test/java/org/apache/accumulo/proxy/ProxyServerTest.java
----------------------------------------------------------------------
diff --cc proxy/src/test/java/org/apache/accumulo/proxy/ProxyServerTest.java
index 24201e7,956044c..07fdc45
--- a/proxy/src/test/java/org/apache/accumulo/proxy/ProxyServerTest.java
+++ b/proxy/src/test/java/org/apache/accumulo/proxy/ProxyServerTest.java
@@@ -16,8 -16,9 +16,9 @@@
   */
  package org.apache.accumulo.proxy;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
+ 
  import java.nio.ByteBuffer;
- import java.nio.charset.Charset;
  import java.util.HashMap;
  import java.util.List;
  import java.util.Map;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/server/base/src/test/java/org/apache/accumulo/server/util/FileSystemMonitorTest.java
----------------------------------------------------------------------
diff --cc 
server/base/src/test/java/org/apache/accumulo/server/util/FileSystemMonitorTest.java
index ec389fd,5b5b7ac..7387035
--- 
a/server/base/src/test/java/org/apache/accumulo/server/util/FileSystemMonitorTest.java
+++ 
b/server/base/src/test/java/org/apache/accumulo/server/util/FileSystemMonitorTest.java
@@@ -16,6 -16,7 +16,7 @@@
   */
  package org.apache.accumulo.server.util;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  import static org.junit.Assert.assertEquals;
  import static org.junit.Assert.assertTrue;
  

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsFileContentInfoFactory.java
----------------------------------------------------------------------
diff --cc 
start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsFileContentInfoFactory.java
index 2621255,b1a4abe..ba96b97
--- 
a/start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsFileContentInfoFactory.java
+++ 
b/start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsFileContentInfoFactory.java
@@@ -16,6 -16,6 +16,8 @@@
   */
  package org.apache.accumulo.start.classloader.vfs.providers;
  
++import static java.nio.charset.StandardCharsets.UTF_8;
++
  import org.apache.commons.vfs2.FileContent;
  import org.apache.commons.vfs2.FileContentInfo;
  import org.apache.commons.vfs2.FileContentInfoFactory;
@@@ -28,8 -28,9 +30,8 @@@ import org.apache.commons.vfs2.impl.Def
   * @since 2.1
   */
  public class HdfsFileContentInfoFactory implements FileContentInfoFactory {
 -  private static final java.nio.charset.Charset UTF_8 = 
java.nio.charset.Charset.forName("UTF-8");
    private static final String CONTENT = "text/plain";
-   private static final String ENCODING = "UTF-8";
+   private static final String ENCODING = UTF_8.name();
  
    /**
     * Creates a FileContentInfo for a the given FileContent.

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsFileSystem.java
----------------------------------------------------------------------
diff --cc 
start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsFileSystem.java
index 26aa5c1,8d45555..a544b4a
--- 
a/start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsFileSystem.java
+++ 
b/start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsFileSystem.java
@@@ -16,6 -16,6 +16,8 @@@
   */
  package org.apache.accumulo.start.classloader.vfs.providers;
  
++import static java.nio.charset.StandardCharsets.UTF_8;
++
  import java.io.IOException;
  import java.io.UnsupportedEncodingException;
  import java.net.URLDecoder;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsRandomAccessContent.java
----------------------------------------------------------------------
diff --cc 
start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsRandomAccessContent.java
index b9b122c,30140ba..b3b58aa
--- 
a/start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsRandomAccessContent.java
+++ 
b/start/src/main/java/org/apache/accumulo/start/classloader/vfs/providers/HdfsRandomAccessContent.java
@@@ -16,6 -16,6 +16,8 @@@
   */
  package org.apache.accumulo.start.classloader.vfs.providers;
  
++import static java.nio.charset.StandardCharsets.UTF_8;
++
  import java.io.BufferedReader;
  import java.io.IOException;
  import java.io.InputStream;
@@@ -113,9 -149,12 +114,9 @@@ public class HdfsRandomAccessContent im
      return this.fis.readInt();
    }
  
 -  /**
 -   * @see java.io.DataInput#readLine()
 -   */
    @Override
    public String readLine() throws IOException {
-     BufferedReader d = new BufferedReader(new InputStreamReader(this.fis, 
Charset.forName("UTF-8")));
+     BufferedReader d = new BufferedReader(new InputStreamReader(this.fis, 
UTF_8));
      return d.readLine();
    }
  

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/harness/MiniClusterHarness.java
----------------------------------------------------------------------
diff --cc test/src/test/java/org/apache/accumulo/harness/MiniClusterHarness.java
index 5d32cb1,5fc8b94..8fa4760
--- a/test/src/test/java/org/apache/accumulo/harness/MiniClusterHarness.java
+++ b/test/src/test/java/org/apache/accumulo/harness/MiniClusterHarness.java
@@@ -16,7 -16,7 +16,8 @@@
   */
  package org.apache.accumulo.harness;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
 +import static org.junit.Assert.assertTrue;
  
  import java.io.BufferedOutputStream;
  import java.io.File;
@@@ -39,11 -33,7 +40,10 @@@ import org.apache.accumulo.server.secur
  import org.apache.accumulo.test.functional.NativeMapIT;
  import org.apache.accumulo.test.util.CertUtils;
  import org.apache.hadoop.conf.Configuration;
 +import org.apache.hadoop.fs.CommonConfigurationKeysPublic;
 +import org.slf4j.Logger;
 +import org.slf4j.LoggerFactory;
  
- import com.google.common.base.Charsets;
  import com.google.common.base.Preconditions;
  
  /**
@@@ -97,29 -69,13 +97,29 @@@ public class MiniClusterHarness 
      return create(testClassName, testMethodName, token, 
MiniClusterConfigurationCallback.NO_CALLBACK);
    }
  
 +  public MiniAccumuloClusterImpl create(String testClassName, String 
testMethodName, AuthenticationToken token, TestingKdc kdc) throws Exception {
 +    return create(testClassName, testMethodName, token, 
MiniClusterConfigurationCallback.NO_CALLBACK, kdc);
 +  }
 +
    public MiniAccumuloClusterImpl create(String testClassName, String 
testMethodName, AuthenticationToken token, MiniClusterConfigurationCallback 
configCallback)
        throws Exception {
 +    return create(testClassName, testMethodName, token, configCallback, null);
 +  }
 +
 +  public MiniAccumuloClusterImpl create(String testClassName, String 
testMethodName, AuthenticationToken token,
 +      MiniClusterConfigurationCallback configCallback, TestingKdc kdc) throws 
Exception {
      Preconditions.checkNotNull(token);
 -    
Preconditions.checkArgument(PasswordToken.class.isAssignableFrom(token.getClass()));
 +    Preconditions.checkArgument(token instanceof PasswordToken || token 
instanceof KerberosToken, "A PasswordToken or KerberosToken is required");
  
 -    String passwd = new String(((PasswordToken) token).getPassword(), UTF_8);
 -    MiniAccumuloConfigImpl cfg = new 
MiniAccumuloConfigImpl(AccumuloClusterIT.createTestDir(testClassName + "_" + 
testMethodName), passwd);
 +    String rootPasswd;
 +    if (token instanceof PasswordToken) {
-       rootPasswd = new String(((PasswordToken) token).getPassword(), 
Charsets.UTF_8);
++      rootPasswd = new String(((PasswordToken) token).getPassword(), UTF_8);
 +    } else {
 +      rootPasswd = UUID.randomUUID().toString();
 +    }
 +
 +    File baseDir = AccumuloClusterIT.createTestDir(testClassName + "_" + 
testMethodName);
 +    MiniAccumuloConfigImpl cfg = new MiniAccumuloConfigImpl(baseDir, 
rootPasswd);
  
      // Enable native maps by default
      cfg.setNativeLibPaths(NativeMapIT.nativeMapLocation().getAbsolutePath());

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/AccumuloOutputFormatIT.java
----------------------------------------------------------------------
diff --cc 
test/src/test/java/org/apache/accumulo/test/AccumuloOutputFormatIT.java
index a2f522e,9d00584..7d67230
--- a/test/src/test/java/org/apache/accumulo/test/AccumuloOutputFormatIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/AccumuloOutputFormatIT.java
@@@ -16,7 -16,7 +16,7 @@@
   */
  package org.apache.accumulo.test;
  
--import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  
  import java.io.File;
  import java.io.IOException;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/ConditionalWriterIT.java
----------------------------------------------------------------------
diff --cc test/src/test/java/org/apache/accumulo/test/ConditionalWriterIT.java
index 15e9d5f,1579b34..94a3d35
--- a/test/src/test/java/org/apache/accumulo/test/ConditionalWriterIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/ConditionalWriterIT.java
@@@ -17,6 -17,7 +17,7 @@@
  
  package org.apache.accumulo.test;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  import static org.junit.Assert.assertTrue;
  
  import java.io.IOException;
@@@ -91,18 -88,15 +92,17 @@@ import org.apache.accumulo.harness.Accu
  import org.apache.accumulo.minicluster.impl.MiniAccumuloClusterImpl;
  import org.apache.accumulo.test.functional.BadIterator;
  import org.apache.accumulo.test.functional.SlowIterator;
 -import org.apache.accumulo.trace.instrument.Span;
 -import org.apache.accumulo.trace.instrument.Trace;
 +import org.apache.accumulo.tracer.TraceDump;
 +import org.apache.accumulo.tracer.TraceDump.Printer;
  import org.apache.accumulo.tracer.TraceServer;
  import org.apache.hadoop.io.Text;
 -import org.apache.log4j.Logger;
  import org.junit.Assert;
  import org.junit.Assume;
 +import org.junit.Before;
  import org.junit.Test;
 +import org.slf4j.Logger;
 +import org.slf4j.LoggerFactory;
  
- import com.google.common.base.Charsets;
  import com.google.common.collect.Iterables;
  
  /**

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/TransportCachingIT.java
----------------------------------------------------------------------
diff --cc test/src/test/java/org/apache/accumulo/test/TransportCachingIT.java
index 5bfb207,ddbd3e8..8bfd5fc
--- a/test/src/test/java/org/apache/accumulo/test/TransportCachingIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/TransportCachingIT.java
@@@ -16,7 -16,7 +16,7 @@@
   */
  package org.apache.accumulo.test;
  
--import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  import static org.junit.Assert.assertFalse;
  import static org.junit.Assert.assertNotNull;
  import static org.junit.Assert.assertTrue;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/functional/BulkSplitOptimizationIT.java
----------------------------------------------------------------------
diff --cc 
test/src/test/java/org/apache/accumulo/test/functional/BulkSplitOptimizationIT.java
index fe26870,442507f..7606083
--- 
a/test/src/test/java/org/apache/accumulo/test/functional/BulkSplitOptimizationIT.java
+++ 
b/test/src/test/java/org/apache/accumulo/test/functional/BulkSplitOptimizationIT.java
@@@ -16,14 -16,14 +16,14 @@@
   */
  package org.apache.accumulo.test.functional;
  
--import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  
 -import java.util.Collections;
 -
 -import org.apache.accumulo.cluster.ClusterServerType;
  import org.apache.accumulo.core.cli.ClientOpts.Password;
  import org.apache.accumulo.core.cli.ScannerOpts;
 +import org.apache.accumulo.core.client.ClientConfiguration;
  import org.apache.accumulo.core.client.Connector;
 +import org.apache.accumulo.core.client.security.tokens.AuthenticationToken;
 +import org.apache.accumulo.core.client.security.tokens.KerberosToken;
  import org.apache.accumulo.core.client.security.tokens.PasswordToken;
  import org.apache.accumulo.core.conf.Property;
  import org.apache.accumulo.core.util.UtilWaitThread;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/functional/DeleteIT.java
----------------------------------------------------------------------
diff --cc test/src/test/java/org/apache/accumulo/test/functional/DeleteIT.java
index 7a8380b,d3d8b79..3200d96
--- a/test/src/test/java/org/apache/accumulo/test/functional/DeleteIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/DeleteIT.java
@@@ -16,9 -16,8 +16,10 @@@
   */
  package org.apache.accumulo.test.functional;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  import static org.junit.Assert.assertEquals;
 +import static org.junit.Assert.assertNull;
 +import static org.junit.Assert.assertTrue;
  
  import org.apache.accumulo.cluster.AccumuloCluster;
  import org.apache.accumulo.core.cli.BatchWriterOpts;
@@@ -49,12 -42,12 +48,12 @@@ public class DeleteIT extends AccumuloC
      Connector c = getConnector();
      String tableName = getUniqueNames(1)[0];
      c.tableOperations().create(tableName);
 -    PasswordToken token = (PasswordToken) getToken();
 -    deleteTest(c, getCluster(), new String(token.getPassword(), UTF_8), 
tableName);
 -    try {
 -      getCluster().getClusterControl().adminStopAll();
 -    } finally {
 -      getCluster().start();
 +    AuthenticationToken token = getAdminToken();
 +    if (token instanceof KerberosToken) {
 +      deleteTest(c, getCluster(), getAdminPrincipal(), null, tableName, 
getAdminUser().getKeytab().getAbsolutePath());
 +    } else if (token instanceof PasswordToken) {
 +      PasswordToken passwdToken = (PasswordToken) token;
-       deleteTest(c, getCluster(), getAdminPrincipal(), new 
String(passwdToken.getPassword(), Charsets.UTF_8), tableName, null);
++      deleteTest(c, getCluster(), getAdminPrincipal(), new 
String(passwdToken.getPassword(), UTF_8), tableName, null);
      }
    }
  

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/functional/ExamplesIT.java
----------------------------------------------------------------------
diff --cc test/src/test/java/org/apache/accumulo/test/functional/ExamplesIT.java
index 257c7c1,3204528..edc6aed
--- a/test/src/test/java/org/apache/accumulo/test/functional/ExamplesIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ExamplesIT.java
@@@ -16,7 -16,7 +16,7 @@@
   */
  package org.apache.accumulo.test.functional;
  
--import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  import static org.junit.Assert.assertEquals;
  import static org.junit.Assert.assertFalse;
  import static org.junit.Assert.assertTrue;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/functional/ReadWriteIT.java
----------------------------------------------------------------------
diff --cc 
test/src/test/java/org/apache/accumulo/test/functional/ReadWriteIT.java
index 65ef479,f0a37e4..a49d43c
--- a/test/src/test/java/org/apache/accumulo/test/functional/ReadWriteIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ReadWriteIT.java
@@@ -16,9 -16,9 +16,10 @@@
   */
  package org.apache.accumulo.test.functional;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  import static org.junit.Assert.assertEquals;
  import static org.junit.Assert.assertFalse;
 +import static org.junit.Assert.assertNotNull;
  import static org.junit.Assert.assertTrue;
  
  import java.io.ByteArrayOutputStream;
@@@ -95,9 -73,6 +96,8 @@@ import org.junit.Test
  import org.slf4j.Logger;
  import org.slf4j.LoggerFactory;
  
- import com.google.common.base.Charsets;
 +import com.google.common.collect.Iterators;
 +
  public class ReadWriteIT extends AccumuloClusterIT {
    private static final Logger log = 
LoggerFactory.getLogger(ReadWriteIT.class);
  
@@@ -246,25 -184,10 +246,25 @@@
        @Override
        public Integer call() {
          try {
 +          ClientConfiguration clientConf = cluster.getClientConfig();
 +          // Invocation is different for SASL. We're only logged in via this 
processes memory (not via some credentials cache on disk)
 +          // Need to pass along the keytab because of that.
 +          if 
(clientConf.getBoolean(ClientProperty.INSTANCE_RPC_SASL_ENABLED.getKey(), 
false)) {
 +            String principal = getAdminPrincipal();
 +            AuthenticationToken token = getAdminToken();
 +            assertTrue("Expected KerberosToken, but was " + token.getClass(), 
token instanceof KerberosToken);
 +            KerberosToken kt = (KerberosToken) token;
 +            assertNotNull("Expected keytab in token", kt.getKeytab());
 +            return control.exec(
 +                TestMultiTableIngest.class,
 +                args("--count", Integer.toString(ROWS), "-i", instance, "-z", 
keepers, "--tablePrefix", prefix, "--keytab", kt.getKeytab().getAbsolutePath(),
 +                    "-u", principal));
 +          }
 +
            return control.exec(
                TestMultiTableIngest.class,
 -              args("--count", "" + ROWS, "-u", "root", "-i", instance, "-z", 
keepers, "-p", new String(((PasswordToken) getToken()).getPassword(), UTF_8),
 -                  "--tablePrefix", prefix));
 +              args("--count", Integer.toString(ROWS), "-u", 
getAdminPrincipal(), "-i", instance, "-z", keepers, "-p", new String(
-                   ((PasswordToken) getAdminToken()).getPassword(), 
Charsets.UTF_8), "--tablePrefix", prefix));
++                  ((PasswordToken) getAdminToken()).getPassword(), UTF_8), 
"--tablePrefix", prefix));
          } catch (IOException e) {
            log.error("Error running MultiTableIngest", e);
            return -1;
@@@ -275,25 -198,10 +275,25 @@@
        @Override
        public Integer call() {
          try {
 +          ClientConfiguration clientConf = cluster.getClientConfig();
 +          // Invocation is different for SASL. We're only logged in via this 
processes memory (not via some credentials cache on disk)
 +          // Need to pass along the keytab because of that.
 +          if 
(clientConf.getBoolean(ClientProperty.INSTANCE_RPC_SASL_ENABLED.getKey(), 
false)) {
 +            String principal = getAdminPrincipal();
 +            AuthenticationToken token = getAdminToken();
 +            assertTrue("Expected KerberosToken, but was " + token.getClass(), 
token instanceof KerberosToken);
 +            KerberosToken kt = (KerberosToken) token;
 +            assertNotNull("Expected keytab in token", kt.getKeytab());
 +            return control.exec(
 +                TestMultiTableIngest.class,
 +                args("--count", Integer.toString(ROWS), "--readonly", "-i", 
instance, "-z", keepers, "--tablePrefix", prefix, "--keytab", kt.getKeytab()
 +                    .getAbsolutePath(), "-u", principal));
 +          }
 +
            return control.exec(
                TestMultiTableIngest.class,
 -              args("--count", "" + ROWS, "--readonly", "-u", "root", "-i", 
instance, "-z", keepers, "-p", new String(
 -                  ((PasswordToken) getToken()).getPassword(), UTF_8), 
"--tablePrefix", prefix));
 +              args("--count", Integer.toString(ROWS), "--readonly", "-u", 
getAdminPrincipal(), "-i", instance, "-z", keepers, "-p", new String(
-                   ((PasswordToken) getAdminToken()).getPassword(), 
Charsets.UTF_8), "--tablePrefix", prefix));
++                  ((PasswordToken) getAdminToken()).getPassword(), UTF_8), 
"--tablePrefix", prefix));
          } catch (IOException e) {
            log.error("Error running MultiTableIngest", e);
            return -1;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/functional/RestartIT.java
----------------------------------------------------------------------
diff --cc test/src/test/java/org/apache/accumulo/test/functional/RestartIT.java
index d1fb9f9,a95c8d0..fba8b6d
--- a/test/src/test/java/org/apache/accumulo/test/functional/RestartIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/RestartIT.java
@@@ -16,6 -16,7 +16,7 @@@
   */
  package org.apache.accumulo.test.functional;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  import static org.junit.Assert.assertEquals;
  
  import java.io.IOException;
@@@ -110,30 -107,12 +109,30 @@@ public class RestartIT extends Accumulo
    public void restartMaster() throws Exception {
      Connector c = getConnector();
      final String tableName = getUniqueNames(1)[0];
 -    OPTS.tableName = tableName;
 -    VOPTS.tableName = tableName;
 +    OPTS.setTableName(tableName);
 +    VOPTS.setTableName(tableName);
      c.tableOperations().create(tableName);
 -    final PasswordToken token = (PasswordToken) getToken();
 +    final AuthenticationToken token = getAdminToken();
      final ClusterControl control = getCluster().getClusterControl();
  
 +    final String[] args;
 +    if (token instanceof PasswordToken) {
 +      byte[] password = ((PasswordToken) token).getPassword();
-       args = new String[] {"-u", getAdminPrincipal(), "-p", new 
String(password, Charsets.UTF_8), "-i", cluster.getInstanceName(), "-z",
-           cluster.getZooKeepers(), "--rows", "" + OPTS.rows, "--table", 
tableName};
++      args = new String[] {"-u", getAdminPrincipal(), "-p", new 
String(password, UTF_8), "-i", cluster.getInstanceName(), "-z", 
cluster.getZooKeepers(),
++          "--rows", "" + OPTS.rows, "--table", tableName};
 +      OPTS.setPrincipal(getAdminPrincipal());
 +      VOPTS.setPrincipal(getAdminPrincipal());
 +    } else if (token instanceof KerberosToken) {
 +      ClusterUser rootUser = getAdminUser();
 +      args = new String[] {"-u", getAdminPrincipal(), "--keytab", 
rootUser.getKeytab().getAbsolutePath(), "-i", cluster.getInstanceName(), "-z",
 +          cluster.getZooKeepers(), "--rows", "" + OPTS.rows, "--table", 
tableName};
 +      ClientConfiguration clientConfig = cluster.getClientConfig();
 +      OPTS.updateKerberosCredentials(clientConfig);
 +      VOPTS.updateKerberosCredentials(clientConfig);
 +    } else {
 +      throw new RuntimeException("Unknown token");
 +    }
 +
      Future<Integer> ret = svc.submit(new Callable<Integer>() {
        @Override
        public Integer call() {
@@@ -209,30 -181,11 +208,30 @@@
    public void restartMasterSplit() throws Exception {
      Connector c = getConnector();
      final String tableName = getUniqueNames(1)[0];
 -    final PasswordToken token = (PasswordToken) getToken();
 +    final AuthenticationToken token = getAdminToken();
      final ClusterControl control = getCluster().getClusterControl();
 -    VOPTS.tableName = tableName;
 +    VOPTS.setTableName(tableName);
      c.tableOperations().create(tableName);
      c.tableOperations().setProperty(tableName, 
Property.TABLE_SPLIT_THRESHOLD.getKey(), "5K");
 +
 +    final String[] args;
 +    if (token instanceof PasswordToken) {
 +      byte[] password = ((PasswordToken) token).getPassword();
-       args = new String[] {"-u", getAdminPrincipal(), "-p", new 
String(password, Charsets.UTF_8), "-i", cluster.getInstanceName(), "-z",
-           cluster.getZooKeepers(), "--rows", Integer.toString(VOPTS.rows), 
"--table", tableName};
++      args = new String[] {"-u", getAdminPrincipal(), "-p", new 
String(password, UTF_8), "-i", cluster.getInstanceName(), "-z", 
cluster.getZooKeepers(),
++          "--rows", Integer.toString(VOPTS.rows), "--table", tableName};
 +      OPTS.setPrincipal(getAdminPrincipal());
 +      VOPTS.setPrincipal(getAdminPrincipal());
 +    } else if (token instanceof KerberosToken) {
 +      ClusterUser rootUser = getAdminUser();
 +      args = new String[] {"-u", getAdminPrincipal(), "--keytab", 
rootUser.getKeytab().getAbsolutePath(), "-i", cluster.getInstanceName(), "-z",
 +          cluster.getZooKeepers(), "--rows", Integer.toString(VOPTS.rows), 
"--table", tableName};
 +      ClientConfiguration clientConfig = cluster.getClientConfig();
 +      OPTS.updateKerberosCredentials(clientConfig);
 +      VOPTS.updateKerberosCredentials(clientConfig);
 +    } else {
 +      throw new RuntimeException("Unknown token");
 +    }
 +
      Future<Integer> ret = svc.submit(new Callable<Integer>() {
        @Override
        public Integer call() {

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/functional/RestartStressIT.java
----------------------------------------------------------------------
diff --cc 
test/src/test/java/org/apache/accumulo/test/functional/RestartStressIT.java
index 68448eb,57456b6..af2eee1
--- 
a/test/src/test/java/org/apache/accumulo/test/functional/RestartStressIT.java
+++ 
b/test/src/test/java/org/apache/accumulo/test/functional/RestartStressIT.java
@@@ -16,8 -16,10 +16,9 @@@
   */
  package org.apache.accumulo.test.functional;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  import static org.junit.Assert.assertEquals;
  
 -import java.util.HashMap;
  import java.util.Map;
  import java.util.concurrent.Callable;
  import java.util.concurrent.ExecutorService;
@@@ -106,19 -104,6 +105,19 @@@ public class RestartStressIT extends Ac
      c.tableOperations().create(tableName);
      c.tableOperations().setProperty(tableName, 
Property.TABLE_SPLIT_THRESHOLD.getKey(), "500K");
      final ClusterControl control = getCluster().getClusterControl();
 +    final String[] args;
 +    if (token instanceof PasswordToken) {
 +      byte[] password = ((PasswordToken) token).getPassword();
-       args = new String[] {"-u", getAdminPrincipal(), "-p", new 
String(password, Charsets.UTF_8), "-i", cluster.getInstanceName(), "-z",
-           cluster.getZooKeepers(), "--rows", "" + VOPTS.rows, "--table", 
tableName};
++      args = new String[] {"-u", getAdminPrincipal(), "-p", new 
String(password, UTF_8), "-i", cluster.getInstanceName(), "-z", 
cluster.getZooKeepers(),
++          "--rows", "" + VOPTS.rows, "--table", tableName};
 +    } else if (token instanceof KerberosToken) {
 +      ClusterUser rootUser = getAdminUser();
 +      args = new String[] {"-u", getAdminPrincipal(), "--keytab", 
rootUser.getKeytab().getAbsolutePath(), "-i", cluster.getInstanceName(), "-z",
 +          cluster.getZooKeepers(), "--rows", "" + VOPTS.rows, "--table", 
tableName};
 +    } else {
 +      throw new RuntimeException("Unrecognized token");
 +    }
 +
      Future<Integer> retCode = svc.submit(new Callable<Integer>() {
        @Override
        public Integer call() {

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/functional/ScanIdIT.java
----------------------------------------------------------------------
diff --cc test/src/test/java/org/apache/accumulo/test/functional/ScanIdIT.java
index 720f87c,726ab8b..b54d41a
--- a/test/src/test/java/org/apache/accumulo/test/functional/ScanIdIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/ScanIdIT.java
@@@ -16,7 -16,7 +16,7 @@@
   */
  package org.apache.accumulo.test.functional;
  
--import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  import static org.junit.Assert.assertNotNull;
  import static org.junit.Assert.assertTrue;
  import static org.junit.Assert.fail;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/4af87bfc/test/src/test/java/org/apache/accumulo/test/functional/SplitIT.java
----------------------------------------------------------------------
diff --cc test/src/test/java/org/apache/accumulo/test/functional/SplitIT.java
index 8e7e2b5,910fcbc..a6f0d00
--- a/test/src/test/java/org/apache/accumulo/test/functional/SplitIT.java
+++ b/test/src/test/java/org/apache/accumulo/test/functional/SplitIT.java
@@@ -16,6 -16,7 +16,7 @@@
   */
  package org.apache.accumulo.test.functional;
  
 -import static com.google.common.base.Charsets.UTF_8;
++import static java.nio.charset.StandardCharsets.UTF_8;
  import static org.junit.Assert.assertEquals;
  import static org.junit.Assert.assertTrue;
  
@@@ -161,21 -151,13 +160,21 @@@ public class SplitIT extends AccumuloCl
          shortened++;
        count++;
      }
 +
      assertTrue("Shortened should be greater than zero: " + shortened, 
shortened > 0);
      assertTrue("Count should be cgreater than 10: " + count, count > 10);
 -    PasswordToken token = (PasswordToken) getToken();
 -    assertEquals(
 -        0,
 -        getCluster().getClusterControl().exec(CheckForMetadataProblems.class,
 -            new String[] {"-i", cluster.getInstanceName(), "-u", "root", 
"-p", new String(token.getPassword(), UTF_8), "-z", cluster.getZooKeepers()}));
 +
 +    String[] args;
 +    if 
(clientConfig.getBoolean(ClientProperty.INSTANCE_RPC_SASL_ENABLED.getKey(), 
false)) {
 +      ClusterUser rootUser = getAdminUser();
 +      args = new String[] {"-i", cluster.getInstanceName(), "-u", 
rootUser.getPrincipal(), "--keytab", rootUser.getKeytab().getAbsolutePath(), 
"-z",
 +          cluster.getZooKeepers()};
 +    } else {
 +      PasswordToken token = (PasswordToken) getAdminToken();
-       args = new String[] {"-i", cluster.getInstanceName(), "-u", "root", 
"-p", new String(token.getPassword(), Charsets.UTF_8), "-z", 
cluster.getZooKeepers()};
++      args = new String[] {"-i", cluster.getInstanceName(), "-u", "root", 
"-p", new String(token.getPassword(), UTF_8), "-z", cluster.getZooKeepers()};
 +    }
 +
 +    assertEquals(0, 
getCluster().getClusterControl().exec(CheckForMetadataProblems.class, args));
    }
  
    @Test
@@@ -202,15 -184,9 +201,15 @@@
      Connector c = getConnector();
      String tableName = getUniqueNames(1)[0];
      c.tableOperations().create(tableName);
 -    PasswordToken token = (PasswordToken) getToken();
      c.tableOperations().setProperty(tableName, 
Property.TABLE_SPLIT_THRESHOLD.getKey(), "10K");
 -    DeleteIT.deleteTest(c, getCluster(), new String(token.getPassword(), 
UTF_8), tableName);
 +    ClientConfiguration clientConfig = getCluster().getClientConfig();
 +    String password = null, keytab = null;
 +    if 
(clientConfig.getBoolean(ClientProperty.INSTANCE_RPC_SASL_ENABLED.getKey(), 
false)) {
 +      keytab = getAdminUser().getKeytab().getAbsolutePath();
 +    } else {
-       password = new String(((PasswordToken) getAdminToken()).getPassword(), 
Charsets.UTF_8);
++      password = new String(((PasswordToken) getAdminToken()).getPassword(), 
UTF_8);
 +    }
 +    DeleteIT.deleteTest(c, getCluster(), getAdminPrincipal(), password, 
tableName, keytab);
      c.tableOperations().flush(tableName, null, null, true);
      for (int i = 0; i < 5; i++) {
        UtilWaitThread.sleep(10 * 1000);

Reply via email to