You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by el...@apache.org on 2014/08/28 03:46:01 UTC
[1/9] git commit: ACCUMULO-3084 just warn about long timer delays
Repository: accumulo
Updated Branches:
refs/heads/1.5.2-SNAPSHOT 6f2fd4d3a -> f838cd9e4
refs/heads/1.6.1-SNAPSHOT 8808ecbf1 -> 8147b196a
refs/heads/master 572d473d3 -> 91186bf27
ACCUMULO-3084 just warn about long timer delays
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/6f2fd4d3
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/6f2fd4d3
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/6f2fd4d3
Branch: refs/heads/1.6.1-SNAPSHOT
Commit: 6f2fd4d3a54bad464dc3eb0982c4e4e2e5590366
Parents: 30a0ca3
Author: Eric C. Newton <er...@gmail.com>
Authored: Tue Aug 26 17:17:44 2014 -0400
Committer: Eric C. Newton <er...@gmail.com>
Committed: Tue Aug 26 17:48:53 2014 -0400
----------------------------------------------------------------------
.../accumulo/server/tabletserver/TabletServer.java | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/6f2fd4d3/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java b/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java
index b9b68bb..1e3e1b1 100644
--- a/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java
+++ b/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java
@@ -234,9 +234,11 @@ public class TabletServer extends AbstractMetricsImpl implements org.apache.accu
private static HashMap<String,Long> prevGcTime = new HashMap<String,Long>();
private static long lastMemorySize = 0;
+ private static long lastMemoryCheckTime = 0;
private static long gcTimeIncreasedCount;
private static final long MAX_TIME_TO_WAIT_FOR_SCAN_RESULT_MILLIS = 1000;
+ private static final long TIME_BETWEEN_GC_CHECKS = 5000;
private TabletServerLogger logger;
@@ -264,10 +266,12 @@ public class TabletServer extends AbstractMetricsImpl implements org.apache.accu
}
}
}
- }, 5000, 5000);
+ }, TIME_BETWEEN_GC_CHECKS, TIME_BETWEEN_GC_CHECKS);
}
private synchronized static void logGCInfo(AccumuloConfiguration conf) {
+ long now = System.currentTimeMillis();
+
List<GarbageCollectorMXBean> gcmBeans = ManagementFactory.getGarbageCollectorMXBeans();
Runtime rt = Runtime.getRuntime();
@@ -322,12 +326,22 @@ public class TabletServer extends AbstractMetricsImpl implements org.apache.accu
log.debug(sb.toString());
}
+ if (lastMemoryCheckTime > 0 && lastMemoryCheckTime < now) {
+ long diff = now - lastMemoryCheckTime;
+ if (diff > 2 * TIME_BETWEEN_GC_CHECKS) {
+ log.warn(String.format("Check for long GC pauses not called in a timely fashion %.1f", diff / 1000.));
+ }
+ lastMemoryCheckTime = now;
+ return;
+ }
+
final long keepAliveTimeout = conf.getTimeInMillis(Property.INSTANCE_ZK_TIMEOUT);
if (maxIncreaseInCollectionTime > keepAliveTimeout) {
Halt.halt("Garbage collection may be interfering with lock keep-alive. Halting.", -1);
}
lastMemorySize = mem;
+ lastMemoryCheckTime = now;
}
private TabletStatsKeeper statsKeeper;
[2/9] git commit: ACCUMULO-3084 just warn about long timer delays
Posted by el...@apache.org.
ACCUMULO-3084 just warn about long timer delays
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/6f2fd4d3
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/6f2fd4d3
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/6f2fd4d3
Branch: refs/heads/master
Commit: 6f2fd4d3a54bad464dc3eb0982c4e4e2e5590366
Parents: 30a0ca3
Author: Eric C. Newton <er...@gmail.com>
Authored: Tue Aug 26 17:17:44 2014 -0400
Committer: Eric C. Newton <er...@gmail.com>
Committed: Tue Aug 26 17:48:53 2014 -0400
----------------------------------------------------------------------
.../accumulo/server/tabletserver/TabletServer.java | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/6f2fd4d3/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java b/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java
index b9b68bb..1e3e1b1 100644
--- a/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java
+++ b/server/src/main/java/org/apache/accumulo/server/tabletserver/TabletServer.java
@@ -234,9 +234,11 @@ public class TabletServer extends AbstractMetricsImpl implements org.apache.accu
private static HashMap<String,Long> prevGcTime = new HashMap<String,Long>();
private static long lastMemorySize = 0;
+ private static long lastMemoryCheckTime = 0;
private static long gcTimeIncreasedCount;
private static final long MAX_TIME_TO_WAIT_FOR_SCAN_RESULT_MILLIS = 1000;
+ private static final long TIME_BETWEEN_GC_CHECKS = 5000;
private TabletServerLogger logger;
@@ -264,10 +266,12 @@ public class TabletServer extends AbstractMetricsImpl implements org.apache.accu
}
}
}
- }, 5000, 5000);
+ }, TIME_BETWEEN_GC_CHECKS, TIME_BETWEEN_GC_CHECKS);
}
private synchronized static void logGCInfo(AccumuloConfiguration conf) {
+ long now = System.currentTimeMillis();
+
List<GarbageCollectorMXBean> gcmBeans = ManagementFactory.getGarbageCollectorMXBeans();
Runtime rt = Runtime.getRuntime();
@@ -322,12 +326,22 @@ public class TabletServer extends AbstractMetricsImpl implements org.apache.accu
log.debug(sb.toString());
}
+ if (lastMemoryCheckTime > 0 && lastMemoryCheckTime < now) {
+ long diff = now - lastMemoryCheckTime;
+ if (diff > 2 * TIME_BETWEEN_GC_CHECKS) {
+ log.warn(String.format("Check for long GC pauses not called in a timely fashion %.1f", diff / 1000.));
+ }
+ lastMemoryCheckTime = now;
+ return;
+ }
+
final long keepAliveTimeout = conf.getTimeInMillis(Property.INSTANCE_ZK_TIMEOUT);
if (maxIncreaseInCollectionTime > keepAliveTimeout) {
Halt.halt("Garbage collection may be interfering with lock keep-alive. Halting.", -1);
}
lastMemorySize = mem;
+ lastMemoryCheckTime = now;
}
private TabletStatsKeeper statsKeeper;
[9/9] git commit: Merge branch '1.6.1-SNAPSHOT'
Posted by el...@apache.org.
Merge branch '1.6.1-SNAPSHOT'
Conflicts:
assemble/bin/start-server.sh
assemble/bin/stop-server.sh
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/91186bf2
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/91186bf2
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/91186bf2
Branch: refs/heads/master
Commit: 91186bf2779185a679ed1e7a7ce0680d0e4cb9e6
Parents: 572d473 8147b19
Author: Josh Elser <el...@apache.org>
Authored: Wed Aug 27 21:42:32 2014 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Wed Aug 27 21:42:32 2014 -0400
----------------------------------------------------------------------
assemble/bin/start-server.sh | 20 ++++++++++++++------
assemble/bin/stop-server.sh | 2 +-
2 files changed, 15 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/91186bf2/assemble/bin/start-server.sh
----------------------------------------------------------------------
diff --cc assemble/bin/start-server.sh
index 2afabb9,aa1375a..43b5d8c
--- a/assemble/bin/start-server.sh
+++ b/assemble/bin/start-server.sh
@@@ -35,43 -35,54 +35,51 @@@ if [[ $? != 0 ]]; the
else
LOGHOST=$(host "$1" | head -1 | cut -d' ' -f1)
fi
-ADDRESS="$1"
-SERVICE="$2"
-LONGNAME="$3"
-if [ -z "$LONGNAME" ]; then
- LONGNAME="$2"
-fi
-SLAVES=$( wc -l < ${ACCUMULO_CONF_DIR}/slaves )
+ADDRESS=$1
+SERVICE=$2
+LONGNAME=$3
+[[ -z $LONGNAME ]] && LONGNAME=$2
+
+SLAVES=$(wc -l < "${ACCUMULO_CONF_DIR}/slaves")
IFCONFIG=/sbin/ifconfig
-if [ ! -x $IFCONFIG ]; then
- IFCONFIG='/bin/netstat -ie'
-fi
+[[ ! -x $IFCONFIG ]] && IFCONFIG='/bin/netstat -ie'
+
- # ACCUMULO-1985 Allow monitor to bind on all interfaces
- if [[ $SERVICE == monitor && $ACCUMULO_MONITOR_BIND_ALL == true ]]; then
- ADDRESS="0.0.0.0"
- fi
-ip=$($IFCONFIG 2>/dev/null| grep inet[^6] | awk '{print $2}' | sed 's/addr://' | grep -v 0.0.0.0 | grep -v 127.0.0.1 | head -n 1)
-if [ $? != 0 ]
-then
- ip=$(python -c 'import socket as s; print s.gethostbyname(s.getfqdn())')
+IP=$($IFCONFIG 2>/dev/null| grep "inet[^6]" | awk '{print $2}' | sed 's/addr://' | grep -v 0.0.0.0 | grep -v 127.0.0.1 | head -n 1)
+if [[ $? != 0 ]] ; then
+ IP=$(python -c 'import socket as s; print s.gethostbyname(s.getfqdn())')
fi
- if [[ $HOST == localhost || $HOST == "$(hostname)" || $HOST = "$IP" ]]; then
+ # 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.
-if [ "$HOST" = "`hostname -s`" ]; then
- HOST="`hostname -f`"
++if [[ "$HOST" = "$(hostname -s)" ]]; then
++ HOST="$(hostname -f)"
+ ADDRESS="$HOST"
+ fi
+
+ # ACCUMULO-1985 Allow monitor to bind on all interfaces
-if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
++if [[ ${SERVICE} == "monitor" && ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]]; then
+ ADDRESS="0.0.0.0"
+ fi
+
-if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
++if [[ $HOST == localhost || $HOST == "$(hostname -f)" || $HOST = "$IP" ]]; then
PID=$(ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
else
- PID=$($SSH $HOST ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
+ PID=$($SSH "$HOST" ps -ef | egrep "${ACCUMULO_HOME}/.*/accumulo.*.jar" | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
fi
-if [ -z "$PID" ]; then
+if [[ -z "$PID" ]]; then
echo "Starting $LONGNAME on $HOST"
- if [[ $HOST == localhost || $HOST == "$(hostname)" || $HOST = "$IP" ]]; then
- if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
- ${bin}/accumulo ${SERVICE} --address ${ADDRESS} >${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out 2>${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err &
++ if [[ $HOST == localhost || $HOST == "$(hostname -f)" || $HOST = "$IP" ]]; then
+ "${bin}/accumulo" "${SERVICE}" --address "${ADDRESS}" >"${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out" 2>"${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err" &
MAX_FILES_OPEN=$(ulimit -n)
else
- $SSH $HOST "bash -c 'exec nohup ${bin}/accumulo ${SERVICE} --address ${ADDRESS} >${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out 2>${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err' &"
- MAX_FILES_OPEN=$($SSH $HOST "/usr/bin/env bash -c 'ulimit -n'")
+ $SSH "$HOST" "bash -c 'exec nohup ${bin}/accumulo ${SERVICE} --address ${ADDRESS} >${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out 2>${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err' &"
+ MAX_FILES_OPEN=$($SSH "$HOST" "/usr/bin/env bash -c 'ulimit -n'")
fi
- if [ -n "$MAX_FILES_OPEN" ] && [ -n "$SLAVES" ] ; then
+ if [[ -n $MAX_FILES_OPEN && -n $SLAVES ]] ; then
MAX_FILES_RECOMMENDED=${MAX_FILES_RECOMMENDED:-32768}
if (( SLAVES > 10 )) && (( MAX_FILES_OPEN < MAX_FILES_RECOMMENDED ))
then
http://git-wip-us.apache.org/repos/asf/accumulo/blob/91186bf2/assemble/bin/stop-server.sh
----------------------------------------------------------------------
diff --cc assemble/bin/stop-server.sh
index 52696af,d615172..78ef783
--- a/assemble/bin/stop-server.sh
+++ b/assemble/bin/stop-server.sh
@@@ -39,16 -41,16 +39,16 @@@ the
fi
# only stop if there's not one already running
- if [[ $HOST == localhost || $HOST = "$(hostname)" || $HOST = "$IP" ]] ; then
-if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -s`" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
++if [[ $HOST == localhost || $HOST = "$(hostname -s)" || $HOST = "$(hostname -f)" || $HOST = "$IP" ]] ; then
PID=$(ps -ef | grep "$ACCUMULO_HOME" | egrep ${2} | grep "Main ${3}" | grep -v grep | grep -v ssh | grep -v stop-server.sh | awk {'print $2'} | head -1)
- if [ ! -z $PID ]; then
+ if [[ -n $PID ]]; then
echo "Stopping ${3} on $1";
- kill -s ${4} ${PID} 2>/dev/null
+ kill -s "${4}" "${PID}" 2>/dev/null
fi;
else
- PID=$(ssh -q -o 'ConnectTimeout 8' $1 "ps -ef | grep \"$ACCUMULO_HOME\" | egrep '${2}' | grep 'Main ${3}' | grep -v grep | grep -v ssh | grep -v stop-server.sh" | awk {'print $2'} | head -1)
- if [ ! -z $PID ]; then
+ PID=$(ssh -q -o 'ConnectTimeout 8' "$1" "ps -ef | grep \"$ACCUMULO_HOME\" | egrep '${2}' | grep 'Main ${3}' | grep -v grep | grep -v ssh | grep -v stop-server.sh" | awk {'print $2'} | head -1)
+ if [[ -n $PID ]]; then
echo "Stopping ${3} on $1";
- ssh -q -o 'ConnectTimeout 8' $1 "kill -s ${4} ${PID} 2>/dev/null"
+ ssh -q -o 'ConnectTimeout 8' "$1" "kill -s ${4} ${PID} 2>/dev/null"
fi;
fi
[6/9] git commit: ACCUMULO-3087 Attempt to expand shortname to FQDN.
Posted by el...@apache.org.
ACCUMULO-3087 Attempt to expand shortname to FQDN.
This should make start-server.sh a bit more resilient
against thinking it needs to SSH around. Instead of having
to match exactly what `hostname` is returning, this should
prevent an (unnecessary) SSH just because hostname is returning
the short instead of full, or vice versa.
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/f838cd9e
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/f838cd9e
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/f838cd9e
Branch: refs/heads/1.5.2-SNAPSHOT
Commit: f838cd9e4afa18f6854c49b089fb5e40e94b0958
Parents: 6f2fd4d
Author: Josh Elser <el...@apache.org>
Authored: Wed Aug 27 20:46:51 2014 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Wed Aug 27 20:46:51 2014 -0400
----------------------------------------------------------------------
bin/start-server.sh | 21 ++++++++++++++-------
bin/stop-server.sh | 2 +-
2 files changed, 15 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/f838cd9e/bin/start-server.sh
----------------------------------------------------------------------
diff --git a/bin/start-server.sh b/bin/start-server.sh
index f5fd33a..5fa2156 100755
--- a/bin/start-server.sh
+++ b/bin/start-server.sh
@@ -47,18 +47,25 @@ if [ ! -x $IFCONFIG ]; then
IFCONFIG='/bin/netstat -ie'
fi
-# ACCUMULO-1985 Allow monitor to bind on all interfaces
-if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
- ADDRESS="0.0.0.0"
-fi
-
ip=$($IFCONFIG 2>/dev/null| grep inet[^6] | awk '{print $2}' | sed 's/addr://' | grep -v 0.0.0.0 | grep -v 127.0.0.1 | head -n 1)
if [ $? != 0 ]
then
ip=$(python -c 'import socket as s; print s.gethostbyname(s.getfqdn())')
fi
-if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
+# 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.
+if [ "$HOST" = "`hostname -s`" ]; then
+ HOST="`hostname -f`"
+ ADDRESS="$HOST"
+fi
+
+# ACCUMULO-1985 Allow monitor to bind on all interfaces
+if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
+ ADDRESS="0.0.0.0"
+fi
+
+if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
PID=$(ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
else
PID=$($SSH $HOST ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
@@ -66,7 +73,7 @@ fi
if [ -z $PID ]; then
echo "Starting $LONGNAME on $HOST"
- if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
+ if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
${bin}/accumulo ${SERVICE} --address ${ADDRESS} >${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out 2>${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err &
MAX_FILES_OPEN=$(ulimit -n)
else
http://git-wip-us.apache.org/repos/asf/accumulo/blob/f838cd9e/bin/stop-server.sh
----------------------------------------------------------------------
diff --git a/bin/stop-server.sh b/bin/stop-server.sh
index 6fbe0af..d615172 100755
--- a/bin/stop-server.sh
+++ b/bin/stop-server.sh
@@ -41,7 +41,7 @@ then
fi
# only stop if there's not one already running
-if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
+if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -s`" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
PID=$(ps -ef | grep "$ACCUMULO_HOME" | egrep ${2} | grep "Main ${3}" | grep -v grep | grep -v ssh | grep -v stop-server.sh | awk {'print $2'} | head -1)
if [ ! -z $PID ]; then
echo "Stopping ${3} on $1";
[3/9] git commit: Merge branch '1.6.1-SNAPSHOT' of
https://git-wip-us.apache.org/repos/asf/accumulo into 1.6.1-SNAPSHOT
Posted by el...@apache.org.
Merge branch '1.6.1-SNAPSHOT' of https://git-wip-us.apache.org/repos/asf/accumulo into 1.6.1-SNAPSHOT
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/8808ecbf
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/8808ecbf
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/8808ecbf
Branch: refs/heads/master
Commit: 8808ecbf1a14b3982882a4e66da5689633477726
Parents: c906e4b 2eabaf7
Author: Eric C. Newton <er...@gmail.com>
Authored: Tue Aug 26 18:03:46 2014 -0400
Committer: Eric C. Newton <er...@gmail.com>
Committed: Tue Aug 26 18:03:46 2014 -0400
----------------------------------------------------------------------
.gitignore | 19 +-
README | 41 +-
assemble/.gitignore | 25 +
assemble/bin/LogForwarder.sh | 50 +
assemble/bin/accumulo | 171 +
assemble/bin/bootstrap_config.sh | 323 +
assemble/bin/bootstrap_hdfs.sh | 84 +
assemble/bin/build_native_library.sh | 74 +
assemble/bin/check-slaves | 199 +
assemble/bin/config.sh | 177 +
assemble/bin/generate_monitor_certificate.sh | 84 +
assemble/bin/start-all.sh | 77 +
assemble/bin/start-here.sh | 78 +
assemble/bin/start-server.sh | 87 +
assemble/bin/stop-all.sh | 68 +
assemble/bin/stop-here.sh | 60 +
assemble/bin/stop-server.sh | 56 +
assemble/bin/tdown.sh | 49 +
assemble/bin/tool.sh | 92 +
assemble/bin/tup.sh | 46 +
assemble/conf/examples/crypto/README | 23 +
assemble/conf/examples/crypto/accumulo-site.xml | 171 +
.../examples/vfs-classloader/accumulo-site.xml | 175 +
assemble/conf/templates/accumulo-env.sh | 66 +
assemble/conf/templates/accumulo-metrics.xml | 56 +
assemble/conf/templates/accumulo-site.xml | 132 +
assemble/conf/templates/accumulo.policy.example | 143 +
assemble/conf/templates/auditLog.xml | 35 +
assemble/conf/templates/gc | 16 +
.../conf/templates/generic_logger.properties | 58 +
assemble/conf/templates/generic_logger.xml | 83 +
assemble/conf/templates/log4j.properties | 42 +
assemble/conf/templates/masters | 16 +
assemble/conf/templates/monitor | 16 +
.../conf/templates/monitor_logger.properties | 44 +
assemble/conf/templates/monitor_logger.xml | 64 +
assemble/conf/templates/slaves | 16 +
assemble/conf/templates/tracers | 16 +
assemble/pom.xml | 60 +
assemble/src/main/assemblies/component.xml | 71 +-
.../main/scripts/generate-example-configs.sh | 25 +
bin/LogForwarder.sh | 50 -
bin/accumulo | 171 -
bin/bootstrap_config.sh | 319 -
bin/bootstrap_hdfs.sh | 84 -
bin/build_native_library.sh | 74 -
bin/check-slaves | 199 -
bin/config.sh | 173 -
bin/generate_monitor_certificate.sh | 84 -
bin/start-all.sh | 77 -
bin/start-here.sh | 78 -
bin/start-server.sh | 85 -
bin/stop-all.sh | 68 -
bin/stop-here.sh | 60 -
bin/stop-server.sh | 56 -
bin/tdown.sh | 49 -
bin/tool.sh | 92 -
bin/tup.sh | 46 -
conf/accumulo.policy.example | 143 -
.../1GB/native-standalone/accumulo-env.sh | 66 -
.../1GB/native-standalone/accumulo-metrics.xml | 60 -
.../1GB/native-standalone/accumulo-site.xml | 122 -
.../examples/1GB/native-standalone/auditLog.xml | 41 -
conf/examples/1GB/native-standalone/gc | 16 -
.../1GB/native-standalone/generic_logger.xml | 83 -
.../1GB/native-standalone/log4j.properties | 42 -
conf/examples/1GB/native-standalone/masters | 16 -
conf/examples/1GB/native-standalone/monitor | 16 -
.../1GB/native-standalone/monitor_logger.xml | 64 -
conf/examples/1GB/native-standalone/slaves | 16 -
conf/examples/1GB/native-standalone/tracers | 16 -
conf/examples/1GB/standalone/accumulo-env.sh | 66 -
.../1GB/standalone/accumulo-metrics.xml | 60 -
conf/examples/1GB/standalone/accumulo-site.xml | 122 -
conf/examples/1GB/standalone/auditLog.xml | 41 -
conf/examples/1GB/standalone/gc | 16 -
conf/examples/1GB/standalone/generic_logger.xml | 83 -
conf/examples/1GB/standalone/log4j.properties | 42 -
conf/examples/1GB/standalone/masters | 16 -
conf/examples/1GB/standalone/monitor | 16 -
conf/examples/1GB/standalone/monitor_logger.xml | 64 -
conf/examples/1GB/standalone/slaves | 16 -
conf/examples/1GB/standalone/tracers | 16 -
.../2GB/native-standalone/accumulo-env.sh | 65 -
.../2GB/native-standalone/accumulo-metrics.xml | 60 -
.../2GB/native-standalone/accumulo-site.xml | 112 -
.../examples/2GB/native-standalone/auditLog.xml | 41 -
conf/examples/2GB/native-standalone/gc | 16 -
.../2GB/native-standalone/generic_logger.xml | 83 -
.../2GB/native-standalone/log4j.properties | 42 -
conf/examples/2GB/native-standalone/masters | 16 -
conf/examples/2GB/native-standalone/monitor | 16 -
.../2GB/native-standalone/monitor_logger.xml | 64 -
conf/examples/2GB/native-standalone/slaves | 16 -
conf/examples/2GB/native-standalone/tracers | 16 -
conf/examples/2GB/standalone/accumulo-env.sh | 66 -
.../2GB/standalone/accumulo-metrics.xml | 60 -
conf/examples/2GB/standalone/accumulo-site.xml | 125 -
conf/examples/2GB/standalone/auditLog.xml | 41 -
conf/examples/2GB/standalone/gc | 16 -
conf/examples/2GB/standalone/generic_logger.xml | 83 -
conf/examples/2GB/standalone/log4j.properties | 42 -
conf/examples/2GB/standalone/masters | 16 -
conf/examples/2GB/standalone/monitor | 16 -
conf/examples/2GB/standalone/monitor_logger.xml | 64 -
conf/examples/2GB/standalone/slaves | 16 -
conf/examples/2GB/standalone/tracers | 16 -
.../3GB/native-standalone/accumulo-env.sh | 65 -
.../3GB/native-standalone/accumulo-metrics.xml | 60 -
.../3GB/native-standalone/accumulo-site.xml | 107 -
.../examples/3GB/native-standalone/auditLog.xml | 41 -
conf/examples/3GB/native-standalone/gc | 16 -
.../3GB/native-standalone/generic_logger.xml | 83 -
.../3GB/native-standalone/log4j.properties | 42 -
conf/examples/3GB/native-standalone/masters | 16 -
conf/examples/3GB/native-standalone/monitor | 16 -
.../3GB/native-standalone/monitor_logger.xml | 64 -
conf/examples/3GB/native-standalone/slaves | 16 -
conf/examples/3GB/native-standalone/tracers | 16 -
conf/examples/3GB/standalone/accumulo-env.sh | 65 -
.../3GB/standalone/accumulo-metrics.xml | 60 -
conf/examples/3GB/standalone/accumulo-site.xml | 112 -
conf/examples/3GB/standalone/auditLog.xml | 41 -
conf/examples/3GB/standalone/gc | 16 -
conf/examples/3GB/standalone/generic_logger.xml | 83 -
conf/examples/3GB/standalone/log4j.properties | 42 -
conf/examples/3GB/standalone/masters | 16 -
conf/examples/3GB/standalone/monitor | 16 -
conf/examples/3GB/standalone/monitor_logger.xml | 64 -
conf/examples/3GB/standalone/slaves | 16 -
conf/examples/3GB/standalone/tracers | 16 -
.../512MB/native-standalone/accumulo-env.sh | 65 -
.../native-standalone/accumulo-metrics.xml | 60 -
.../512MB/native-standalone/accumulo-site.xml | 117 -
.../512MB/native-standalone/auditLog.xml | 41 -
conf/examples/512MB/native-standalone/gc | 16 -
.../512MB/native-standalone/generic_logger.xml | 83 -
.../512MB/native-standalone/log4j.properties | 42 -
conf/examples/512MB/native-standalone/masters | 16 -
conf/examples/512MB/native-standalone/monitor | 16 -
.../512MB/native-standalone/monitor_logger.xml | 64 -
conf/examples/512MB/native-standalone/slaves | 16 -
conf/examples/512MB/native-standalone/tracers | 16 -
conf/examples/512MB/standalone/accumulo-env.sh | 65 -
.../512MB/standalone/accumulo-metrics.xml | 60 -
.../examples/512MB/standalone/accumulo-site.xml | 123 -
conf/examples/512MB/standalone/auditLog.xml | 41 -
conf/examples/512MB/standalone/gc | 16 -
.../512MB/standalone/generic_logger.xml | 83 -
conf/examples/512MB/standalone/log4j.properties | 42 -
conf/examples/512MB/standalone/masters | 16 -
conf/examples/512MB/standalone/monitor | 16 -
.../512MB/standalone/monitor_logger.xml | 64 -
conf/examples/512MB/standalone/slaves | 16 -
conf/examples/512MB/standalone/tracers | 16 -
conf/examples/crypto/README | 23 -
conf/examples/crypto/accumulo-site.xml | 171 -
conf/examples/vfs-classloader/accumulo-site.xml | 175 -
conf/templates/accumulo-env.sh | 66 -
conf/templates/accumulo-metrics.xml | 60 -
conf/templates/accumulo-site.xml | 132 -
conf/templates/accumulo.policy.example | 143 -
conf/templates/auditLog.xml | 35 -
conf/templates/gc | 16 -
conf/templates/generic_logger.properties | 58 -
conf/templates/generic_logger.xml | 83 -
conf/templates/log4j.properties | 42 -
conf/templates/masters | 16 -
conf/templates/monitor | 16 -
conf/templates/monitor_logger.properties | 44 -
conf/templates/monitor_logger.xml | 64 -
conf/templates/slaves | 16 -
conf/templates/tracers | 16 -
core/.gitignore | 25 +
.../org/apache/accumulo/core/Constants.java | 5 +-
.../accumulo/core/cli/BatchWriterOpts.java | 1 +
.../core/client/AccumuloSecurityException.java | 8 +
.../accumulo/core/client/BatchWriterConfig.java | 107 +-
.../client/impl/ServerConfigurationUtil.java | 63 +-
.../core/client/impl/TableOperationsImpl.java | 6 +-
.../core/client/impl/ThriftScanner.java | 16 +-
.../core/client/impl/thrift/ClientService.java | 2939 +++++--
.../client/impl/thrift/ConfigurationType.java | 2 +-
.../client/impl/thrift/SecurityErrorCode.java | 2 +-
.../core/client/impl/thrift/TDiskUsage.java | 25 +-
.../core/client/impl/thrift/TableOperation.java | 2 +-
.../thrift/TableOperationExceptionType.java | 2 +-
.../impl/thrift/ThriftSecurityException.java | 16 +-
.../thrift/ThriftTableOperationException.java | 28 +-
.../core/client/impl/thrift/ThriftTest.java | 243 +-
.../core/client/mapreduce/RangeInputSplit.java | 32 +
.../tokens/CredentialProviderToken.java | 91 +
.../client/security/tokens/PasswordToken.java | 8 +-
.../core/conf/AccumuloConfiguration.java | 10 -
.../accumulo/core/conf/ConfigSanityCheck.java | 46 +-
.../accumulo/core/conf/ConfigurationDocGen.java | 19 +-
.../conf/CredentialProviderFactoryShim.java | 439 +
.../core/conf/DefaultConfiguration.java | 60 +-
.../core/conf/ObservableConfiguration.java | 108 +
.../org/apache/accumulo/core/conf/Property.java | 19 +-
.../apache/accumulo/core/conf/PropertyType.java | 3 +-
.../accumulo/core/conf/SiteConfiguration.java | 68 +-
.../core/data/thrift/InitialMultiScan.java | 16 +-
.../accumulo/core/data/thrift/InitialScan.java | 16 +-
.../accumulo/core/data/thrift/IterInfo.java | 20 +-
.../accumulo/core/data/thrift/MapFileInfo.java | 12 +-
.../core/data/thrift/MultiScanResult.java | 60 +-
.../accumulo/core/data/thrift/ScanResult.java | 22 +-
.../accumulo/core/data/thrift/TCMResult.java | 16 +-
.../accumulo/core/data/thrift/TCMStatus.java | 2 +-
.../accumulo/core/data/thrift/TColumn.java | 20 +-
.../accumulo/core/data/thrift/TCondition.java | 36 +-
.../core/data/thrift/TConditionalMutation.java | 26 +-
.../core/data/thrift/TConditionalSession.java | 20 +-
.../thrift/TConstraintViolationSummary.java | 24 +-
.../apache/accumulo/core/data/thrift/TKey.java | 28 +-
.../accumulo/core/data/thrift/TKeyExtent.java | 20 +-
.../accumulo/core/data/thrift/TKeyValue.java | 16 +-
.../accumulo/core/data/thrift/TMutation.java | 35 +-
.../accumulo/core/data/thrift/TRange.java | 32 +-
.../accumulo/core/data/thrift/UpdateErrors.java | 46 +-
.../accumulo/core/file/rfile/PrintInfo.java | 5 +-
.../core/file/rfile/bcfile/PrintInfo.java | 5 +-
.../core/gc/thrift/GCMonitorService.java | 108 +-
.../accumulo/core/gc/thrift/GCStatus.java | 24 +-
.../accumulo/core/gc/thrift/GcCycleStats.java | 32 +-
.../accumulo/core/iterators/Combiner.java | 8 +-
.../accumulo/core/iterators/IteratorUtil.java | 64 +-
.../iterators/conf/ColumnToClassMapping.java | 10 +-
.../core/iterators/system/HeapIterator.java | 132 +-
.../system/SourceSwitchingIterator.java | 2 +-
.../iterators/user/RowEncodingIterator.java | 8 -
.../accumulo/core/iterators/user/RowFilter.java | 15 +-
.../accumulo/core/master/thrift/Compacting.java | 16 +-
.../accumulo/core/master/thrift/DeadServer.java | 20 +-
.../core/master/thrift/FateOperation.java | 2 +-
.../core/master/thrift/FateService.java | 441 +-
.../core/master/thrift/MasterClientService.java | 1287 ++-
.../core/master/thrift/MasterGoalState.java | 2 +-
.../core/master/thrift/MasterMonitorInfo.java | 92 +-
.../core/master/thrift/MasterState.java | 2 +-
.../core/master/thrift/RecoveryException.java | 12 +-
.../core/master/thrift/RecoveryStatus.java | 20 +-
.../accumulo/core/master/thrift/TableInfo.java | 56 +-
.../core/master/thrift/TabletLoadState.java | 2 +-
.../core/master/thrift/TabletServerStatus.java | 68 +-
.../core/master/thrift/TabletSplit.java | 22 +-
.../core/security/ColumnVisibility.java | 66 +-
.../core/security/thrift/TCredentials.java | 24 +-
.../core/tabletserver/thrift/ActionStats.java | 40 +-
.../tabletserver/thrift/ActiveCompaction.java | 98 +-
.../core/tabletserver/thrift/ActiveScan.java | 110 +-
.../tabletserver/thrift/CompactionReason.java | 2 +-
.../tabletserver/thrift/CompactionType.java | 2 +-
.../thrift/ConstraintViolationException.java | 18 +-
.../tabletserver/thrift/IteratorConfig.java | 18 +-
.../thrift/NoSuchScanIDException.java | 8 +-
.../thrift/NotServingTabletException.java | 12 +-
.../core/tabletserver/thrift/ScanState.java | 2 +-
.../core/tabletserver/thrift/ScanType.java | 2 +-
.../tabletserver/thrift/TIteratorSetting.java | 45 +-
.../thrift/TabletClientService.java | 2651 ++++--
.../core/tabletserver/thrift/TabletStats.java | 40 +-
.../thrift/TooManyFilesException.java | 12 +-
.../accumulo/core/util/AsyncSocketAppender.java | 3 +-
.../org/apache/accumulo/core/util/Merge.java | 5 +-
.../accumulo/core/util/SslConnectionParams.java | 17 +-
.../core/util/format/DefaultFormatter.java | 16 +-
.../core/util/shell/commands/FateCommand.java | 5 +-
.../util/shell/commands/GetSplitsCommand.java | 1 -
.../core/util/shell/commands/ScanCommand.java | 2 +-
.../apache/accumulo/core/volume/VolumeImpl.java | 4 +-
.../core/client/BatchWriterConfigTest.java | 26 +
.../impl/ServerConfigurationUtilTest.java | 110 +
.../client/mapred/AccumuloInputFormatTest.java | 55 +
.../core/client/mapred/RangeInputSplitTest.java | 121 +
.../mapreduce/AccumuloInputFormatTest.java | 2 +-
.../client/mapreduce/RangeInputSplitTest.java | 48 +-
.../tokens/CredentialProviderTokenTest.java | 129 +
.../core/conf/ConfigSanityCheckTest.java | 79 +
.../conf/CredentialProviderFactoryShimTest.java | 179 +
.../core/conf/DefaultConfigurationTest.java | 44 +
.../core/conf/ObservableConfigurationTest.java | 96 +
.../core/conf/SiteConfigurationTest.java | 76 +
.../accumulo/core/iterators/IterUtilTest.java | 279 -
.../core/iterators/IteratorUtilTest.java | 306 +
.../core/iterators/user/RowFilterTest.java | 215 +-
.../core/util/AsyncSocketAppenderTest.java | 16 +-
.../ShardedTableDistributionFormatterTest.java | 30 +-
.../accumulo/core/util/shell/ShellTest.java | 19 +-
.../accumulo-credentialprovider-site.xml | 26 +
core/src/test/resources/accumulo.jceks | Bin 0 -> 946 bytes
core/src/test/resources/empty.jceks | Bin 0 -> 32 bytes
core/src/test/resources/passwords.jceks | Bin 0 -> 963 bytes
core/src/test/resources/site-cfg.jceks | Bin 0 -> 1441 bytes
docs/.gitignore | 25 +
docs/pom.xml | 4 +-
.../chapters/administration.tex | 52 +
.../accumulo_user_manual/chapters/clients.tex | 10 +
.../accumulo_user_manual/chapters/security.tex | 10 +-
.../chapters/table_configuration.tex | 8 +
.../chapters/troubleshooting.tex | 12 +-
docs/src/main/resources/examples/README.batch | 2 +-
docs/src/main/resources/examples/README.bloom | 8 +-
.../main/resources/examples/README.maxmutation | 12 +-
docs/src/main/resources/examples/README.regex | 3 +-
docs/src/main/resources/metrics.html | 33 +-
examples/simple/.gitignore | 25 +
fate/.gitignore | 25 +
.../fate/zookeeper/ZooReaderWriter.java | 4 -
.../accumulo/fate/zookeeper/ZooSession.java | 14 +-
.../accumulo/fate/zookeeper/ZooSessionTest.java | 31 +
maven-plugin/.gitignore | 25 +
maven-plugin/pom.xml | 1 -
minicluster/.gitignore | 25 +
.../apache/accumulo/cluster/AccumuloConfig.java | 11 +
.../minicluster/MiniAccumuloCluster.java | 8 +-
.../minicluster/MiniAccumuloConfig.java | 16 +-
.../minicluster/MiniAccumuloRunner.java | 4 +
.../impl/MiniAccumuloClusterImpl.java | 76 +-
.../impl/MiniAccumuloConfigImpl.java | 95 +-
.../MiniAccumuloClusterStartStopTest.java | 65 +
.../minicluster/MiniAccumuloClusterTest.java | 4 -
.../minicluster/impl/CleanShutdownMacTest.java | 57 +
.../impl/MiniAccumuloClusterGCTest.java | 2 -
.../impl/MiniAccumuloClusterImplTest.java | 49 +-
.../impl/MiniAccumuloConfigImplTest.java | 8 +
minicluster/src/test/resources/log4j.properties | 23 +-
pom.xml | 98 +-
proxy/.gitignore | 28 +
proxy/src/main/cpp/AccumuloProxy.cpp | 2 +-
proxy/src/main/cpp/AccumuloProxy.h | 2 +-
proxy/src/main/cpp/proxy_constants.cpp | 2 +-
proxy/src/main/cpp/proxy_constants.h | 2 +-
proxy/src/main/cpp/proxy_types.cpp | 2 +-
proxy/src/main/cpp/proxy_types.h | 3 +-
.../java/org/apache/accumulo/proxy/Proxy.java | 5 +-
.../proxy/thrift/AccumuloException.java | 12 +-
.../accumulo/proxy/thrift/AccumuloProxy.java | 8186 ++++++++++++++----
.../proxy/thrift/AccumuloSecurityException.java | 12 +-
.../accumulo/proxy/thrift/ActiveCompaction.java | 63 +-
.../accumulo/proxy/thrift/ActiveScan.java | 75 +-
.../accumulo/proxy/thrift/BatchScanOptions.java | 57 +-
.../apache/accumulo/proxy/thrift/Column.java | 20 +-
.../accumulo/proxy/thrift/ColumnUpdate.java | 32 +-
.../accumulo/proxy/thrift/CompactionReason.java | 2 +-
.../accumulo/proxy/thrift/CompactionType.java | 2 +-
.../apache/accumulo/proxy/thrift/Condition.java | 30 +-
.../proxy/thrift/ConditionalStatus.java | 2 +-
.../proxy/thrift/ConditionalUpdates.java | 28 +-
.../proxy/thrift/ConditionalWriterOptions.java | 35 +-
.../apache/accumulo/proxy/thrift/DiskUsage.java | 25 +-
.../accumulo/proxy/thrift/IteratorScope.java | 2 +-
.../accumulo/proxy/thrift/IteratorSetting.java | 45 +-
.../org/apache/accumulo/proxy/thrift/Key.java | 28 +-
.../apache/accumulo/proxy/thrift/KeyExtent.java | 20 +-
.../apache/accumulo/proxy/thrift/KeyValue.java | 16 +-
.../accumulo/proxy/thrift/KeyValueAndPeek.java | 16 +-
.../thrift/MutationsRejectedException.java | 12 +-
.../proxy/thrift/NoMoreEntriesException.java | 12 +-
.../accumulo/proxy/thrift/PartialKey.java | 2 +-
.../org/apache/accumulo/proxy/thrift/Range.java | 24 +-
.../accumulo/proxy/thrift/ScanColumn.java | 16 +-
.../accumulo/proxy/thrift/ScanOptions.java | 51 +-
.../accumulo/proxy/thrift/ScanResult.java | 22 +-
.../apache/accumulo/proxy/thrift/ScanState.java | 2 +-
.../apache/accumulo/proxy/thrift/ScanType.java | 2 +-
.../accumulo/proxy/thrift/SystemPermission.java | 2 +-
.../proxy/thrift/TableExistsException.java | 12 +-
.../proxy/thrift/TableNotFoundException.java | 12 +-
.../accumulo/proxy/thrift/TablePermission.java | 2 +-
.../apache/accumulo/proxy/thrift/TimeType.java | 2 +-
.../accumulo/proxy/thrift/UnknownScanner.java | 12 +-
.../accumulo/proxy/thrift/UnknownWriter.java | 12 +-
.../accumulo/proxy/thrift/WriterOptions.java | 24 +-
proxy/src/main/python/AccumuloProxy-remote | 6 +-
proxy/src/main/python/AccumuloProxy.py | 550 +-
proxy/src/main/python/constants.py | 2 +-
proxy/src/main/python/ttypes.py | 4 +-
proxy/src/main/ruby/accumulo_proxy.rb | 2 +-
proxy/src/main/ruby/proxy_constants.rb | 2 +-
proxy/src/main/ruby/proxy_types.rb | 2 +-
server/base/.gitignore | 25 +
server/base/pom.xml | 19 +-
.../org/apache/accumulo/server/Accumulo.java | 23 +-
.../apache/accumulo/server/ServerConstants.java | 1 +
.../accumulo/server/client/HdfsZooInstance.java | 8 -
.../server/conf/NamespaceConfWatcher.java | 40 +-
.../server/conf/NamespaceConfiguration.java | 139 +-
.../server/conf/ServerConfiguration.java | 78 +-
.../server/conf/ServerConfigurationFactory.java | 198 +
.../accumulo/server/conf/TableConfWatcher.java | 40 +-
.../server/conf/TableConfiguration.java | 123 +-
.../server/conf/TableParentConfiguration.java | 10 +
.../server/conf/ZooCachePropertyAccessor.java | 160 +
.../accumulo/server/conf/ZooConfiguration.java | 79 +-
.../server/conf/ZooConfigurationFactory.java | 107 +
.../accumulo/server/fs/VolumeManagerImpl.java | 68 +-
.../apache/accumulo/server/fs/VolumeUtil.java | 5 +
.../master/balancer/ChaoticLoadBalancer.java | 14 +-
.../master/balancer/DefaultLoadBalancer.java | 12 +-
.../server/master/balancer/TabletBalancer.java | 90 +
.../server/master/recovery/RecoveryPath.java | 7 +-
.../server/metrics/AbstractMetricsImpl.java | 3 +-
.../security/AuditedSecurityOperation.java | 17 +-
.../server/security/SecurityOperation.java | 2 +-
.../server/security/SystemCredentials.java | 21 +-
.../tabletserver/LargestFirstMemoryManager.java | 197 +-
.../server/util/CustomNonBlockingServer.java | 268 +
.../accumulo/server/util/LoginProperties.java | 4 +-
.../accumulo/server/util/MetadataTableUtil.java | 50 +-
.../apache/accumulo/server/util/RpcWrapper.java | 62 +
.../accumulo/server/util/TServerUtils.java | 50 +-
.../zookeeper/ZooReaderWriterFactory.java | 4 +-
.../apache/accumulo/server/AccumuloTest.java | 14 +-
.../server/conf/NamespaceConfigurationTest.java | 159 +
.../conf/ServerConfigurationFactoryTest.java | 134 +
.../server/conf/TableConfigurationTest.java | 122 +-
.../conf/ZooCachePropertyAccessorTest.java | 186 +
.../conf/ZooConfigurationFactoryTest.java | 66 +
.../server/fs/VolumeManagerImplTest.java | 94 +
.../server/watcher/MonitorLog4jWatcherTest.java | 8 +-
server/gc/.gitignore | 25 +
.../gc/GarbageCollectWriteAheadLogs.java | 8 +-
.../accumulo/gc/SimpleGarbageCollector.java | 115 +-
.../gc/GarbageCollectWriteAheadLogsTest.java | 13 +-
.../accumulo/gc/SimpleGarbageCollectorTest.java | 28 +-
server/master/.gitignore | 25 +
.../java/org/apache/accumulo/master/Master.java | 76 +-
.../accumulo/master/TabletGroupWatcher.java | 10 +-
.../accumulo/master/tableOps/BulkImport.java | 159 +-
server/monitor/.gitignore | 25 +
server/monitor/pom.xml | 40 +-
.../accumulo/monitor/EmbeddedWebServer.java | 82 +-
.../monitor/servlets/TServersServlet.java | 1 -
server/native/.gitignore | 25 +
server/tracer/.gitignore | 25 +
.../org/apache/accumulo/tracer/TraceServer.java | 4 +-
server/tserver/.gitignore | 25 +
server/tserver/pom.xml | 1 +
.../apache/accumulo/tserver/InMemoryMap.java | 61 +-
.../org/apache/accumulo/tserver/Tablet.java | 38 +-
.../apache/accumulo/tserver/TabletServer.java | 6 +-
.../apache/accumulo/tserver/log/DfsLogger.java | 21 +-
.../accumulo/tserver/log/LocalWALRecovery.java | 6 +-
.../accumulo/tserver/InMemoryMapTest.java | 44 +
start/.gitignore | 25 +
start/pom.xml | 5 +
.../vfs/AccumuloReloadingVFSClassLoader.java | 4 +-
.../classloader/vfs/AccumuloVFSClassLoader.java | 34 +-
.../start/classloader/vfs/ContextManager.java | 4 +-
.../vfs/FinalCloseDefaultFileSystemManager.java | 25 -
test/.gitignore | 28 +
test/pom.xml | 34 +-
.../apache/accumulo/test/GetMasterStats.java | 9 +
.../test/continuous/ContinuousVerify.java | 4 +-
.../accumulo/test/continuous/Histogram.java | 8 +-
.../test/continuous/PrintScanTimeHistogram.java | 19 +-
.../test/continuous/UndefinedAnalyzer.java | 2 +-
.../test/stress/random/RandomMutations.java | 21 +-
.../accumulo/test/stress/random/Scan.java | 3 +
.../accumulo/test/stress/random/ScanOpts.java | 5 +-
.../accumulo/test/stress/random/Stream.java | 1 -
.../accumulo/test/stress/random/Write.java | 15 +-
.../test/stress/random/WriteOptions.java | 8 +-
.../accumulo/fate/zookeeper/ZooLockTest.java | 77 +-
.../apache/accumulo/test/Accumulo3010IT.java | 91 +
.../apache/accumulo/test/Accumulo3030IT.java | 83 +
.../apache/accumulo/test/Accumulo3047IT.java | 74 +
.../org/apache/accumulo/test/MetaSplitIT.java | 2 +-
.../org/apache/accumulo/test/ShellServerIT.java | 2 +-
.../accumulo/test/functional/AbstractMacIT.java | 5 +-
.../BalanceInPresenceOfOfflineTableIT.java | 151 +
.../test/functional/CreateAndUseIT.java | 62 +-
.../functional/DeleteTableDuringSplitIT.java | 2 +-
.../test/functional/MasterAssignmentIT.java | 14 +-
.../accumulo/test/functional/MergeIT.java | 2 +-
.../test/functional/MonitorLoggingIT.java | 1 -
.../functional/SimpleBalancerFairnessIT.java | 10 +-
.../apache/accumulo/test/functional/SslIT.java | 10 +-
.../test/functional/SslWithClientAuthIT.java | 10 +-
.../apache/accumulo/test/util/CertUtils.java | 43 +-
.../accumulo/test/util/CertUtilsTest.java | 6 +-
test/src/test/resources/log4j.properties | 3 +-
test/system/scalability/run.py | 9 +-
test/system/stress/README.md | 95 +-
test/system/stress/reader.sh | 34 +-
test/system/stress/readers | 17 +
test/system/stress/start-readers.sh | 40 +
test/system/stress/start-writers.sh | 40 +
test/system/stress/stop-readers.sh | 36 +
test/system/stress/stop-writers.sh | 36 +
test/system/stress/stress-env.sh.example | 60 +
test/system/stress/writer.sh | 40 +-
test/system/stress/writers | 17 +
trace/.gitignore | 25 +
.../thrift/RpcClientInvocationHandler.java | 54 +
.../thrift/RpcServerInvocationHandler.java | 53 +
.../trace/instrument/thrift/TraceWrap.java | 68 +-
.../accumulo/trace/thrift/RemoteSpan.java | 65 +-
.../accumulo/trace/thrift/SpanReceiver.java | 63 +-
.../org/apache/accumulo/trace/thrift/TInfo.java | 16 +-
.../accumulo/trace/thrift/TestService.java | 99 +-
503 files changed, 24802 insertions(+), 13994 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/8808ecbf/server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
----------------------------------------------------------------------
[8/9] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.1-SNAPSHOT
Posted by el...@apache.org.
Merge branch '1.5.2-SNAPSHOT' into 1.6.1-SNAPSHOT
Conflicts:
server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/8147b196
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/8147b196
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/8147b196
Branch: refs/heads/1.6.1-SNAPSHOT
Commit: 8147b196a9589ac5b243b8aa8d4b224adabdcf42
Parents: 8808ecb f838cd9
Author: Josh Elser <el...@apache.org>
Authored: Wed Aug 27 20:55:19 2014 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Wed Aug 27 20:55:19 2014 -0400
----------------------------------------------------------------------
assemble/bin/start-server.sh | 21 ++++++++++++++-------
assemble/bin/stop-server.sh | 2 +-
2 files changed, 15 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/8147b196/assemble/bin/start-server.sh
----------------------------------------------------------------------
diff --cc assemble/bin/start-server.sh
index 62ad91d,0000000..aa1375a
mode 100755,000000..100755
--- a/assemble/bin/start-server.sh
+++ b/assemble/bin/start-server.sh
@@@ -1,87 -1,0 +1,94 @@@
+#! /usr/bin/env bash
+
+# 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.
+
+# Start: Resolve Script Directory
+SOURCE="${BASH_SOURCE[0]}"
+while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
+ bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+ SOURCE="$(readlink "$SOURCE")"
+ [[ $SOURCE != /* ]] && SOURCE="$bin/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
+done
+bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+script=$( basename "$SOURCE" )
+# Stop: Resolve Script Directory
+
+. "$bin"/config.sh
+
+HOST="$1"
+host "$1" >/dev/null 2>/dev/null
+if [ $? -ne 0 ]; then
+ LOGHOST="$1"
+else
+ LOGHOST=$(host "$1" | head -1 | cut -d' ' -f1)
+fi
+ADDRESS="$1"
+SERVICE="$2"
+LONGNAME="$3"
+if [ -z "$LONGNAME" ]; then
+ LONGNAME="$2"
+fi
+SLAVES=$( wc -l < ${ACCUMULO_CONF_DIR}/slaves )
+
+IFCONFIG=/sbin/ifconfig
+if [ ! -x $IFCONFIG ]; then
+ IFCONFIG='/bin/netstat -ie'
+fi
+
- # ACCUMULO-1985 Allow monitor to bind on all interfaces
- if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
- ADDRESS="0.0.0.0"
- fi
-
+ip=$($IFCONFIG 2>/dev/null| grep inet[^6] | awk '{print $2}' | sed 's/addr://' | grep -v 0.0.0.0 | grep -v 127.0.0.1 | head -n 1)
+if [ $? != 0 ]
+then
+ ip=$(python -c 'import socket as s; print s.gethostbyname(s.getfqdn())')
+fi
+
- if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
++# 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.
++if [ "$HOST" = "`hostname -s`" ]; then
++ HOST="`hostname -f`"
++ ADDRESS="$HOST"
++fi
++
++# ACCUMULO-1985 Allow monitor to bind on all interfaces
++if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
++ ADDRESS="0.0.0.0"
++fi
++
++if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
+ PID=$(ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
+else
+ PID=$($SSH $HOST ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
+fi
+
+if [ -z "$PID" ]; then
+ echo "Starting $LONGNAME on $HOST"
- if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
++ if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
+ ${bin}/accumulo ${SERVICE} --address ${ADDRESS} >${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out 2>${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err &
+ MAX_FILES_OPEN=$(ulimit -n)
+ else
+ $SSH $HOST "bash -c 'exec nohup ${bin}/accumulo ${SERVICE} --address ${ADDRESS} >${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out 2>${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err' &"
+ MAX_FILES_OPEN=$($SSH $HOST "/usr/bin/env bash -c 'ulimit -n'")
+ fi
+
+ if [ -n "$MAX_FILES_OPEN" ] && [ -n "$SLAVES" ] ; then
+ MAX_FILES_RECOMMENDED=${MAX_FILES_RECOMMENDED:-32768}
+ if (( SLAVES > 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
+ fi
+else
+ echo "$HOST : $LONGNAME already running (${PID})"
+fi
http://git-wip-us.apache.org/repos/asf/accumulo/blob/8147b196/assemble/bin/stop-server.sh
----------------------------------------------------------------------
diff --cc assemble/bin/stop-server.sh
index 6fbe0af,0000000..d615172
mode 100755,000000..100755
--- a/assemble/bin/stop-server.sh
+++ b/assemble/bin/stop-server.sh
@@@ -1,56 -1,0 +1,56 @@@
+#! /usr/bin/env bash
+
+# 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.
+
+# Start: Resolve Script Directory
+SOURCE="${BASH_SOURCE[0]}"
+while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
+ bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+ SOURCE="$(readlink "$SOURCE")"
+ [[ $SOURCE != /* ]] && SOURCE="$bin/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
+done
+bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+# Stop: Resolve Script Directory
+
+. "$bin"/config.sh
+
+HOST=$1
+
+IFCONFIG=/sbin/ifconfig
+if [ ! -x $IFCONFIG ]
+then
+ IFCONFIG='/bin/netstat -ie'
+fi
+ip=$($IFCONFIG 2>/dev/null| grep inet[^6] | awk '{print $2}' | sed 's/addr://' | grep -v 0.0.0.0 | grep -v 127.0.0.1 | head -n 1)
+if [ $? != 0 ]
+then
+ ip=$(python -c 'import socket as s; print s.gethostbyname(s.getfqdn())')
+fi
+
+# only stop if there's not one already running
- if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
++if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -s`" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
+ PID=$(ps -ef | grep "$ACCUMULO_HOME" | egrep ${2} | grep "Main ${3}" | grep -v grep | grep -v ssh | grep -v stop-server.sh | awk {'print $2'} | head -1)
+ if [ ! -z $PID ]; then
+ echo "Stopping ${3} on $1";
+ kill -s ${4} ${PID} 2>/dev/null
+ fi;
+else
+ PID=$(ssh -q -o 'ConnectTimeout 8' $1 "ps -ef | grep \"$ACCUMULO_HOME\" | egrep '${2}' | grep 'Main ${3}' | grep -v grep | grep -v ssh | grep -v stop-server.sh" | awk {'print $2'} | head -1)
+ if [ ! -z $PID ]; then
+ echo "Stopping ${3} on $1";
+ ssh -q -o 'ConnectTimeout 8' $1 "kill -s ${4} ${PID} 2>/dev/null"
+ fi;
+fi
[7/9] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.1-SNAPSHOT
Posted by el...@apache.org.
Merge branch '1.5.2-SNAPSHOT' into 1.6.1-SNAPSHOT
Conflicts:
server/tserver/src/main/java/org/apache/accumulo/tserver/TabletServer.java
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/8147b196
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/8147b196
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/8147b196
Branch: refs/heads/master
Commit: 8147b196a9589ac5b243b8aa8d4b224adabdcf42
Parents: 8808ecb f838cd9
Author: Josh Elser <el...@apache.org>
Authored: Wed Aug 27 20:55:19 2014 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Wed Aug 27 20:55:19 2014 -0400
----------------------------------------------------------------------
assemble/bin/start-server.sh | 21 ++++++++++++++-------
assemble/bin/stop-server.sh | 2 +-
2 files changed, 15 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/8147b196/assemble/bin/start-server.sh
----------------------------------------------------------------------
diff --cc assemble/bin/start-server.sh
index 62ad91d,0000000..aa1375a
mode 100755,000000..100755
--- a/assemble/bin/start-server.sh
+++ b/assemble/bin/start-server.sh
@@@ -1,87 -1,0 +1,94 @@@
+#! /usr/bin/env bash
+
+# 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.
+
+# Start: Resolve Script Directory
+SOURCE="${BASH_SOURCE[0]}"
+while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
+ bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+ SOURCE="$(readlink "$SOURCE")"
+ [[ $SOURCE != /* ]] && SOURCE="$bin/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
+done
+bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+script=$( basename "$SOURCE" )
+# Stop: Resolve Script Directory
+
+. "$bin"/config.sh
+
+HOST="$1"
+host "$1" >/dev/null 2>/dev/null
+if [ $? -ne 0 ]; then
+ LOGHOST="$1"
+else
+ LOGHOST=$(host "$1" | head -1 | cut -d' ' -f1)
+fi
+ADDRESS="$1"
+SERVICE="$2"
+LONGNAME="$3"
+if [ -z "$LONGNAME" ]; then
+ LONGNAME="$2"
+fi
+SLAVES=$( wc -l < ${ACCUMULO_CONF_DIR}/slaves )
+
+IFCONFIG=/sbin/ifconfig
+if [ ! -x $IFCONFIG ]; then
+ IFCONFIG='/bin/netstat -ie'
+fi
+
- # ACCUMULO-1985 Allow monitor to bind on all interfaces
- if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
- ADDRESS="0.0.0.0"
- fi
-
+ip=$($IFCONFIG 2>/dev/null| grep inet[^6] | awk '{print $2}' | sed 's/addr://' | grep -v 0.0.0.0 | grep -v 127.0.0.1 | head -n 1)
+if [ $? != 0 ]
+then
+ ip=$(python -c 'import socket as s; print s.gethostbyname(s.getfqdn())')
+fi
+
- if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
++# 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.
++if [ "$HOST" = "`hostname -s`" ]; then
++ HOST="`hostname -f`"
++ ADDRESS="$HOST"
++fi
++
++# ACCUMULO-1985 Allow monitor to bind on all interfaces
++if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
++ ADDRESS="0.0.0.0"
++fi
++
++if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
+ PID=$(ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
+else
+ PID=$($SSH $HOST ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
+fi
+
+if [ -z "$PID" ]; then
+ echo "Starting $LONGNAME on $HOST"
- if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
++ if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
+ ${bin}/accumulo ${SERVICE} --address ${ADDRESS} >${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out 2>${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err &
+ MAX_FILES_OPEN=$(ulimit -n)
+ else
+ $SSH $HOST "bash -c 'exec nohup ${bin}/accumulo ${SERVICE} --address ${ADDRESS} >${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out 2>${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err' &"
+ MAX_FILES_OPEN=$($SSH $HOST "/usr/bin/env bash -c 'ulimit -n'")
+ fi
+
+ if [ -n "$MAX_FILES_OPEN" ] && [ -n "$SLAVES" ] ; then
+ MAX_FILES_RECOMMENDED=${MAX_FILES_RECOMMENDED:-32768}
+ if (( SLAVES > 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
+ fi
+else
+ echo "$HOST : $LONGNAME already running (${PID})"
+fi
http://git-wip-us.apache.org/repos/asf/accumulo/blob/8147b196/assemble/bin/stop-server.sh
----------------------------------------------------------------------
diff --cc assemble/bin/stop-server.sh
index 6fbe0af,0000000..d615172
mode 100755,000000..100755
--- a/assemble/bin/stop-server.sh
+++ b/assemble/bin/stop-server.sh
@@@ -1,56 -1,0 +1,56 @@@
+#! /usr/bin/env bash
+
+# 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.
+
+# Start: Resolve Script Directory
+SOURCE="${BASH_SOURCE[0]}"
+while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
+ bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+ SOURCE="$(readlink "$SOURCE")"
+ [[ $SOURCE != /* ]] && SOURCE="$bin/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
+done
+bin="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+# Stop: Resolve Script Directory
+
+. "$bin"/config.sh
+
+HOST=$1
+
+IFCONFIG=/sbin/ifconfig
+if [ ! -x $IFCONFIG ]
+then
+ IFCONFIG='/bin/netstat -ie'
+fi
+ip=$($IFCONFIG 2>/dev/null| grep inet[^6] | awk '{print $2}' | sed 's/addr://' | grep -v 0.0.0.0 | grep -v 127.0.0.1 | head -n 1)
+if [ $? != 0 ]
+then
+ ip=$(python -c 'import socket as s; print s.gethostbyname(s.getfqdn())')
+fi
+
+# only stop if there's not one already running
- if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
++if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -s`" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
+ PID=$(ps -ef | grep "$ACCUMULO_HOME" | egrep ${2} | grep "Main ${3}" | grep -v grep | grep -v ssh | grep -v stop-server.sh | awk {'print $2'} | head -1)
+ if [ ! -z $PID ]; then
+ echo "Stopping ${3} on $1";
+ kill -s ${4} ${PID} 2>/dev/null
+ fi;
+else
+ PID=$(ssh -q -o 'ConnectTimeout 8' $1 "ps -ef | grep \"$ACCUMULO_HOME\" | egrep '${2}' | grep 'Main ${3}' | grep -v grep | grep -v ssh | grep -v stop-server.sh" | awk {'print $2'} | head -1)
+ if [ ! -z $PID ]; then
+ echo "Stopping ${3} on $1";
+ ssh -q -o 'ConnectTimeout 8' $1 "kill -s ${4} ${PID} 2>/dev/null"
+ fi;
+fi
[4/9] git commit: ACCUMULO-3087 Attempt to expand shortname to FQDN.
Posted by el...@apache.org.
ACCUMULO-3087 Attempt to expand shortname to FQDN.
This should make start-server.sh a bit more resilient
against thinking it needs to SSH around. Instead of having
to match exactly what `hostname` is returning, this should
prevent an (unnecessary) SSH just because hostname is returning
the short instead of full, or vice versa.
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/f838cd9e
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/f838cd9e
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/f838cd9e
Branch: refs/heads/1.6.1-SNAPSHOT
Commit: f838cd9e4afa18f6854c49b089fb5e40e94b0958
Parents: 6f2fd4d
Author: Josh Elser <el...@apache.org>
Authored: Wed Aug 27 20:46:51 2014 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Wed Aug 27 20:46:51 2014 -0400
----------------------------------------------------------------------
bin/start-server.sh | 21 ++++++++++++++-------
bin/stop-server.sh | 2 +-
2 files changed, 15 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/f838cd9e/bin/start-server.sh
----------------------------------------------------------------------
diff --git a/bin/start-server.sh b/bin/start-server.sh
index f5fd33a..5fa2156 100755
--- a/bin/start-server.sh
+++ b/bin/start-server.sh
@@ -47,18 +47,25 @@ if [ ! -x $IFCONFIG ]; then
IFCONFIG='/bin/netstat -ie'
fi
-# ACCUMULO-1985 Allow monitor to bind on all interfaces
-if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
- ADDRESS="0.0.0.0"
-fi
-
ip=$($IFCONFIG 2>/dev/null| grep inet[^6] | awk '{print $2}' | sed 's/addr://' | grep -v 0.0.0.0 | grep -v 127.0.0.1 | head -n 1)
if [ $? != 0 ]
then
ip=$(python -c 'import socket as s; print s.gethostbyname(s.getfqdn())')
fi
-if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
+# 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.
+if [ "$HOST" = "`hostname -s`" ]; then
+ HOST="`hostname -f`"
+ ADDRESS="$HOST"
+fi
+
+# ACCUMULO-1985 Allow monitor to bind on all interfaces
+if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
+ ADDRESS="0.0.0.0"
+fi
+
+if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
PID=$(ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
else
PID=$($SSH $HOST ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
@@ -66,7 +73,7 @@ fi
if [ -z $PID ]; then
echo "Starting $LONGNAME on $HOST"
- if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
+ if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
${bin}/accumulo ${SERVICE} --address ${ADDRESS} >${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out 2>${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err &
MAX_FILES_OPEN=$(ulimit -n)
else
http://git-wip-us.apache.org/repos/asf/accumulo/blob/f838cd9e/bin/stop-server.sh
----------------------------------------------------------------------
diff --git a/bin/stop-server.sh b/bin/stop-server.sh
index 6fbe0af..d615172 100755
--- a/bin/stop-server.sh
+++ b/bin/stop-server.sh
@@ -41,7 +41,7 @@ then
fi
# only stop if there's not one already running
-if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
+if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -s`" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
PID=$(ps -ef | grep "$ACCUMULO_HOME" | egrep ${2} | grep "Main ${3}" | grep -v grep | grep -v ssh | grep -v stop-server.sh | awk {'print $2'} | head -1)
if [ ! -z $PID ]; then
echo "Stopping ${3} on $1";
[5/9] git commit: ACCUMULO-3087 Attempt to expand shortname to FQDN.
Posted by el...@apache.org.
ACCUMULO-3087 Attempt to expand shortname to FQDN.
This should make start-server.sh a bit more resilient
against thinking it needs to SSH around. Instead of having
to match exactly what `hostname` is returning, this should
prevent an (unnecessary) SSH just because hostname is returning
the short instead of full, or vice versa.
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/f838cd9e
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/f838cd9e
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/f838cd9e
Branch: refs/heads/master
Commit: f838cd9e4afa18f6854c49b089fb5e40e94b0958
Parents: 6f2fd4d
Author: Josh Elser <el...@apache.org>
Authored: Wed Aug 27 20:46:51 2014 -0400
Committer: Josh Elser <el...@apache.org>
Committed: Wed Aug 27 20:46:51 2014 -0400
----------------------------------------------------------------------
bin/start-server.sh | 21 ++++++++++++++-------
bin/stop-server.sh | 2 +-
2 files changed, 15 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/f838cd9e/bin/start-server.sh
----------------------------------------------------------------------
diff --git a/bin/start-server.sh b/bin/start-server.sh
index f5fd33a..5fa2156 100755
--- a/bin/start-server.sh
+++ b/bin/start-server.sh
@@ -47,18 +47,25 @@ if [ ! -x $IFCONFIG ]; then
IFCONFIG='/bin/netstat -ie'
fi
-# ACCUMULO-1985 Allow monitor to bind on all interfaces
-if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
- ADDRESS="0.0.0.0"
-fi
-
ip=$($IFCONFIG 2>/dev/null| grep inet[^6] | awk '{print $2}' | sed 's/addr://' | grep -v 0.0.0.0 | grep -v 127.0.0.1 | head -n 1)
if [ $? != 0 ]
then
ip=$(python -c 'import socket as s; print s.gethostbyname(s.getfqdn())')
fi
-if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
+# 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.
+if [ "$HOST" = "`hostname -s`" ]; then
+ HOST="`hostname -f`"
+ ADDRESS="$HOST"
+fi
+
+# ACCUMULO-1985 Allow monitor to bind on all interfaces
+if [ ${SERVICE} == "monitor" -a ${ACCUMULO_MONITOR_BIND_ALL} == "true" ]; then
+ ADDRESS="0.0.0.0"
+fi
+
+if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
PID=$(ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
else
PID=$($SSH $HOST ps -ef | egrep ${ACCUMULO_HOME}/.*/accumulo.*.jar | grep "Main $SERVICE" | grep -v grep | awk {'print $2'} | head -1)
@@ -66,7 +73,7 @@ fi
if [ -z $PID ]; then
echo "Starting $LONGNAME on $HOST"
- if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
+ if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
${bin}/accumulo ${SERVICE} --address ${ADDRESS} >${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.out 2>${ACCUMULO_LOG_DIR}/${SERVICE}_${LOGHOST}.err &
MAX_FILES_OPEN=$(ulimit -n)
else
http://git-wip-us.apache.org/repos/asf/accumulo/blob/f838cd9e/bin/stop-server.sh
----------------------------------------------------------------------
diff --git a/bin/stop-server.sh b/bin/stop-server.sh
index 6fbe0af..d615172 100755
--- a/bin/stop-server.sh
+++ b/bin/stop-server.sh
@@ -41,7 +41,7 @@ then
fi
# only stop if there's not one already running
-if [ "$HOST" = "localhost" -o "$HOST" = "`hostname`" -o "$HOST" = "$ip" ]; then
+if [ "$HOST" = "localhost" -o "$HOST" = "`hostname -s`" -o "$HOST" = "`hostname -f`" -o "$HOST" = "$ip" ]; then
PID=$(ps -ef | grep "$ACCUMULO_HOME" | egrep ${2} | grep "Main ${3}" | grep -v grep | grep -v ssh | grep -v stop-server.sh | awk {'print $2'} | head -1)
if [ ! -z $PID ]; then
echo "Stopping ${3} on $1";