accumulo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From els...@apache.org
Subject accumulo git commit: ACCUMULO-4449 Removed 'slave' terminology
Date Fri, 09 Sep 2016 16:09:30 GMT
Repository: accumulo
Updated Branches:
  refs/heads/master fa483cf63 -> d1b0ea5b7


ACCUMULO-4449 Removed 'slave' terminology

* Replaced 'slave' with 'tserver' in most cases
* When referring to slave node, used the term 'worker'
* The 'slaves' configuration file is now 'tservers'
* All references to 'slave' were changed except for those in
  the design doc for ACCUMULO-378 which discusses replication
* Improved checks in scripts
  - Fails if slaves file is present and tells user to rename.
  - Fails if tservers is not present and tells user to create file.

Close apache/accumulo#147


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

Branch: refs/heads/master
Commit: d1b0ea5b7d0dd6086ef848f593c6f4fcfa5eab7f
Parents: fa483cf
Author: Mike Walch <mwalch@apache.org>
Authored: Thu Sep 8 15:27:54 2016 -0400
Committer: Josh Elser <elserj@apache.org>
Committed: Fri Sep 9 12:09:08 2016 -0400

----------------------------------------------------------------------
 INSTALL.md                                      |   2 +-
 assemble/bin/bootstrap_hdfs.sh                  |  10 +-
 assemble/bin/check-slaves                       | 199 -------------------
 assemble/bin/check-tservers                     | 199 +++++++++++++++++++
 assemble/bin/config-server.sh                   |   4 +-
 assemble/bin/config.sh                          |  13 ++
 assemble/bin/start-all.sh                       |   2 +-
 assemble/bin/start-daemon.sh                    |   6 +-
 assemble/bin/start-here.sh                      |   2 +-
 assemble/bin/stop-here.sh                       |   4 +-
 assemble/bin/tdown.sh                           |   8 +-
 assemble/bin/tup.sh                             |   4 +-
 .../examples/vfs-classloader/accumulo-site.xml  |   2 +-
 assemble/conf/templates/slaves                  |  16 --
 assemble/conf/templates/tservers                |  16 ++
 core/src/main/thrift/master.thrift              |   4 +-
 .../main/asciidoc/chapters/administration.txt   |  20 +-
 docs/src/main/asciidoc/chapters/kerberos.txt    |   4 +-
 docs/src/main/asciidoc/chapters/replication.txt |   2 +-
 docs/src/main/resources/administration.html     |  12 +-
 .../standalone/StandaloneClusterControl.java    |   2 +-
 .../accumulo/server/rpc/TServerUtils.java       |   2 +-
 .../monitor/servlets/MasterServlet.java         |  12 +-
 test/system/agitator/README.md                  |   2 +-
 test/system/bench/README.md                     |   6 +-
 test/system/bench/cloudstone1/cloudstone1.py    |   4 +-
 test/system/bench/cloudstone2/cloudstone2.py    |   2 +-
 test/system/bench/cloudstone3/cloudstone3.py    |   2 +-
 test/system/bench/lib/CreateTablesBenchmark.py  |   2 +-
 test/system/bench/lib/IngestBenchmark.py        |  16 +-
 test/system/bench/lib/RowHashBenchmark.py       |   2 +-
 test/system/bench/lib/TableSplitsBenchmark.py   |   2 +-
 test/system/bench/lib/slaves.py                 |  89 ---------
 test/system/bench/lib/tservers.py               |  89 +++++++++
 test/system/continuous/datanode-agitator.pl     |  20 +-
 test/system/continuous/master-agitator.pl       |   2 +-
 test/system/continuous/tserver-agitator.pl      |  20 +-
 test/system/randomwalk/bin/apocalypse.sh        |   2 +-
 test/system/randomwalk/bin/reset-cluster.sh     |   6 +-
 test/system/scalability/README.md               |   2 +-
 test/system/scalability/conf/site.conf.example  |   2 +-
 test/system/scalability/run.py                  |  16 +-
 42 files changed, 422 insertions(+), 409 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/INSTALL.md
----------------------------------------------------------------------
diff --git a/INSTALL.md b/INSTALL.md
index ae31de3..449152e 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -112,7 +112,7 @@ list of node names.  Must change from localhost.
  * `conf/gc`      : Accumulo garbage collector.  Must specify one node.  Can
                     specify a few for fault tolerance.
  * `conf/monitor` : Node where Accumulo monitoring web server is run.
- * `conf/slaves`  : Accumulo worker processes.   List all of the nodes where
+ * `conf/tservers`: Accumulo worker processes.   List all of the nodes where
                     tablet servers should run in this file.
  * `conf/tracers` : Optional capability. Can specify zero or more nodes. 
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/bootstrap_hdfs.sh
----------------------------------------------------------------------
diff --git a/assemble/bin/bootstrap_hdfs.sh b/assemble/bin/bootstrap_hdfs.sh
index 6378587..1d2964a 100755
--- a/assemble/bin/bootstrap_hdfs.sh
+++ b/assemble/bin/bootstrap_hdfs.sh
@@ -60,13 +60,13 @@ if [[ $? != 0 ]]; then
 fi
 
 #
-# Replicate to all slaves to avoid network contention on startup
+# Replicate to all tservers to avoid network contention on startup
 #
-SLAVES=$ACCUMULO_CONF_DIR/slaves
-NUM_SLAVES=$(egrep -v '(^#|^\s*$)' "$SLAVES" | wc -l)
+TSERVERS=$ACCUMULO_CONF_DIR/tservers
+NUM_TSERVERS=$(egrep -v '(^#|^\s*$)' "$TSERVERS" | wc -l)
 
 #let each datanode service around 50 clients
-REP=$(( NUM_SLAVES / 50 ))
+REP=$(( NUM_TSERVERS / 50 ))
 (( REP < 3 )) && REP=3
 
 #
@@ -84,7 +84,7 @@ REP=$(( NUM_SLAVES / 50 ))
 "$HADOOP_PREFIX/bin/hadoop" fs -rm "$SYSTEM_CONTEXT_HDFS_DIR/accumulo-start.jar"  > /dev/null
 "$HADOOP_PREFIX/bin/hadoop" fs -copyToLocal "$SYSTEM_CONTEXT_HDFS_DIR/slf4j*.jar" "$ACCUMULO_HOME/lib/."  > /dev/null
 "$HADOOP_PREFIX/bin/hadoop" fs -rm "$SYSTEM_CONTEXT_HDFS_DIR/slf4j*.jar"  > /dev/null
-for f in $(grep -v '^#' "$ACCUMULO_CONF_DIR/slaves")
+for f in $(grep -v '^#' "$ACCUMULO_CONF_DIR/tservers")
 do
   rsync -ra --delete "$ACCUMULO_HOME" $(dirname "$ACCUMULO_HOME")
 done

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/check-slaves
----------------------------------------------------------------------
diff --git a/assemble/bin/check-slaves b/assemble/bin/check-slaves
deleted file mode 100755
index 2af7f42..0000000
--- a/assemble/bin/check-slaves
+++ /dev/null
@@ -1,199 +0,0 @@
-#! /usr/bin/env python
-
-# 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.
-
-# This script will check the configuration and uniformity of all the nodes in a cluster.
-# Checks
-#   each node is reachable via ssh
-#   login identity is the same
-#   the physical memory is the same
-#   the mounts are the same on each machine
-#   a set of writable locations (typically different disks) are in fact writable
-# 
-# In order to check for writable partitions, you must configure the WRITABLE variable below.
-#
-
-import subprocess
-import time
-import select
-import os
-import sys
-import fcntl
-import signal
-if not sys.platform.startswith('linux'):
-   sys.stderr.write('This script only works on linux, sorry.\n')
-   sys.exit(1)
-
-TIMEOUT = 5
-WRITABLE = []
-#WRITABLE = ['/srv/hdfs1', '/srv/hdfs2', '/srv/hdfs3']
-
-def ssh(slave, *args):
-    'execute a command on a remote slave and return the Popen handle'
-    handle = subprocess.Popen( ('ssh', '-o', 'StrictHostKeyChecking=no', '-q', '-A', '-n', slave) + args, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
-    handle.slave = slave
-    handle.finished = False
-    handle.out = ''
-    return handle
-
-def wait(handles, seconds):
-    'wait for lots of handles simultaneously, and kill anything that doesn\'t return in seconds time\n'
-    'Note that stdout will be stored on the handle as the "out" field and "finished" will be set to True'
-    handles = handles[:]
-    stop = time.time() + seconds
-    for h in handles:
-       fcntl.fcntl(h.stdout, fcntl.F_SETFL, os.O_NONBLOCK)
-    while handles and time.time() < stop:
-       wait = min(0, stop - time.time())
-       handleMap = dict( [(h.stdout, h) for h in handles] )
-       rd, wr, err = select.select(handleMap.keys(), [], [], wait)
-       for r in rd:
-           handle = handleMap[r]
-           while 1:
-               more = handle.stdout.read(1024)
-               if more == '':
-                   handles.remove(handle)
-                   handle.poll()
-                   handle.wait()
-                   handle.finished = True
-               handle.out += more
-               if len(more) < 1024:
-                   break
-    for handle in handles:
-       os.kill(handle.pid, signal.SIGKILL)
-       handle.poll()
-
-def runAll(slaves, *cmd):
-    'Run the given command on all the slaves, returns Popen handles'
-    handles = []
-    for slave in slaves:
-        handles.append(ssh(slave, *cmd))
-    wait(handles, TIMEOUT)
-    return handles
-
-def checkIdentity(slaves):
-    'Ensure the login identity is consistent across the slaves'
-    handles = runAll(slaves, 'id', '-u', '-n')
-    bad = set()
-    myIdentity = os.popen('id -u -n').read().strip()
-    for h in handles:
-        if not h.finished or h.returncode != 0:
-            print '#', 'cannot look at identity on', h.slave
-            bad.add(h.slave)
-        else:
-            identity = h.out.strip()
-            if identity != myIdentity:
-                print '#', h.slave, 'inconsistent identity', identity
-                bad.add(h.slave)
-    return bad
-
-def checkMemory(slaves):
-    'Run free on all slaves and look for weird results'
-    handles = runAll(slaves, 'free')
-    bad = set()
-    mem = {}
-    swap = {}
-    for h in handles:
-        if not h.finished or h.returncode != 0:
-            print '#', 'cannot look at memory on', h.slave
-            bad.add(h.slave)
-        else:
-            if h.out.find('Swap:') < 0:
-               print '#',h.slave,'has no swap'
-               bad.add(h.slave)
-               continue
-            lines = h.out.split('\n')
-            for line in lines:
-               if line.startswith('Mem:'):
-                  mem.setdefault(line.split()[1],set()).add(h.slave)
-               if line.startswith('Swap:'):
-                  swap.setdefault(line.split()[1],set()).add(h.slave)
-    # order memory sizes by most common
-    mems = sorted([(len(v), k, v) for k, v in mem.items()], reverse=True)
-    mostCommon = float(mems[0][1])
-    for _, size, slaves in mems[1:]:
-        fract = abs(mostCommon - float(size)) / mostCommon
-        if fract > 0.05:
-            print '#',', '.join(slaves), ': unusual memory size', size
-            bad.update(slaves)
-    swaps = sorted([(len(v), k, v) for k, v in swap.items()], reverse=True)
-    mostCommon = float(mems[0][1])
-    for _, size, slaves in swaps[1:]:
-        fract = abs(mostCommon - float(size) / mostCommon)
-        if fract > 0.05:
-            print '#',', '.join(slaves), ': unusual swap size', size
-            bad.update(slaves)
-    return bad
-
-def checkWritable(slaves):
-    'Touch all the directories that should be writable by this user return any nodes that fail'
-    if not WRITABLE:
-       print '# WRITABLE value not configured, not checking partitions'
-       return []
-    handles = runAll(slaves, 'touch', *WRITABLE)
-    bad = set()
-    for h in handles:
-        if not h.finished or h.returncode != 0:
-           bad.add(h.slave)
-           print '#', h.slave, 'some drives are not writable'
-    return bad
-
-def checkMounts(slaves):
-    'Check the file systems that are mounted and report any that are unusual'
-    handles = runAll(slaves, 'mount')
-    mounts = {}
-    finished = set()
-    bad = set()
-    for handle in handles:
-        if handle.finished and handle.returncode == 0:
-            for line in handle.out.split('\n'):
-                words = line.split()
-                if len(words) < 5: continue
-                if words[4] == 'nfs': continue
-                if words[0].find(':/') >= 0: continue
-                mount = words[2]
-                mounts.setdefault(mount, set()).add(handle.slave)
-            finished.add(handle.slave)
-        else:
-            bad.add(handle.slave)
-            print '#', handle.slave, 'did not finish'
-    for m in sorted(mounts.keys()):
-        diff = finished - mounts[m]
-        if diff:
-            bad.update(diff)
-            print '#', m, 'not mounted on', ', '.join(diff)
-    return bad
-
-def main(argv):
-    if len(argv) < 1:
-        sys.stderr.write('Usage: check_slaves slaves\n')
-        sys.exit(1)
-    sys.stdin.close()
-    slaves = set()
-    for slave in open(argv[0]):
-        hashPos = slave.find('#')
-        if hashPos >= 0:
-           slave = slave[:hashPos]
-        slave = slave.strip()
-        if not slave: continue
-        slaves.add(slave)
-    bad = set()
-    for test in checkIdentity, checkMemory, checkMounts, checkWritable:
-        bad.update(test(slaves - bad))
-    for slave in sorted(slaves - bad):
-        print slave
-
-main(sys.argv[1:])

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/check-tservers
----------------------------------------------------------------------
diff --git a/assemble/bin/check-tservers b/assemble/bin/check-tservers
new file mode 100755
index 0000000..7f9850e
--- /dev/null
+++ b/assemble/bin/check-tservers
@@ -0,0 +1,199 @@
+#! /usr/bin/env python
+
+# 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.
+
+# This script will check the configuration and uniformity of all the nodes in a cluster.
+# Checks
+#   each node is reachable via ssh
+#   login identity is the same
+#   the physical memory is the same
+#   the mounts are the same on each machine
+#   a set of writable locations (typically different disks) are in fact writable
+# 
+# In order to check for writable partitions, you must configure the WRITABLE variable below.
+#
+
+import subprocess
+import time
+import select
+import os
+import sys
+import fcntl
+import signal
+if not sys.platform.startswith('linux'):
+   sys.stderr.write('This script only works on linux, sorry.\n')
+   sys.exit(1)
+
+TIMEOUT = 5
+WRITABLE = []
+#WRITABLE = ['/srv/hdfs1', '/srv/hdfs2', '/srv/hdfs3']
+
+def ssh(tserver, *args):
+    'execute a command on a remote tserver and return the Popen handle'
+    handle = subprocess.Popen( ('ssh', '-o', 'StrictHostKeyChecking=no', '-q', '-A', '-n', tserver) + args, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+    handle.tserver = tserver
+    handle.finished = False
+    handle.out = ''
+    return handle
+
+def wait(handles, seconds):
+    'wait for lots of handles simultaneously, and kill anything that doesn\'t return in seconds time\n'
+    'Note that stdout will be stored on the handle as the "out" field and "finished" will be set to True'
+    handles = handles[:]
+    stop = time.time() + seconds
+    for h in handles:
+       fcntl.fcntl(h.stdout, fcntl.F_SETFL, os.O_NONBLOCK)
+    while handles and time.time() < stop:
+       wait = min(0, stop - time.time())
+       handleMap = dict( [(h.stdout, h) for h in handles] )
+       rd, wr, err = select.select(handleMap.keys(), [], [], wait)
+       for r in rd:
+           handle = handleMap[r]
+           while 1:
+               more = handle.stdout.read(1024)
+               if more == '':
+                   handles.remove(handle)
+                   handle.poll()
+                   handle.wait()
+                   handle.finished = True
+               handle.out += more
+               if len(more) < 1024:
+                   break
+    for handle in handles:
+       os.kill(handle.pid, signal.SIGKILL)
+       handle.poll()
+
+def runAll(tservers, *cmd):
+    'Run the given command on all the tservers, returns Popen handles'
+    handles = []
+    for tserver in tservers:
+        handles.append(ssh(tserver, *cmd))
+    wait(handles, TIMEOUT)
+    return handles
+
+def checkIdentity(tservers):
+    'Ensure the login identity is consistent across the tservers'
+    handles = runAll(tservers, 'id', '-u', '-n')
+    bad = set()
+    myIdentity = os.popen('id -u -n').read().strip()
+    for h in handles:
+        if not h.finished or h.returncode != 0:
+            print '#', 'cannot look at identity on', h.tserver
+            bad.add(h.tserver)
+        else:
+            identity = h.out.strip()
+            if identity != myIdentity:
+                print '#', h.tserver, 'inconsistent identity', identity
+                bad.add(h.tserver)
+    return bad
+
+def checkMemory(tservers):
+    'Run free on all tservers and look for weird results'
+    handles = runAll(tservers, 'free')
+    bad = set()
+    mem = {}
+    swap = {}
+    for h in handles:
+        if not h.finished or h.returncode != 0:
+            print '#', 'cannot look at memory on', h.tserver
+            bad.add(h.tserver)
+        else:
+            if h.out.find('Swap:') < 0:
+               print '#',h.tserver,'has no swap'
+               bad.add(h.tserver)
+               continue
+            lines = h.out.split('\n')
+            for line in lines:
+               if line.startswith('Mem:'):
+                  mem.setdefault(line.split()[1],set()).add(h.tserver)
+               if line.startswith('Swap:'):
+                  swap.setdefault(line.split()[1],set()).add(h.tserver)
+    # order memory sizes by most common
+    mems = sorted([(len(v), k, v) for k, v in mem.items()], reverse=True)
+    mostCommon = float(mems[0][1])
+    for _, size, tservers in mems[1:]:
+        fract = abs(mostCommon - float(size)) / mostCommon
+        if fract > 0.05:
+            print '#',', '.join(tservers), ': unusual memory size', size
+            bad.update(tservers)
+    swaps = sorted([(len(v), k, v) for k, v in swap.items()], reverse=True)
+    mostCommon = float(mems[0][1])
+    for _, size, tservers in swaps[1:]:
+        fract = abs(mostCommon - float(size) / mostCommon)
+        if fract > 0.05:
+            print '#',', '.join(tservers), ': unusual swap size', size
+            bad.update(tservers)
+    return bad
+
+def checkWritable(tservers):
+    'Touch all the directories that should be writable by this user return any nodes that fail'
+    if not WRITABLE:
+       print '# WRITABLE value not configured, not checking partitions'
+       return []
+    handles = runAll(tservers, 'touch', *WRITABLE)
+    bad = set()
+    for h in handles:
+        if not h.finished or h.returncode != 0:
+           bad.add(h.tserver)
+           print '#', h.tserver, 'some drives are not writable'
+    return bad
+
+def checkMounts(tservers):
+    'Check the file systems that are mounted and report any that are unusual'
+    handles = runAll(tservers, 'mount')
+    mounts = {}
+    finished = set()
+    bad = set()
+    for handle in handles:
+        if handle.finished and handle.returncode == 0:
+            for line in handle.out.split('\n'):
+                words = line.split()
+                if len(words) < 5: continue
+                if words[4] == 'nfs': continue
+                if words[0].find(':/') >= 0: continue
+                mount = words[2]
+                mounts.setdefault(mount, set()).add(handle.tserver)
+            finished.add(handle.tserver)
+        else:
+            bad.add(handle.tserver)
+            print '#', handle.tserver, 'did not finish'
+    for m in sorted(mounts.keys()):
+        diff = finished - mounts[m]
+        if diff:
+            bad.update(diff)
+            print '#', m, 'not mounted on', ', '.join(diff)
+    return bad
+
+def main(argv):
+    if len(argv) < 1:
+        sys.stderr.write('Usage: check_tservers tservers\n')
+        sys.exit(1)
+    sys.stdin.close()
+    tservers = set()
+    for tserver in open(argv[0]):
+        hashPos = tserver.find('#')
+        if hashPos >= 0:
+           tserver = tserver[:hashPos]
+        tserver = tserver.strip()
+        if not tserver: continue
+        tservers.add(tserver)
+    bad = set()
+    for test in checkIdentity, checkMemory, checkMounts, checkWritable:
+        bad.update(test(tservers - bad))
+    for tserver in sorted(tservers - bad):
+        print tserver
+
+main(sys.argv[1:])

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/config-server.sh
----------------------------------------------------------------------
diff --git a/assemble/bin/config-server.sh b/assemble/bin/config-server.sh
index 92aa4a6..a9ae645 100755
--- a/assemble/bin/config-server.sh
+++ b/assemble/bin/config-server.sh
@@ -25,9 +25,9 @@
 #  MONITOR            Machine to run monitor daemon on. Used by start-here.sh script
 #
 # Iff ACCUMULO_VERIFY_ONLY is not set, this script will
-#   * Check for standalone mode (lack of masters and slaves files)
+#   * Check for standalone mode (lack of masters and tservers files)
 #     - Do appropriate set up
-#   * Ensure the presense of local role files (masters, slaves, gc, tracers)
+#   * Ensure the presense of local role files (masters, tservers, gc, tracers)
 #
 # Values always set by script.
 #  SSH                Default ssh parameters used to start daemons

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/config.sh
----------------------------------------------------------------------
diff --git a/assemble/bin/config.sh b/assemble/bin/config.sh
index 97a42c6..adc0e03 100755
--- a/assemble/bin/config.sh
+++ b/assemble/bin/config.sh
@@ -85,6 +85,19 @@ elif [[ -z $ACCUMULO_TEST ]] ; then
    exit 1
 fi
 
+if [[ -f $ACCUMULO_CONF_DIR/slaves ]]; then
+  echo "ERROR: A 'slaves' file was found in $ACCUMULO_CONF_DIR/"
+  echo "Accumulo now reads tablet server hosts from 'tservers' and requires that the 'slaves' file not be present to reduce confusion."
+  echo "Please rename the 'slaves' file to 'tservers' or remove it if both exist."
+  exit 1
+fi
+
+if [[ ! -f $ACCUMULO_CONF_DIR/tservers ]]; then
+  echo "ERROR: A 'tservers' file was not found at $ACCUMULO_CONF_DIR/tservers"
+  echo "Please make sure it exists and is configured with tablet server hosts."
+  exit 1
+fi
+
 [[ -z $ACCUMULO_LOG_DIR ]] && ACCUMULO_LOG_DIR=$ACCUMULO_HOME/logs
 [[ -z $ACCUMULO_VERIFY_ONLY ]] && mkdir -p $ACCUMULO_LOG_DIR 2>/dev/null
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/start-all.sh
----------------------------------------------------------------------
diff --git a/assemble/bin/start-all.sh b/assemble/bin/start-all.sh
index f03a6a8..e2830aa 100755
--- a/assemble/bin/start-all.sh
+++ b/assemble/bin/start-all.sh
@@ -59,7 +59,7 @@ fi
 
 ${bin}/start-server.sh $MONITOR monitor 
 
-if [ "$1" != "--notSlaves" ]; then
+if [ "$1" != "--notTservers" ]; then
    ${bin}/tup.sh
 fi
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/start-daemon.sh
----------------------------------------------------------------------
diff --git a/assemble/bin/start-daemon.sh b/assemble/bin/start-daemon.sh
index 9b57e00..9d6404f 100755
--- a/assemble/bin/start-daemon.sh
+++ b/assemble/bin/start-daemon.sh
@@ -64,7 +64,7 @@ else
 fi
 SERVICE=$2
 
-SLAVES=$(wc -l < "${ACCUMULO_CONF_DIR}/slaves")
+TSERVERS=$(wc -l < "${ACCUMULO_CONF_DIR}/tservers")
 
 # When the hostname provided is the alias/shortname, try to use the FQDN to make
 # sure we send the right address to the Accumulo process.
@@ -158,9 +158,9 @@ fi
 # Check the max open files limit and selectively warn
 MAX_FILES_OPEN=$(ulimit -n)
 
-if [[ -n $MAX_FILES_OPEN && -n $SLAVES ]] ; then
+if [[ -n $MAX_FILES_OPEN && -n $TSERVERS ]] ; then
    MAX_FILES_RECOMMENDED=${MAX_FILES_RECOMMENDED:-32768}
-   if (( SLAVES > 10 )) && (( MAX_FILES_OPEN < MAX_FILES_RECOMMENDED ))
+   if (( TSERVERS > 10 )) && (( MAX_FILES_OPEN < MAX_FILES_RECOMMENDED ))
    then
       echo "WARN : Max open files on $HOST is $MAX_FILES_OPEN, recommend $MAX_FILES_RECOMMENDED" >&2
    fi

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/start-here.sh
----------------------------------------------------------------------
diff --git a/assemble/bin/start-here.sh b/assemble/bin/start-here.sh
index dba1779..ccba80f 100755
--- a/assemble/bin/start-here.sh
+++ b/assemble/bin/start-here.sh
@@ -42,7 +42,7 @@ fi
 
 HOSTS="$(hostname -a 2> /dev/null) $(hostname) localhost 127.0.0.1 $IP"
 for host in $HOSTS; do
-   if grep -q "^${host}\$" "$ACCUMULO_CONF_DIR/slaves"; then
+   if grep -q "^${host}\$" "$ACCUMULO_CONF_DIR/tservers"; then
       "${bin}/start-server.sh" "$host" tserver
       break
    fi

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/stop-here.sh
----------------------------------------------------------------------
diff --git a/assemble/bin/stop-here.sh b/assemble/bin/stop-here.sh
index a9973f4..1edfb5b 100755
--- a/assemble/bin/stop-here.sh
+++ b/assemble/bin/stop-here.sh
@@ -34,11 +34,11 @@ bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
 # Determine hostname without errors to user
 HOSTS_TO_CHECK=($(hostname -a 2> /dev/null | head -1) $(hostname -f))
 
-if egrep -q localhost\|127.0.0.1 "$ACCUMULO_CONF_DIR/slaves"; then
+if egrep -q localhost\|127.0.0.1 "$ACCUMULO_CONF_DIR/tservers"; then
    "$bin/accumulo" admin stop localhost
 else
    for host in "${HOSTS_TO_CHECK[@]}"; do
-      if grep -q "$host" "$ACCUMULO_CONF_DIR"/slaves; then
+      if grep -q "$host" "$ACCUMULO_CONF_DIR"/tservers; then
          "${bin}/accumulo" admin stop "$host"
       fi
    done

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/tdown.sh
----------------------------------------------------------------------
diff --git a/assemble/bin/tdown.sh b/assemble/bin/tdown.sh
index 141ad24..dd81ddd 100755
--- a/assemble/bin/tdown.sh
+++ b/assemble/bin/tdown.sh
@@ -28,11 +28,11 @@ bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
 . "$bin"/config.sh
 
 HADOOP_CMD=$HADOOP_PREFIX/bin/hadoop
-SLAVES=$ACCUMULO_CONF_DIR/slaves
-SLAVE_HOSTS=$(egrep -v '(^#|^\s*$)' "${SLAVES}")
+TSERVERS=$ACCUMULO_CONF_DIR/tservers
+TSERVER_HOSTS=$(egrep -v '(^#|^\s*$)' "${TSERVERS}")
 
 echo "Stopping unresponsive tablet servers (if any)..."
-for server in ${SLAVE_HOSTS}; do
+for server in ${TSERVER_HOSTS}; do
    # only start if there's not one already running
    $ACCUMULO_HOME/bin/stop-server.sh $server "$ACCUMULO_HOME/lib/accumulo-start.jar" tserver TERM & 
 done
@@ -40,7 +40,7 @@ done
 sleep 10
 
 echo "Stopping unresponsive tablet servers hard (if any)..."
-for server in ${SLAVE_HOSTS}; do
+for server in ${TSERVER_HOSTS}; do
    # only start if there's not one already running
    $ACCUMULO_HOME/bin/stop-server.sh $server "$ACCUMULO_HOME/lib/accumulo-start.jar" tserver KILL & 
 done

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/bin/tup.sh
----------------------------------------------------------------------
diff --git a/assemble/bin/tup.sh b/assemble/bin/tup.sh
index f01aa77..f9e8903 100755
--- a/assemble/bin/tup.sh
+++ b/assemble/bin/tup.sh
@@ -27,12 +27,12 @@ bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
 
 . "$bin"/config.sh
 
-SLAVES=$ACCUMULO_CONF_DIR/slaves
+TSERVERS=$ACCUMULO_CONF_DIR/tservers
 
 echo -n "Starting tablet servers ..."
 
 count=1
-for server in $(egrep -v '(^#|^\s*$)' "${SLAVES}"); do
+for server in $(egrep -v '(^#|^\s*$)' "${TSERVERS}"); do
    echo -n "."
    ${bin}/start-server.sh $server tserver &
    if (( ++count % 72 == 0 )) ;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/conf/examples/vfs-classloader/accumulo-site.xml
----------------------------------------------------------------------
diff --git a/assemble/conf/examples/vfs-classloader/accumulo-site.xml b/assemble/conf/examples/vfs-classloader/accumulo-site.xml
index fb66d27..dabbec8 100644
--- a/assemble/conf/examples/vfs-classloader/accumulo-site.xml
+++ b/assemble/conf/examples/vfs-classloader/accumulo-site.xml
@@ -120,7 +120,7 @@
   At a minimum the general.vfs.classpath property must be set. After this is set in the configuration, the bin/bootstrap_hdfs.sh can be
   run to move the jars into the required locations. All other properties are optional. This example demonstrates using hdfs, other
   protocols supported by the Apache Commons VFS software can be used but are not demonstrated here. If the accumulo-site.xml changes
-  after initial configuration, you will want to copy the file to all of the slave hosts. 
+  after initial configuration, you will want to copy the file to all of the tserver hosts. 
   -->
   <property>
     <name>general.vfs.classpaths</name>

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/conf/templates/slaves
----------------------------------------------------------------------
diff --git a/assemble/conf/templates/slaves b/assemble/conf/templates/slaves
deleted file mode 100644
index 63fb8bb..0000000
--- a/assemble/conf/templates/slaves
+++ /dev/null
@@ -1,16 +0,0 @@
-# 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.
-
-localhost

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/assemble/conf/templates/tservers
----------------------------------------------------------------------
diff --git a/assemble/conf/templates/tservers b/assemble/conf/templates/tservers
new file mode 100644
index 0000000..63fb8bb
--- /dev/null
+++ b/assemble/conf/templates/tservers
@@ -0,0 +1,16 @@
+# 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.
+
+localhost

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/core/src/main/thrift/master.thrift
----------------------------------------------------------------------
diff --git a/core/src/main/thrift/master.thrift b/core/src/main/thrift/master.thrift
index 6104fea..b7d10f3 100644
--- a/core/src/main/thrift/master.thrift
+++ b/core/src/main/thrift/master.thrift
@@ -52,9 +52,9 @@ enum BulkImportState {
    INITIAL
    # master moves the files into the accumulo area
    MOVING
-   # slave tserver examines the index of the file
+   # tserver examines the index of the file
    PROCESSING
-   # slave tserver assigns the file to tablets
+   # tserver assigns the file to tablets
    ASSIGNING
    # tserver incorporates file into tablet
    LOADING

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/docs/src/main/asciidoc/chapters/administration.txt
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/chapters/administration.txt b/docs/src/main/asciidoc/chapters/administration.txt
index a2dab8e..c7f0508 100644
--- a/docs/src/main/asciidoc/chapters/administration.txt
+++ b/docs/src/main/asciidoc/chapters/administration.txt
@@ -122,7 +122,7 @@ insufficient memory.
 
 Note that you will be specifying the Java heap space in accumulo-env.sh. You should
 make sure that the total heap space used for the Accumulo tserver and the Hadoop
-DataNode and TaskTracker is less than the available memory on each slave node in
+DataNode and TaskTracker is less than the available memory on each worker node in
 the cluster. On large clusters, it is recommended that the Accumulo master, Hadoop
 NameNode, secondary NameNode, and Hadoop JobTracker all be run on separate
 machines to allow them to use more heap space. If you are running these on the
@@ -195,7 +195,7 @@ performance to the write-ahead log file which will slow ingest.
 On the machine that will serve as the Accumulo master:
 
 . Write the IP address or domain name of the Accumulo Master to the +$ACCUMULO_HOME/conf/masters+ file.
-. Write the IP addresses or domain name of the machines that will be TabletServers in +$ACCUMULO_HOME/conf/slaves+, one per line.
+. Write the IP addresses or domain name of the machines that will be TabletServers in +$ACCUMULO_HOME/conf/tservers+, one per line.
 
 Note that if using domain names rather than IP addresses, DNS must be configured
 properly for all machines participating in the cluster. DNS can be a confusing source
@@ -245,7 +245,7 @@ extra jars from being unintentionally loaded into Accumulo processes.
 ==== Hostnames in configuration files
 
 Accumulo has a number of configuration files which can contain references to other hosts in your
-network. All of the "host" configuration files for Accumulo (+gc+, +masters+, +slaves+, +monitor+,
+network. All of the "host" configuration files for Accumulo (+gc+, +masters+, +tservers+, +monitor+,
 +tracers+) as well as +instance.volumes+ in accumulo-site.xml must contain some host reference.
 
 While IP address, short hostnames, or fully qualified domain names (FQDN) are all technically valid, it
@@ -261,9 +261,9 @@ Accumulo identifies +localhost:8020+ as a different HDFS instance than +127.0.0.
 
 ==== Deploy Configuration
 
-Copy the masters, slaves, accumulo-env.sh, and if necessary, accumulo-site.xml
+Copy the masters, tservers, accumulo-env.sh, and if necessary, accumulo-site.xml
 from the +$ACCUMULO_HOME/conf/+ directory on the master to all the machines
-specified in the slaves file.
+specified in the tservers file.
 
 ==== Sensitive Configuration Values
 
@@ -428,7 +428,7 @@ take some time for particular configurations.
 
 ==== Adding a Node
 
-Update your +$ACCUMULO_HOME/conf/slaves+ (or +$ACCUMULO_CONF_DIR/slaves+) file to account for the addition.
+Update your +$ACCUMULO_HOME/conf/tservers+ (or +$ACCUMULO_CONF_DIR/tservers+) file to account for the addition.
 
   $ACCUMULO_HOME/bin/accumulo admin start <host(s)> {<host> ...}
 
@@ -451,9 +451,9 @@ Alternatively, you can ssh to each of the hosts you want to remove and run:
 
   $ACCUMULO_HOME/bin/stop-here.sh
 
-Be sure to update your +$ACCUMULO_HOME/conf/slaves+ (or +$ACCUMULO_CONF_DIR/slaves+) file to
+Be sure to update your +$ACCUMULO_HOME/conf/tservers+ (or +$ACCUMULO_CONF_DIR/tservers+) file to
 account for the removal of these hosts. Bear in mind that the monitor will not re-read the
-slaves file automatically, so it will report the decomissioned servers as down; it's
+tservers file automatically, so it will report the decomissioned servers as down; it's
 recommended that you restart the monitor so that the node list is up to date.
 
 ==== Restarting process on a node
@@ -463,7 +463,7 @@ to the +start-all.sh+ and +stop-all.sh+ scripts, Accumulo contains scripts to st
 on a node and start/stop a given process on a node.
 
 +start-here.sh+ and +stop-here.sh+ will start/stop all Accumulo processes on the current node. The
-necessary processes to start/stop are determined via the "hosts" files (e.g. slaves, masters, etc).
+necessary processes to start/stop are determined via the "hosts" files (e.g. tservers, masters, etc).
 These scripts expect no arguments.
 
 +start-server.sh+ can also be useful in starting a given process on a host.
@@ -472,7 +472,7 @@ you specified in hosts file (if you specified FQDN in the masters file, use the
 the shortname). The second argument is the name of the process to start (e.g. master, tserver).
 
 The steps described to decomission a node can also be used (without removal of the host
-from the +$ACCUMULO_HOME/conf/slaves+ file) to gracefully stop a node. This will
+from the +$ACCUMULO_HOME/conf/tservers+ file) to gracefully stop a node. This will
 ensure that the tabletserver is cleanly stopped and recovery will not need to be performed
 when the tablets are re-hosted.
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/docs/src/main/asciidoc/chapters/kerberos.txt
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/chapters/kerberos.txt b/docs/src/main/asciidoc/chapters/kerberos.txt
index fec9277..958133c 100644
--- a/docs/src/main/asciidoc/chapters/kerberos.txt
+++ b/docs/src/main/asciidoc/chapters/kerberos.txt
@@ -203,7 +203,7 @@ new secrets reduces the likelihood of cryptographic attacks.
 Although it should be a prerequisite, it is ever important that you have DNS properly
 configured for your nodes and that Accumulo is configured to use the FQDN. It
 is extremely important to use the FQDN in each of the "hosts" files for each
-Accumulo process: +masters+, +monitors+, +slaves+, +tracers+, and +gc+.
+Accumulo process: +masters+, +monitors+, +tservers+, +tracers+, and +gc+.
 
 Normally, no changes are needed in +accumulo-env.sh+ to enable Kerberos. Typically, the +krb5.conf+
 is installed on the local machine in +/etc/+, and the Java library implementations will look
@@ -558,5 +558,5 @@ Caused by: org.apache.thrift.transport.TTransportException: Peer indicated failu
 on, is extremely important when negotiating an SASL connection. This problem commonly arises when the Accumulo
 servers are not configured to listen on the address denoted by their FQDN.
 
-The values in the Accumulo "hosts" files (In +$ACCUMULO_CONF_DIR+: +masters+, +monitors+, +slaves+, +tracers+,
+The values in the Accumulo "hosts" files (In +$ACCUMULO_CONF_DIR+: +masters+, +monitors+, +tservers+, +tracers+,
 and +gc+) should match the instance componentof the Kerberos server principal (e.g. +host+ in +accumulo/host\@EXAMPLE.COM+).

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/docs/src/main/asciidoc/chapters/replication.txt
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/chapters/replication.txt b/docs/src/main/asciidoc/chapters/replication.txt
index ad48cd2..4f68773 100644
--- a/docs/src/main/asciidoc/chapters/replication.txt
+++ b/docs/src/main/asciidoc/chapters/replication.txt
@@ -248,7 +248,7 @@ in replication together. In this example, we will use the names provided in the
 </property>
 ----
 
-==== conf/masters and conf/slaves
+==== conf/masters and conf/tservers
 
 Be *sure* to use non-local IP addresses. Other nodes need to connect to it and using localhost will likely result in
 a local node talking to another local node.

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/docs/src/main/resources/administration.html
----------------------------------------------------------------------
diff --git a/docs/src/main/resources/administration.html b/docs/src/main/resources/administration.html
index aab1470..d64d6c3 100644
--- a/docs/src/main/resources/administration.html
+++ b/docs/src/main/resources/administration.html
@@ -30,8 +30,8 @@ the accumulo software to each machine in the cloud that you wish to run on. The
 in the same directory on each machine and configured identically (or at least similarly... see the configuration
 sections for more details). Select one machine to be your bootstrap machine, the one that you will start accumulo
 with. Note that you must have passphrase-less ssh access to each machine from your bootstrap machine. On this machine,
-create a conf/masters and conf/slaves file. In the masters file, type the hostname of the machine you wish to run the master on (probably localhost).
-In the slaves file, type the hostnames, separated by newlines of each machine you wish to participate in accumulo as a tablet server. If you neglect
+create a conf/masters and conf/tservers file. In the masters file, type the hostname of the machine you wish to run the master on (probably localhost).
+In the tservers file, type the hostnames, separated by newlines of each machine you wish to participate in accumulo as a tablet server. If you neglect
 to create these files, the startup scripts will assume you are trying to run on localhost only, and will instantiate a single-node instance only.
 It is probably a good idea to back up these files, or distribute them to the other nodes as well, so that you can easily boot up accumulo
 from another machine, if necessary. You can also make create a <code>conf/accumulo-env.sh</code> file if you want to configure any custom environment variables.
@@ -55,7 +55,7 @@ forcibly shut down after 5 seconds.
 
 <h3>Adding a Node</h3>
 
-<p>Update your <code>$ACCUMULO_HOME/conf/slaves</code> (or <code>$ACCUMULO_CONF_DIR/slaves</code>) file to account for the addition; at a minimum this needs to be on the host(s) being added, but in practice it's good to ensure consistent configuration across all nodes.</p>
+<p>Update your <code>$ACCUMULO_HOME/conf/tservers</code> (or <code>$ACCUMULO_CONF_DIR/tservers</code>) file to account for the addition; at a minimum this needs to be on the host(s) being added, but in practice it's good to ensure consistent configuration across all nodes.</p>
 
 <pre>
 $ACCUMULO_HOME/bin/accumulo admin start &lt;host(s)&gt; {&lt;host&gt; ...}
@@ -75,7 +75,7 @@ $ACCUMULO_HOME/bin/accumulo admin stop &lt;host(s)&gt; {&lt;host&gt; ...}
 
 <p>Alternatively, you can ssh to each of the hosts you want to remove and run <code>$ACCUMULO_HOME/bin/stop-here.sh</code>.</p>
 
-<p>Be sure to update your <code>$ACCUMULO_HOME/conf/slaves</code> (or <code>$ACCUMULO_CONF_DIR/slaves</code>) file to account for the removal of these hosts. Bear in mind that the monitor will not re-read the slaves file automatically, so it will report the decomissioned servers as down; it's recommended that you restart the monitor so that the node list is up to date.</p>
+<p>Be sure to update your <code>$ACCUMULO_HOME/conf/tservers</code> (or <code>$ACCUMULO_CONF_DIR/tservers</code>) file to account for the removal of these hosts. Bear in mind that the monitor will not re-read the tservers file automatically, so it will report the decomissioned servers as down; it's recommended that you restart the monitor so that the node list is up to date.</p>
 
 <h3>Configuration</h3>
 <p>Accumulo configuration information is stored in a xml file and ZooKeeper. System wide
@@ -101,9 +101,9 @@ settings, for example, for a table while accumulo is running.
 <ul>
  <li> On larger clusters, run the namenode, secondary namenode, jobtracker, accumulo master, and zookeepers on dedicated nodes. On a smaller cluster you may want to run all master processes on one node. When doing this ensure that the max total memory that could be used by all master processes does not exceed system memory. Swapping on your single master node would not be good.
  <li> Accumulo 1.2 and earlier rely on zookeeper but do not use it heavily. On a large cluster setting up 3 or 5 zookeepers should be plenty. Since there is no performance gain when running more zookeepers, fault tolerance is the only benefit.
- <li> On slave nodes ensure the memory used by all slave processes is less than system memory. For example the following slave node config could use up to 38G of RAM : tablet server 3G, logger 1G, data node 2G, up to 10 mappers each using 2G, and up 6 reducers each using 2G. If the slave nodes only have 32G, then using 38G will result in swapping which could cause tablet server to lose their lock in zookeeper and die. Even if swapping does not cause tablet servers to die, it will kill performance.
+ <li> On worker nodes ensure the memory used by all worker processes is less than system memory. For example the following worker node config could use up to 38G of RAM : tablet server 3G, logger 1G, data node 2G, up to 10 mappers each using 2G, and up 6 reducers each using 2G. If the worker nodes only have 32G, then using 38G will result in swapping which could cause tablet server to lose their lock in zookeeper and die. Even if swapping does not cause tablet servers to die, it will kill performance.
  <li>Accumulo and map reduce will work with less memory, but it has an impact. Accumulo will minor compact more frequently when it has less map memory, resulting in more major compactions. The minor and major compactions both use CPU and HDFS I/O. The same goes for map reduce, the less memory you give it, the more it has to sort and spill. Try to minimize spilling and compactions as much as possible without causing swapping.
- <li>Accumulo writes data to disk before it sorts it in memory. This allows data that was in memory when a tablet server crashes to be recovered. Each slave node needs a local directory to write this data to. Ensure the file system holding this directory has at least 100G free on all nodes. Also, if this directory is in a filesystem used by map reduce or hdfs they may effect each others performance.
+ <li>Accumulo writes data to disk before it sorts it in memory. This allows data that was in memory when a tablet server crashes to be recovered. Each worker node needs a local directory to write this data to. Ensure the file system holding this directory has at least 100G free on all nodes. Also, if this directory is in a filesystem used by map reduce or hdfs they may effect each others performance.
 </ul>
 
 <p>There are a few settings that determine how much memory accumulo tablet

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/minicluster/src/main/java/org/apache/accumulo/cluster/standalone/StandaloneClusterControl.java
----------------------------------------------------------------------
diff --git a/minicluster/src/main/java/org/apache/accumulo/cluster/standalone/StandaloneClusterControl.java b/minicluster/src/main/java/org/apache/accumulo/cluster/standalone/StandaloneClusterControl.java
index febc94c..e0238f4 100644
--- a/minicluster/src/main/java/org/apache/accumulo/cluster/standalone/StandaloneClusterControl.java
+++ b/minicluster/src/main/java/org/apache/accumulo/cluster/standalone/StandaloneClusterControl.java
@@ -52,7 +52,7 @@ public class StandaloneClusterControl implements ClusterControl {
 
   private static final String SUDO_CMD = "sudo";
   private static final String START_SERVER_SCRIPT = "start-server.sh", ACCUMULO_SCRIPT = "accumulo", TOOL_SCRIPT = "tool.sh";
-  private static final String MASTER_HOSTS_FILE = "masters", GC_HOSTS_FILE = "gc", TSERVER_HOSTS_FILE = "slaves", TRACER_HOSTS_FILE = "tracers",
+  private static final String MASTER_HOSTS_FILE = "masters", GC_HOSTS_FILE = "gc", TSERVER_HOSTS_FILE = "tservers", TRACER_HOSTS_FILE = "tracers",
       MONITOR_HOSTS_FILE = "monitor";
   private static final String ACCUMULO_CONF_DIR = "ACCUMULO_CONF_DIR=";
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/server/base/src/main/java/org/apache/accumulo/server/rpc/TServerUtils.java
----------------------------------------------------------------------
diff --git a/server/base/src/main/java/org/apache/accumulo/server/rpc/TServerUtils.java b/server/base/src/main/java/org/apache/accumulo/server/rpc/TServerUtils.java
index 49995d6..5f88c67 100644
--- a/server/base/src/main/java/org/apache/accumulo/server/rpc/TServerUtils.java
+++ b/server/base/src/main/java/org/apache/accumulo/server/rpc/TServerUtils.java
@@ -414,7 +414,7 @@ public class TServerUtils {
     // their configuration.
     if (!hostname.equals(fqdn)) {
       log.error(
-          "Expected hostname of '{}' but got '{}'. Ensure the entries in the Accumulo hosts files (e.g. masters, slaves) are the FQDN for each host when using SASL.",
+          "Expected hostname of '{}' but got '{}'. Ensure the entries in the Accumulo hosts files (e.g. masters, tservers) are the FQDN for each host when using SASL.",
           fqdn, hostname);
       transport.close();
       throw new RuntimeException("SASL requires that the address the thrift server listens on is the same as the FQDN for this host");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/server/monitor/src/main/java/org/apache/accumulo/monitor/servlets/MasterServlet.java
----------------------------------------------------------------------
diff --git a/server/monitor/src/main/java/org/apache/accumulo/monitor/servlets/MasterServlet.java b/server/monitor/src/main/java/org/apache/accumulo/monitor/servlets/MasterServlet.java
index 42d771c..dbec270 100644
--- a/server/monitor/src/main/java/org/apache/accumulo/monitor/servlets/MasterServlet.java
+++ b/server/monitor/src/main/java/org/apache/accumulo/monitor/servlets/MasterServlet.java
@@ -122,19 +122,19 @@ public class MasterServlet extends BasicServlet {
       }
 
       int guessHighLoad = ManagementFactory.getOperatingSystemMXBean().getAvailableProcessors();
-      List<String> slaves = new ArrayList<>();
+      List<String> tservers = new ArrayList<>();
       for (TabletServerStatus up : Monitor.getMmi().tServerInfo) {
-        slaves.add(up.name);
+        tservers.add(up.name);
       }
       for (DeadServer down : Monitor.getMmi().deadTabletServers) {
-        slaves.add(down.server);
+        tservers.add(down.server);
       }
       List<String> masters = Monitor.getContext().getInstance().getMasterLocations();
 
       Table masterStatus = new Table("masterStatus", "Master&nbsp;Status");
       masterStatus.addSortableColumn("Master", new StringType<String>(), "The hostname of the master server");
-      masterStatus.addSortableColumn("#&nbsp;Online<br />Tablet&nbsp;Servers", new PreciseNumberType((int) (slaves.size() * 0.8 + 1.0), slaves.size(),
-          (int) (slaves.size() * 0.6 + 1.0), slaves.size()), "Number of tablet servers currently available");
+      masterStatus.addSortableColumn("#&nbsp;Online<br />Tablet&nbsp;Servers", new PreciseNumberType((int) (tservers.size() * 0.8 + 1.0), tservers.size(),
+          (int) (tservers.size() * 0.6 + 1.0), tservers.size()), "Number of tablet servers currently available");
       masterStatus.addSortableColumn("#&nbsp;Total<br />Tablet&nbsp;Servers", new PreciseNumberType(), "The total number of tablet servers configured");
       masterStatus.addSortableColumn("Last&nbsp;GC", null, "The last time files were cleaned-up from HDFS.");
       masterStatus.addSortableColumn("#&nbsp;Tablets", new NumberType<>(0, Integer.MAX_VALUE, 2, Integer.MAX_VALUE), null);
@@ -152,7 +152,7 @@ public class MasterServlet extends BasicServlet {
       TableRow row = masterStatus.prepareRow();
       row.add(masters.size() == 0 ? "<div class='error'>Down</div>" : AddressUtil.parseAddress(masters.get(0), false).getHostText());
       row.add(Monitor.getMmi().tServerInfo.size());
-      row.add(slaves.size());
+      row.add(tservers.size());
       row.add("<a href='/gc'>" + gcStatus + "</a>");
       row.add(Monitor.getTotalTabletCount());
       row.add(Monitor.getMmi().unassignedTablets);

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/agitator/README.md
----------------------------------------------------------------------
diff --git a/test/system/agitator/README.md b/test/system/agitator/README.md
index fdff65b..8abb74c 100644
--- a/test/system/agitator/README.md
+++ b/test/system/agitator/README.md
@@ -25,7 +25,7 @@ Configure the agitator using the example agitator.ini file provided.
 
 Create a list of hosts to be agitated:
 
-	$ cp ../../../conf/slaves hosts
+	$ cp ../../../conf/tservers hosts
 	$ echo master >> hosts
 	$ echo namenode >> hosts
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/bench/README.md
----------------------------------------------------------------------
diff --git a/test/system/bench/README.md b/test/system/bench/README.md
index f4a67a8..0929bc3 100644
--- a/test/system/bench/README.md
+++ b/test/system/bench/README.md
@@ -40,9 +40,9 @@ The Benchmarks
 
 Values in a 3-tuple are the slow,medium,fast speeds at which you can run the benchmarks.
 
-* CloudStone1: Test the speed at which we can check that accumulo is up and we can reach all the slaves. Lower is better.  
-* CloudStone2: Ingest 10000,100000,1000000 rows of values 50 bytes on every slave.  Higher is better.  
-* CloudStone3: Ingest 1000,5000,10000 rows of values 1024,8192,65535 bytes on every slave.  Higher is better.  
+* CloudStone1: Test the speed at which we can check that accumulo is up and we can reach all the tservers. Lower is better.  
+* CloudStone2: Ingest 10000,100000,1000000 rows of values 50 bytes on every tserver.  Higher is better.  
+* CloudStone3: Ingest 1000,5000,10000 rows of values 1024,8192,65535 bytes on every tserver.  Higher is better.  
 * CloudStone4 (TeraSort): Ingests 10000,10000000,10000000000 rows. Lower score is better.  
 * CloudStone5: Creates 100,500,1000 tables named TestTableX and then deletes them. Lower is better.  
 * CloudStone6: Creates a table with 400, 800, 1000 splits.  Lower is better.  

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/bench/cloudstone1/cloudstone1.py
----------------------------------------------------------------------
diff --git a/test/system/bench/cloudstone1/cloudstone1.py b/test/system/bench/cloudstone1/cloudstone1.py
index ff5ecb7..309ef9c 100755
--- a/test/system/bench/cloudstone1/cloudstone1.py
+++ b/test/system/bench/cloudstone1/cloudstone1.py
@@ -19,14 +19,14 @@ import time
 
 from lib import cloudshell
 from lib.Benchmark import Benchmark
-from lib.slaves import runAll
+from lib.tservers import runAll
 from lib.path import accumulo
 
 class CloudStone1(Benchmark):
 
     def shortDescription(self):
         return 'Test the speed at which we can check that accumulo is up '\
-               'and we can reach all the slaves. Lower is better.'
+               'and we can reach all the tservers. Lower is better.'
 
     def runTest(self):
         code, out, err = cloudshell.run(self.username, self.password, 'table accumulo.metadata\nscan\n')

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/bench/cloudstone2/cloudstone2.py
----------------------------------------------------------------------
diff --git a/test/system/bench/cloudstone2/cloudstone2.py b/test/system/bench/cloudstone2/cloudstone2.py
index 715b371..996e5ef 100755
--- a/test/system/bench/cloudstone2/cloudstone2.py
+++ b/test/system/bench/cloudstone2/cloudstone2.py
@@ -20,7 +20,7 @@ from lib import cloudshell
 from lib.IngestBenchmark import IngestBenchmark
 
 class CloudStone2(IngestBenchmark):
-    "TestIngest one million small records on each slave"
+    "TestIngest one million small records on each tserver"
     
     _size = 50
     _count = 1000000

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/bench/cloudstone3/cloudstone3.py
----------------------------------------------------------------------
diff --git a/test/system/bench/cloudstone3/cloudstone3.py b/test/system/bench/cloudstone3/cloudstone3.py
index f991378..e6e1bca 100755
--- a/test/system/bench/cloudstone3/cloudstone3.py
+++ b/test/system/bench/cloudstone3/cloudstone3.py
@@ -20,7 +20,7 @@ from lib import cloudshell
 from lib.IngestBenchmark import IngestBenchmark
 
 class CloudStone3(IngestBenchmark):
-    "TestIngest one thousand chunky records on each slave"
+    "TestIngest one thousand chunky records on each tserver"
 
     _size = 65535
     _count = 10000

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/bench/lib/CreateTablesBenchmark.py
----------------------------------------------------------------------
diff --git a/test/system/bench/lib/CreateTablesBenchmark.py b/test/system/bench/lib/CreateTablesBenchmark.py
index 8e129b7..e5761d6 100755
--- a/test/system/bench/lib/CreateTablesBenchmark.py
+++ b/test/system/bench/lib/CreateTablesBenchmark.py
@@ -19,7 +19,7 @@ import subprocess
 
 from lib import cloudshell, runner, path
 from lib.Benchmark import Benchmark
-from lib.slaves import runEach, slaveNames
+from lib.tservers import runEach, tserverNames
 from lib.path import accumulo, accumuloJar
 from lib.util import sleep
 from lib.options import log

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/bench/lib/IngestBenchmark.py
----------------------------------------------------------------------
diff --git a/test/system/bench/lib/IngestBenchmark.py b/test/system/bench/lib/IngestBenchmark.py
index f926701..3036c28 100755
--- a/test/system/bench/lib/IngestBenchmark.py
+++ b/test/system/bench/lib/IngestBenchmark.py
@@ -18,13 +18,13 @@ import unittest
 
 from lib import cloudshell
 from lib.Benchmark import Benchmark
-from lib.slaves import runEach, slaveNames
+from lib.tservers import runEach, tserverNames
 from lib.path import accumulo, accumuloJar
 from lib.util import sleep
 from lib.options import log
 
 class IngestBenchmark(Benchmark):
-    "TestIngest records on each slave"
+    "TestIngest records on each tserver"
     
     rows = 1000000
 
@@ -56,7 +56,7 @@ class IngestBenchmark(Benchmark):
 
     def runTest(self):
         commands = {}
-        for i, s in enumerate(slaveNames()):
+        for i, s in enumerate(tserverNames()):
             commands[s] = '%s %s -u %s -p %s --size %d --random %d --rows %d --start %d --cols %d' % (
                 accumulo('bin', 'accumulo'),
                 'org.apache.accumulo.test.TestIngest',
@@ -68,12 +68,12 @@ class IngestBenchmark(Benchmark):
                 1)
         results = runEach(commands)
         codes = {}
-        for slave, (code, out, err) in results.items():
+        for tserver, (code, out, err) in results.items():
             codes.setdefault(code, [])
-            codes[code].append(slave)
-        for code, slaves in codes.items():
+            codes[code].append(tserver)
+        for code, tservers in codes.items():
             if code != 0:
-                self.assertEqual(code, 0, "Bad exit code (%d) from slaves %r" % (code, slaves))
+                self.assertEqual(code, 0, "Bad exit code (%d) from tservers %r" % (code, tservers))
 
     def score(self):
         if self.finished:
@@ -81,7 +81,7 @@ class IngestBenchmark(Benchmark):
         return 0.
     
     def shortDescription(self):
-        return 'Ingest %d rows of values %d bytes on every slave.  '\
+        return 'Ingest %d rows of values %d bytes on every tserver.  '\
                'Higher is better.' % (self.count(), self.size())
 
     def setSpeed(self, speed):

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/bench/lib/RowHashBenchmark.py
----------------------------------------------------------------------
diff --git a/test/system/bench/lib/RowHashBenchmark.py b/test/system/bench/lib/RowHashBenchmark.py
index fba3b38..89b0fbb 100755
--- a/test/system/bench/lib/RowHashBenchmark.py
+++ b/test/system/bench/lib/RowHashBenchmark.py
@@ -23,7 +23,7 @@ import time
 
 from lib import cloudshell, runner, path
 from lib.Benchmark import Benchmark
-from lib.slaves import runEach, slaveNames
+from lib.tservers import runEach, tserverNames
 from lib.path import accumulo, accumuloJar
 from lib.util import sleep
 from lib.options import log

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/bench/lib/TableSplitsBenchmark.py
----------------------------------------------------------------------
diff --git a/test/system/bench/lib/TableSplitsBenchmark.py b/test/system/bench/lib/TableSplitsBenchmark.py
index 467d41d..2a21fe4 100755
--- a/test/system/bench/lib/TableSplitsBenchmark.py
+++ b/test/system/bench/lib/TableSplitsBenchmark.py
@@ -23,7 +23,7 @@ import time
 
 from lib import cloudshell, runner, path
 from lib.Benchmark import Benchmark
-from lib.slaves import runEach, slaveNames
+from lib.tservers import runEach, tserverNames
 from lib.path import accumulo, accumuloJar
 from lib.util import sleep
 from lib.options import log

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/bench/lib/slaves.py
----------------------------------------------------------------------
diff --git a/test/system/bench/lib/slaves.py b/test/system/bench/lib/slaves.py
deleted file mode 100755
index 35f73a2..0000000
--- a/test/system/bench/lib/slaves.py
+++ /dev/null
@@ -1,89 +0,0 @@
-# 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.
-
-import fcntl
-
-import os
-import time
-import select
-import subprocess
-
-from lib.path import accumuloConf
-from lib.options import log
-
-def slaveNames():
-    return [s.strip() for s in open(accumuloConf('slaves'))]
-
-def runEach(commandMap):
-    result = {}
-    handles = []
-    for slave, command in commandMap.items():
-        log.debug("ssh: %s: %s", slave, command)
-        handle = subprocess.Popen(['ssh',slave] + [command],
-                                  stdout=subprocess.PIPE,
-                                  stderr=subprocess.PIPE)
-        for h in handle.stdout, handle.stderr:
-            fcntl.fcntl(h, fcntl.F_SETFL, os.O_NDELAY)
-        handle.slave = slave
-        handle.command = command
-        handle.start = time.time()
-        handles.append(handle)
-    handlesLeft = set(handles[:])
-    while handlesLeft:
-        fds = {}
-        doomed = set()
-        for h in handlesLeft:
-            more = []
-            if h.stdout != None:
-                more.append(h.stdout)
-            if h.stderr != None:
-                more.append(h.stderr)
-            for m in more:
-                fds[m] = h
-            if not more:
-                doomed.add(h)
-        handlesLeft -= doomed
-        if not handlesLeft: break
-        rd, wr, ex = select.select(fds.keys(), [], [], 10)
-        for r in rd:
-            handle = fds[r]
-            data = r.read(1024)
-            result.setdefault(handle, ['', ''])
-            if not data:
-                if r == handle.stdout:
-                    handle.stdout = None
-                else:
-                    handle.stderr = None
-            if r == handle.stdout:
-                result[handle][0] += data
-            else:
-                result[handle][1] += data
-            if handle.stdout == None and handle.stderr == None:
-                log.debug("Slave %s finished in %.2f",
-                          handle.slave,
-                          time.time() - handle.start)
-                handle.wait()
-        if not rd:
-            log.debug("Waiting on %d slaves (%s...)",
-                      len(handlesLeft),
-                      ', '.join([h.slave for h in handlesLeft])[:50])
-    return dict([(h.slave, (h.returncode, out, err))
-                 for h, (out, err) in result.items()])
-
-def runAll(command):
-    slaves = slaveNames()
-    log.debug("Running %s on %s..", command, ', '.join(slaves)[:50])
-    return runEach(dict([(s, command) for s in slaves]))
-

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/bench/lib/tservers.py
----------------------------------------------------------------------
diff --git a/test/system/bench/lib/tservers.py b/test/system/bench/lib/tservers.py
new file mode 100755
index 0000000..b34397a
--- /dev/null
+++ b/test/system/bench/lib/tservers.py
@@ -0,0 +1,89 @@
+# 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.
+
+import fcntl
+
+import os
+import time
+import select
+import subprocess
+
+from lib.path import accumuloConf
+from lib.options import log
+
+def tserverNames():
+    return [s.strip() for s in open(accumuloConf('tservers'))]
+
+def runEach(commandMap):
+    result = {}
+    handles = []
+    for tserver, command in commandMap.items():
+        log.debug("ssh: %s: %s", tserver, command)
+        handle = subprocess.Popen(['ssh',tserver] + [command],
+                                  stdout=subprocess.PIPE,
+                                  stderr=subprocess.PIPE)
+        for h in handle.stdout, handle.stderr:
+            fcntl.fcntl(h, fcntl.F_SETFL, os.O_NDELAY)
+        handle.tserver = tserver
+        handle.command = command
+        handle.start = time.time()
+        handles.append(handle)
+    handlesLeft = set(handles[:])
+    while handlesLeft:
+        fds = {}
+        doomed = set()
+        for h in handlesLeft:
+            more = []
+            if h.stdout != None:
+                more.append(h.stdout)
+            if h.stderr != None:
+                more.append(h.stderr)
+            for m in more:
+                fds[m] = h
+            if not more:
+                doomed.add(h)
+        handlesLeft -= doomed
+        if not handlesLeft: break
+        rd, wr, ex = select.select(fds.keys(), [], [], 10)
+        for r in rd:
+            handle = fds[r]
+            data = r.read(1024)
+            result.setdefault(handle, ['', ''])
+            if not data:
+                if r == handle.stdout:
+                    handle.stdout = None
+                else:
+                    handle.stderr = None
+            if r == handle.stdout:
+                result[handle][0] += data
+            else:
+                result[handle][1] += data
+            if handle.stdout == None and handle.stderr == None:
+                log.debug("Tserver %s finished in %.2f",
+                          handle.tserver,
+                          time.time() - handle.start)
+                handle.wait()
+        if not rd:
+            log.debug("Waiting on %d tservers (%s...)",
+                      len(handlesLeft),
+                      ', '.join([h.tserver for h in handlesLeft])[:50])
+    return dict([(h.tserver, (h.returncode, out, err))
+                 for h, (out, err) in result.items()])
+
+def runAll(command):
+    tservers = tserverNames()
+    log.debug("Running %s on %s..", command, ', '.join(tservers)[:50])
+    return runEach(dict([(s, command) for s in tservers]))
+

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/continuous/datanode-agitator.pl
----------------------------------------------------------------------
diff --git a/test/system/continuous/datanode-agitator.pl b/test/system/continuous/datanode-agitator.pl
index 1f469b2..a98bb66 100755
--- a/test/system/continuous/datanode-agitator.pl
+++ b/test/system/continuous/datanode-agitator.pl
@@ -80,21 +80,21 @@ if($minKill > $maxKill){
   die("minKill > maxKill $minKill > $maxKill");
 }
 
-@slavesRaw = `cat $ACCUMULO_CONF_DIR/slaves`;
-chomp(@slavesRaw);
+@tserversRaw = `cat $ACCUMULO_CONF_DIR/tservers`;
+chomp(@tserversRaw);
 
-for $slave (@slavesRaw){
-  if($slave eq "" || substr($slave,0,1) eq "#"){
+for $tserver (@tserversRaw){
+  if($tserver eq "" || substr($tserver,0,1) eq "#"){
     next;
   }
 
-  push(@slaves, $slave);
+  push(@tservers, $tserver);
 }
 
 
-if(scalar(@slaves) < $maxKill){
-  print STDERR "WARN setting maxKill to ".scalar(@slaves)."\n";
-  $maxKill = scalar(@slaves);
+if(scalar(@tservers) < $maxKill){
+  print STDERR "WARN setting maxKill to ".scalar(@tservers)."\n";
+  $maxKill = scalar(@tservers);
 }
 
 if ($minKill > $maxKill){
@@ -110,8 +110,8 @@ while(1){
 
   for($i = 0; $i < $numToKill; $i++){
     while($server eq "" || $killed{$server} != undef){
-      $index = int(rand(scalar(@slaves)));
-      $server = $slaves[$index];
+      $index = int(rand(scalar(@tservers)));
+      $server = $tservers[$index];
     }
 
     $killed{$server} = 1;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/continuous/master-agitator.pl
----------------------------------------------------------------------
diff --git a/test/system/continuous/master-agitator.pl b/test/system/continuous/master-agitator.pl
index 329114e..aef6f1f 100755
--- a/test/system/continuous/master-agitator.pl
+++ b/test/system/continuous/master-agitator.pl
@@ -84,7 +84,7 @@ while(1){
 	$t = strftime "%Y%m%d %H:%M:%S", localtime;
 	print STDERR "$t Running start-all\n";
 
-	$cmd = "$ACCUMULO_HOME/bin/start-all.sh --notSlaves";
+	$cmd = "$ACCUMULO_HOME/bin/start-all.sh --notTservers";
 	print "$t $cmd\n";
 	system($cmd);
 }

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/continuous/tserver-agitator.pl
----------------------------------------------------------------------
diff --git a/test/system/continuous/tserver-agitator.pl b/test/system/continuous/tserver-agitator.pl
index b4ae653..0e65a50 100755
--- a/test/system/continuous/tserver-agitator.pl
+++ b/test/system/continuous/tserver-agitator.pl
@@ -78,21 +78,21 @@ if($minKill > $maxKill){
   die("minKill > maxKill $minKill > $maxKill");
 }
 
-@slavesRaw = `cat $ACCUMULO_CONF_DIR/slaves`;
-chomp(@slavesRaw);
+@tserversRaw = `cat $ACCUMULO_CONF_DIR/tservers`;
+chomp(@tserversRaw);
 
-for $slave (@slavesRaw){
-  if($slave eq "" || substr($slave,0,1) eq "#"){
+for $tserver (@tserversRaw){
+  if($tserver eq "" || substr($tserver,0,1) eq "#"){
     next;
   }
 
-  push(@slaves, $slave);
+  push(@tservers, $tserver);
 }
 
 
-if(scalar(@slaves) < $maxKill){
-  print STDERR "WARN setting maxKill to ".scalar(@slaves)."\n";
-  $maxKill = scalar(@slaves);
+if(scalar(@tservers) < $maxKill){
+  print STDERR "WARN setting maxKill to ".scalar(@tservers)."\n";
+  $maxKill = scalar(@tservers);
 }
 
 if ($minKill > $maxKill){
@@ -108,8 +108,8 @@ while(1){
 
   for($i = 0; $i < $numToKill; $i++){
     while($server eq "" || $killed{$server} != undef){
-      $index = int(rand(scalar(@slaves)));
-      $server = $slaves[$index];
+      $index = int(rand(scalar(@tservers)));
+      $server = $tservers[$index];
     }
 
     $killed{$server} = 1;

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/randomwalk/bin/apocalypse.sh
----------------------------------------------------------------------
diff --git a/test/system/randomwalk/bin/apocalypse.sh b/test/system/randomwalk/bin/apocalypse.sh
index 2855a7f..e62b008 100755
--- a/test/system/randomwalk/bin/apocalypse.sh
+++ b/test/system/randomwalk/bin/apocalypse.sh
@@ -44,6 +44,6 @@ if [[ -z $HADOOP_PREFIX ]] ; then
 fi
 
 echo 'killing all accumulo processes'
-pssh -h "$ACCUMULO_HOME/conf/slaves" "pkill -9 -f app=[tmg].*org.apache.accumulo.start " < /dev/null
+pssh -h "$ACCUMULO_HOME/conf/tservers" "pkill -9 -f app=[tmg].*org.apache.accumulo.start " < /dev/null
 pssh -h "$ACCUMULO_HOME/conf/masters" "pkill -9 -f app=[tmg].*org.apache.accumulo.start " < /dev/null
 exit 0

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/randomwalk/bin/reset-cluster.sh
----------------------------------------------------------------------
diff --git a/test/system/randomwalk/bin/reset-cluster.sh b/test/system/randomwalk/bin/reset-cluster.sh
index ab87eb2..700a262 100755
--- a/test/system/randomwalk/bin/reset-cluster.sh
+++ b/test/system/randomwalk/bin/reset-cluster.sh
@@ -53,7 +53,7 @@ if [[ -z $1 ]] ; then
 fi
 
 echo 'killing accumulo'
-pssh -h "$ACCUMULO_CONF_DIR/slaves" "pkill -f org.apache.accumulo.start" < /dev/null
+pssh -h "$ACCUMULO_CONF_DIR/tservers" "pkill -f org.apache.accumulo.start" < /dev/null
 pkill -f org.apache.accumulo.start
 pkill -f agitator.pl
 
@@ -68,10 +68,10 @@ rm -f "$ACCUMULO_HOME/test/system/continuous/logs/*"
 rm -f ~/rwlogs/*
 
 echo 'removing old code'
-pssh -h "$ACCUMULO_CONF_DIR/slaves" "rm -rf $ACCUMULO_HOME" < /dev/null
+pssh -h "$ACCUMULO_CONF_DIR/tservers" "rm -rf $ACCUMULO_HOME" < /dev/null
 
 echo 'pushing new code'
-prsync -r -h "$ACCUMULO_CONF_DIR/slaves" "$ACCUMULO_HOME" /opt/dev
+prsync -r -h "$ACCUMULO_CONF_DIR/tservers" "$ACCUMULO_HOME" /opt/dev
 
 echo 'removing /accumulo dir'
 "$HADOOP_PREFIX/bin/hadoop" fs -rmr /accumulo

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/scalability/README.md
----------------------------------------------------------------------
diff --git a/test/system/scalability/README.md b/test/system/scalability/README.md
index 853d020..4f287d2 100644
--- a/test/system/scalability/README.md
+++ b/test/system/scalability/README.md
@@ -21,7 +21,7 @@ Apache Accumulo Scalability Tests
 The scalability test framework needs to be configured for your Accumulo
 instance by performing the following steps.
 
-WARNING: Each scalability test rewrites your `conf/slaves` file and reinitializes
+WARNING: Each scalability test rewrites your `conf/tservers` file and reinitializes
 your Accumulo instance. Do not run these tests on a cluster holding essential
 data.
 

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/scalability/conf/site.conf.example
----------------------------------------------------------------------
diff --git a/test/system/scalability/conf/site.conf.example b/test/system/scalability/conf/site.conf.example
index 4f1b9ed..e1ce08f 100644
--- a/test/system/scalability/conf/site.conf.example
+++ b/test/system/scalability/conf/site.conf.example
@@ -22,6 +22,6 @@ USER=root
 # password
 PASSWORD=secret
 # used to determine which nodes to run tests on
-SLAVES=/accumulo/conf/slaves
+TSERVERS=/accumulo/conf/tservers
 # sets the number of nodes for each test case
 TEST_CASES=1,2,4,8,16

http://git-wip-us.apache.org/repos/asf/accumulo/blob/d1b0ea5b/test/system/scalability/run.py
----------------------------------------------------------------------
diff --git a/test/system/scalability/run.py b/test/system/scalability/run.py
index 5544234..68836e5 100755
--- a/test/system/scalability/run.py
+++ b/test/system/scalability/run.py
@@ -51,13 +51,13 @@ def runTest(testName, siteConfig, testDir, numNodes, fdata):
     log('Stopping accumulo')
     syscall('$ACCUMULO_HOME/bin/stop-all.sh')
  
-    log('Creating slaves file for this test')
-    slavesPath = siteConfig.get('SLAVES')
+    log('Creating tservers file for this test')
+    tserversPath = siteConfig.get('TSERVERS')
     nodesPath = testDir+'/nodes/%d' % numNodes
-    syscall('head -n %d %s > %s' % (numNodes,slavesPath,nodesPath))
+    syscall('head -n %d %s > %s' % (numNodes,tserversPath,nodesPath))
 
-    log('Copying slaves file to accumulo config')
-    syscall('cp '+nodesPath+' $ACCUMULO_CONF_DIR/slaves');
+    log('Copying tservers file to accumulo config')
+    syscall('cp '+nodesPath+' $ACCUMULO_CONF_DIR/tservers');
 
     log('Removing /accumulo directory in HDFS')
     syscall("hadoop fs -rmr /accumulo")
@@ -210,8 +210,8 @@ def main():
     syscall('hadoop fs -copyFromLocal ./conf /accumulo-scale/conf')
 
     siteConfig = JavaConfig('conf/site.conf');
-    slavesPath = siteConfig.get('SLAVES')
-    maxNodes = file_len(slavesPath)
+    tserversPath = siteConfig.get('TSERVERS')
+    maxNodes = file_len(tserversPath)
 
     fdata = open('%s/scale.dat' % testDir, 'w')
     fdata.write('Tservs\tClients\tMin\tAvg\tMed\tMax\tEntries\tMB\n')
@@ -219,7 +219,7 @@ def main():
     for numNodes in siteConfig.get('TEST_CASES').split(','):
         log('Running %s test with %s nodes' % (testName, numNodes))
         if int(numNodes) > maxNodes:
-            logging.error('Skipping %r test case as slaves file %r contains only %r nodes', numNodes, slavesPath, maxNodes)
+            logging.error('Skipping %r test case as tservers file %r contains only %r nodes', numNodes, tserversPath, maxNodes)
             continue
         runTest(testName, siteConfig, testDir, int(numNodes), fdata)
         sys.stdout.flush()


Mime
View raw message