[11/31] hadoop git commit: HADOOP-13086. enable daemonization of dynamic commands

2016-05-15 Thread aw
HADOOP-13086. enable daemonization of dynamic commands


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

Branch: refs/heads/HADOOP-12930
Commit: 21451f8586d80c0170a64df5411d247dbdbf9fa8
Parents: 31b468c
Author: Allen Wittenauer 
Authored: Wed May 4 10:13:18 2016 -0700
Committer: Allen Wittenauer 
Committed: Sun May 15 07:50:15 2016 -0700

--
 .../hadoop-common/src/main/bin/hadoop   | 53 ++-
 .../hadoop-hdfs/src/main/bin/hdfs   | 36 ++---
 hadoop-mapreduce-project/bin/mapred | 49 +++--
 hadoop-yarn-project/hadoop-yarn/bin/yarn| 55 ++--
 4 files changed, 142 insertions(+), 51 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/21451f85/hadoop-common-project/hadoop-common/src/main/bin/hadoop
--
diff --git a/hadoop-common-project/hadoop-common/src/main/bin/hadoop 
b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
index ce695cb..e4df229 100755
--- a/hadoop-common-project/hadoop-common/src/main/bin/hadoop
+++ b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
@@ -213,6 +213,57 @@ fi
 hadoop_debug "Appending HADOOP_CLIENT_OPTS onto HADOOP_OPTS"
 HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_CLIENT_OPTS}"
 
+if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+  HADOOP_SECURE_USER="${HADOOP_SUBCMD_SECUREUSER}"
+  hadoop_verify_secure_prereq
+  hadoop_setup_secure_service
+  
priv_outfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
priv_errfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.err"
+  
priv_pidfile="${HADOOP_PID_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+else
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+fi
+
+if [[ "${HADOOP_DAEMON_MODE}" != "default" ]]; then
+  # shellcheck disable=SC2034
+  HADOOP_ROOT_LOGGER="${HADOOP_DAEMON_ROOT_LOGGER}"
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  else
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  fi
+fi
+
 hadoop_finalize
-hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
 
+if [[ -n "${HADOOP_SUBCMD_SUPPORTDAEMONIZATION}" ]]; then
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+hadoop_secure_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "${priv_pidfile}" \
+  "${priv_outfile}" \
+  "${priv_errfile}" \
+  "$@"
+  else
+hadoop_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "$@"
+  fi
+  exit $?
+else
+  # shellcheck disable=SC2086
+  hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
+fi

http://git-wip-us.apache.org/repos/asf/hadoop/blob/21451f85/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
--
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
index 310fb41..4c0b7fb 100755
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
@@ -76,7 +76,7 @@ function hdfscmd_case
 
   case ${subcmd} in
 balancer)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.server.balancer.Balancer
   hadoop_debug "Appending HADOOP_BALANCER_OPTS onto HADOOP_OPTS"
   HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_BALANCER_OPTS}"
@@ -91,12 +91,12 @@ function hdfscmd_case
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.tools.CryptoAdmin
 ;;
 datanode)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   # Determine if we're starting a secure datanode, and
   # if so, redefine appropriate variables
   if [[ 

[39/50] [abbrv] hadoop git commit: HADOOP-13086. enable daemonization of dynamic commands

2016-05-12 Thread aw
HADOOP-13086. enable daemonization of dynamic commands


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

Branch: refs/heads/HADOOP-12930
Commit: 233a2a1ff67ece9f2d5688a390b44bedb4fa6fb5
Parents: 3959a11
Author: Allen Wittenauer 
Authored: Wed May 4 10:13:18 2016 -0700
Committer: Allen Wittenauer 
Committed: Thu May 12 16:01:27 2016 -0700

--
 .../hadoop-common/src/main/bin/hadoop   | 53 ++-
 .../hadoop-hdfs/src/main/bin/hdfs   | 36 ++---
 hadoop-mapreduce-project/bin/mapred | 49 +++--
 hadoop-yarn-project/hadoop-yarn/bin/yarn| 55 ++--
 4 files changed, 142 insertions(+), 51 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/233a2a1f/hadoop-common-project/hadoop-common/src/main/bin/hadoop
--
diff --git a/hadoop-common-project/hadoop-common/src/main/bin/hadoop 
b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
index ce695cb..e4df229 100755
--- a/hadoop-common-project/hadoop-common/src/main/bin/hadoop
+++ b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
@@ -213,6 +213,57 @@ fi
 hadoop_debug "Appending HADOOP_CLIENT_OPTS onto HADOOP_OPTS"
 HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_CLIENT_OPTS}"
 
+if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+  HADOOP_SECURE_USER="${HADOOP_SUBCMD_SECUREUSER}"
+  hadoop_verify_secure_prereq
+  hadoop_setup_secure_service
+  
priv_outfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
priv_errfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.err"
+  
priv_pidfile="${HADOOP_PID_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+else
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+fi
+
+if [[ "${HADOOP_DAEMON_MODE}" != "default" ]]; then
+  # shellcheck disable=SC2034
+  HADOOP_ROOT_LOGGER="${HADOOP_DAEMON_ROOT_LOGGER}"
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  else
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  fi
+fi
+
 hadoop_finalize
-hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
 
+if [[ -n "${HADOOP_SUBCMD_SUPPORTDAEMONIZATION}" ]]; then
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+hadoop_secure_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "${priv_pidfile}" \
+  "${priv_outfile}" \
+  "${priv_errfile}" \
+  "$@"
+  else
+hadoop_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "$@"
+  fi
+  exit $?
+else
+  # shellcheck disable=SC2086
+  hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
+fi

http://git-wip-us.apache.org/repos/asf/hadoop/blob/233a2a1f/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
--
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
index 310fb41..4c0b7fb 100755
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
@@ -76,7 +76,7 @@ function hdfscmd_case
 
   case ${subcmd} in
 balancer)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.server.balancer.Balancer
   hadoop_debug "Appending HADOOP_BALANCER_OPTS onto HADOOP_OPTS"
   HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_BALANCER_OPTS}"
@@ -91,12 +91,12 @@ function hdfscmd_case
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.tools.CryptoAdmin
 ;;
 datanode)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   # Determine if we're starting a secure datanode, and
   # if so, redefine appropriate variables
   if [[ 

[11/16] hadoop git commit: HADOOP-13086. enable daemonization of dynamic commands

2016-05-06 Thread aw
HADOOP-13086. enable daemonization of dynamic commands


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

Branch: refs/heads/HADOOP-12930
Commit: 219a629d9b072369785fd97c1e4045a4c3ef337c
Parents: 1b7c1d8
Author: Allen Wittenauer 
Authored: Wed May 4 10:13:18 2016 -0700
Committer: Allen Wittenauer 
Committed: Fri May 6 14:10:19 2016 -0700

--
 .../hadoop-common/src/main/bin/hadoop   | 53 ++-
 .../hadoop-hdfs/src/main/bin/hdfs   | 36 ++---
 hadoop-mapreduce-project/bin/mapred | 49 +++--
 hadoop-yarn-project/hadoop-yarn/bin/yarn| 55 ++--
 4 files changed, 142 insertions(+), 51 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/219a629d/hadoop-common-project/hadoop-common/src/main/bin/hadoop
--
diff --git a/hadoop-common-project/hadoop-common/src/main/bin/hadoop 
b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
index ce695cb..e4df229 100755
--- a/hadoop-common-project/hadoop-common/src/main/bin/hadoop
+++ b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
@@ -213,6 +213,57 @@ fi
 hadoop_debug "Appending HADOOP_CLIENT_OPTS onto HADOOP_OPTS"
 HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_CLIENT_OPTS}"
 
+if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+  HADOOP_SECURE_USER="${HADOOP_SUBCMD_SECUREUSER}"
+  hadoop_verify_secure_prereq
+  hadoop_setup_secure_service
+  
priv_outfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
priv_errfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.err"
+  
priv_pidfile="${HADOOP_PID_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+else
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+fi
+
+if [[ "${HADOOP_DAEMON_MODE}" != "default" ]]; then
+  # shellcheck disable=SC2034
+  HADOOP_ROOT_LOGGER="${HADOOP_DAEMON_ROOT_LOGGER}"
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  else
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  fi
+fi
+
 hadoop_finalize
-hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
 
+if [[ -n "${HADOOP_SUBCMD_SUPPORTDAEMONIZATION}" ]]; then
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+hadoop_secure_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "${priv_pidfile}" \
+  "${priv_outfile}" \
+  "${priv_errfile}" \
+  "$@"
+  else
+hadoop_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "$@"
+  fi
+  exit $?
+else
+  # shellcheck disable=SC2086
+  hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
+fi

http://git-wip-us.apache.org/repos/asf/hadoop/blob/219a629d/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
--
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
index 310fb41..4c0b7fb 100755
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
@@ -76,7 +76,7 @@ function hdfscmd_case
 
   case ${subcmd} in
 balancer)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.server.balancer.Balancer
   hadoop_debug "Appending HADOOP_BALANCER_OPTS onto HADOOP_OPTS"
   HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_BALANCER_OPTS}"
@@ -91,12 +91,12 @@ function hdfscmd_case
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.tools.CryptoAdmin
 ;;
 datanode)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   # Determine if we're starting a secure datanode, and
   # if so, redefine appropriate variables
   if [[ 

[17/28] hadoop git commit: HADOOP-13086. enable daemonization of dynamic commands

2016-05-06 Thread aw
HADOOP-13086. enable daemonization of dynamic commands


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

Branch: refs/heads/HADOOP-12930
Commit: 2fd42860b76207efc56c7e6a3b3861c7970485f2
Parents: cfe18e0
Author: Allen Wittenauer 
Authored: Wed May 4 10:13:18 2016 -0700
Committer: Allen Wittenauer 
Committed: Fri May 6 08:46:54 2016 -0700

--
 .../hadoop-common/src/main/bin/hadoop   | 53 ++-
 .../hadoop-hdfs/src/main/bin/hdfs   | 36 ++---
 hadoop-mapreduce-project/bin/mapred | 49 +++--
 hadoop-yarn-project/hadoop-yarn/bin/yarn| 55 ++--
 4 files changed, 142 insertions(+), 51 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/2fd42860/hadoop-common-project/hadoop-common/src/main/bin/hadoop
--
diff --git a/hadoop-common-project/hadoop-common/src/main/bin/hadoop 
b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
index bb4b041..7b18d22 100755
--- a/hadoop-common-project/hadoop-common/src/main/bin/hadoop
+++ b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
@@ -207,6 +207,57 @@ fi
 hadoop_debug "Appending HADOOP_CLIENT_OPTS onto HADOOP_OPTS"
 HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_CLIENT_OPTS}"
 
+if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+  HADOOP_SECURE_USER="${HADOOP_SUBCMD_SECUREUSER}"
+  hadoop_verify_secure_prereq
+  hadoop_setup_secure_service
+  
priv_outfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
priv_errfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.err"
+  
priv_pidfile="${HADOOP_PID_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+else
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+fi
+
+if [[ "${HADOOP_DAEMON_MODE}" != "default" ]]; then
+  # shellcheck disable=SC2034
+  HADOOP_ROOT_LOGGER="${HADOOP_DAEMON_ROOT_LOGGER}"
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  else
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  fi
+fi
+
 hadoop_finalize
-hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
 
+if [[ -n "${HADOOP_SUBCMD_SUPPORTDAEMONIZATION}" ]]; then
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+hadoop_secure_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "${priv_pidfile}" \
+  "${priv_outfile}" \
+  "${priv_errfile}" \
+  "$@"
+  else
+hadoop_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "$@"
+  fi
+  exit $?
+else
+  # shellcheck disable=SC2086
+  hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
+fi

http://git-wip-us.apache.org/repos/asf/hadoop/blob/2fd42860/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
--
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
index 310fb41..4c0b7fb 100755
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
@@ -76,7 +76,7 @@ function hdfscmd_case
 
   case ${subcmd} in
 balancer)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.server.balancer.Balancer
   hadoop_debug "Appending HADOOP_BALANCER_OPTS onto HADOOP_OPTS"
   HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_BALANCER_OPTS}"
@@ -91,12 +91,12 @@ function hdfscmd_case
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.tools.CryptoAdmin
 ;;
 datanode)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   # Determine if we're starting a secure datanode, and
   # if so, redefine appropriate variables
   if [[ 

[09/18] hadoop git commit: HADOOP-13086. enable daemonization of dynamic commands

2016-05-04 Thread aw
HADOOP-13086. enable daemonization of dynamic commands


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

Branch: refs/heads/HADOOP-12930
Commit: b1417a52af2faae82dd2ed42eabede72f4e83ca1
Parents: b67da29
Author: Allen Wittenauer 
Authored: Wed May 4 10:13:18 2016 -0700
Committer: Allen Wittenauer 
Committed: Wed May 4 20:43:21 2016 -0700

--
 .../hadoop-common/src/main/bin/hadoop   | 53 ++-
 .../hadoop-hdfs/src/main/bin/hdfs   | 36 ++---
 hadoop-mapreduce-project/bin/mapred | 49 +++--
 hadoop-yarn-project/hadoop-yarn/bin/yarn| 55 ++--
 4 files changed, 142 insertions(+), 51 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/b1417a52/hadoop-common-project/hadoop-common/src/main/bin/hadoop
--
diff --git a/hadoop-common-project/hadoop-common/src/main/bin/hadoop 
b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
index bb4b041..7b18d22 100755
--- a/hadoop-common-project/hadoop-common/src/main/bin/hadoop
+++ b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
@@ -207,6 +207,57 @@ fi
 hadoop_debug "Appending HADOOP_CLIENT_OPTS onto HADOOP_OPTS"
 HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_CLIENT_OPTS}"
 
+if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+  HADOOP_SECURE_USER="${HADOOP_SUBCMD_SECUREUSER}"
+  hadoop_verify_secure_prereq
+  hadoop_setup_secure_service
+  
priv_outfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
priv_errfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.err"
+  
priv_pidfile="${HADOOP_PID_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+else
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+fi
+
+if [[ "${HADOOP_DAEMON_MODE}" != "default" ]]; then
+  # shellcheck disable=SC2034
+  HADOOP_ROOT_LOGGER="${HADOOP_DAEMON_ROOT_LOGGER}"
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  else
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  fi
+fi
+
 hadoop_finalize
-hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
 
+if [[ -n "${HADOOP_SUBCMD_SUPPORTDAEMONIZATION}" ]]; then
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+hadoop_secure_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "${priv_pidfile}" \
+  "${priv_outfile}" \
+  "${priv_errfile}" \
+  "$@"
+  else
+hadoop_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "$@"
+  fi
+  exit $?
+else
+  # shellcheck disable=SC2086
+  hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
+fi

http://git-wip-us.apache.org/repos/asf/hadoop/blob/b1417a52/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
--
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
index 310fb41..4c0b7fb 100755
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
@@ -76,7 +76,7 @@ function hdfscmd_case
 
   case ${subcmd} in
 balancer)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.server.balancer.Balancer
   hadoop_debug "Appending HADOOP_BALANCER_OPTS onto HADOOP_OPTS"
   HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_BALANCER_OPTS}"
@@ -91,12 +91,12 @@ function hdfscmd_case
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.tools.CryptoAdmin
 ;;
 datanode)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   # Determine if we're starting a secure datanode, and
   # if so, redefine appropriate variables
   if [[ 

hadoop git commit: HADOOP-13086. enable daemonization of dynamic commands

2016-05-04 Thread aw
Repository: hadoop
Updated Branches:
  refs/heads/HADOOP-12930 e1cae42ad -> d0ff3c336


HADOOP-13086. enable daemonization of dynamic commands


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

Branch: refs/heads/HADOOP-12930
Commit: d0ff3c3361946d1c9a35452c2edfce03cfa983b2
Parents: e1cae42
Author: Allen Wittenauer 
Authored: Wed May 4 10:13:18 2016 -0700
Committer: Allen Wittenauer 
Committed: Wed May 4 10:13:18 2016 -0700

--
 .../hadoop-common/src/main/bin/hadoop   | 53 ++-
 .../hadoop-hdfs/src/main/bin/hdfs   | 36 ++---
 hadoop-mapreduce-project/bin/mapred | 49 +++--
 hadoop-yarn-project/hadoop-yarn/bin/yarn| 55 ++--
 4 files changed, 142 insertions(+), 51 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/d0ff3c33/hadoop-common-project/hadoop-common/src/main/bin/hadoop
--
diff --git a/hadoop-common-project/hadoop-common/src/main/bin/hadoop 
b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
index bb4b041..7b18d22 100755
--- a/hadoop-common-project/hadoop-common/src/main/bin/hadoop
+++ b/hadoop-common-project/hadoop-common/src/main/bin/hadoop
@@ -207,6 +207,57 @@ fi
 hadoop_debug "Appending HADOOP_CLIENT_OPTS onto HADOOP_OPTS"
 HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_CLIENT_OPTS}"
 
+if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+  HADOOP_SECURE_USER="${HADOOP_SUBCMD_SECUREUSER}"
+  hadoop_verify_secure_prereq
+  hadoop_setup_secure_service
+  
priv_outfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
priv_errfile="${HADOOP_LOG_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.err"
+  
priv_pidfile="${HADOOP_PID_DIR}/privileged-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+else
+  
daemon_outfile="${HADOOP_LOG_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.out"
+  
daemon_pidfile="${HADOOP_PID_DIR}/hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}.pid"
+fi
+
+if [[ "${HADOOP_DAEMON_MODE}" != "default" ]]; then
+  # shellcheck disable=SC2034
+  HADOOP_ROOT_LOGGER="${HADOOP_DAEMON_ROOT_LOGGER}"
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_SECURE_USER}-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  else
+# shellcheck disable=SC2034
+
HADOOP_LOGFILE="hadoop-${HADOOP_IDENT_STRING}-${HADOOP_SUBCMD}-${HOSTNAME}.log"
+  fi
+fi
+
 hadoop_finalize
-hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
 
+if [[ -n "${HADOOP_SUBCMD_SUPPORTDAEMONIZATION}" ]]; then
+  if [[ -n "${HADOOP_SUBCMD_SECURESERVICE}" ]]; then
+hadoop_secure_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "${priv_pidfile}" \
+  "${priv_outfile}" \
+  "${priv_errfile}" \
+  "$@"
+  else
+hadoop_daemon_handler \
+  "${HADOOP_DAEMON_MODE}" \
+  "${HADOOP_SUBCMD}" \
+  "${HADOOP_CLASSNAME}" \
+  "${daemon_pidfile}" \
+  "${daemon_outfile}" \
+  "$@"
+  fi
+  exit $?
+else
+  # shellcheck disable=SC2086
+  hadoop_java_exec "${HADOOP_SUBCMD}" "${HADOOP_CLASSNAME}" "$@"
+fi

http://git-wip-us.apache.org/repos/asf/hadoop/blob/d0ff3c33/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
--
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
index 310fb41..4c0b7fb 100755
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/hdfs
@@ -76,7 +76,7 @@ function hdfscmd_case
 
   case ${subcmd} in
 balancer)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.server.balancer.Balancer
   hadoop_debug "Appending HADOOP_BALANCER_OPTS onto HADOOP_OPTS"
   HADOOP_OPTS="${HADOOP_OPTS} ${HADOOP_BALANCER_OPTS}"
@@ -91,12 +91,12 @@ function hdfscmd_case
   HADOOP_CLASSNAME=org.apache.hadoop.hdfs.tools.CryptoAdmin
 ;;
 datanode)
-  supportdaemonization="true"
+  HADOOP_SUBCMD_SUPPORTDAEMONIZATION="true"
   # Determine if we're