
# This file is designed to be sourced in bash to configure the 
# basic Hadoop environment.

HADOOP_CONF_DIR=/etc/hadoop-0.20/conf
HADOOP_HOME=/usr/lib/hadoop-0.20
HADOOP_HDFS_HOME=$HADOOP_HOME
HADOOP_COMMON_HOME=$HADOOP_HOME
export GRIDFTP_HDFS_REPLICAS=2

#update for hadoop 2.0.0
if [ -d "/etc/hadoop/conf" ]; then
    HADOOP_CONF_DIR=/etc/hadoop/conf
fi
if [ -d "/usr/lib/hadoop" ]; then
    HADOOP_HOME=/usr/lib/hadoop
fi

if [ -e "$HADOOP_CONF_DIR/hadoop-env.sh" ]; then
    source $HADOOP_CONF_DIR/hadoop-env.sh
fi

if [ "x$JAVA_HOME" = "x" ]; then
JAVA_HOME=/usr/lib/jvm/java
fi
# Often, libjvm gets hidden off the path.
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$JAVA_HOME/jre/lib/i386:$JAVA_HOME/jre/lib/i386/server:$JAVA_HOME/jre/lib/amd64:$JAVA_HOME/jre/lib/amd64/server:/usr/lib/hadoop/lib/native

# The following is the CLASSPATH building logic from the hadoop script:
# CLASSPATH initially contains $HADOOP_CONF_DIR
CLASSPATH="${HADOOP_CONF_DIR}"
CLASSPATH=${CLASSPATH}:$JAVA_HOME/lib/tools.jar

# for developers, add Hadoop classes to CLASSPATH
if [ -d "$HADOOP_HOME/build/classes" ]; then
  CLASSPATH=${CLASSPATH}:$HADOOP_HOME/build/classes
fi
if [ -d "$HADOOP_HOME/build/webapps" ]; then
  CLASSPATH=${CLASSPATH}:$HADOOP_HOME/build
fi
if [ -d "$HADOOP_HOME/build/test/classes" ]; then
  CLASSPATH=${CLASSPATH}:$HADOOP_HOME/build/test/classes
fi
if [ -d "$HADOOP_HOME/build/tools" ]; then
  CLASSPATH=${CLASSPATH}:$HADOOP_HOME/build/tools
fi

# so that filenames w/ spaces are handled correctly in loops below
IFS=

# for releases, add core hadoop jar & webapps to CLASSPATH
if [ -d "$HADOOP_HOME/webapps" ]; then
  CLASSPATH=${CLASSPATH}:$HADOOP_HOME
fi
for f in $HADOOP_HOME/hadoop-*.jar; do
  CLASSPATH=${CLASSPATH}:$f;
done

if [ -d "$HADOOP_HOME/client" ]; then
for f in $HADOOP_HOME/client/*.jar; do
  CLASSPATH=${CLASSPATH}:$f;
done
fi

# add libs to CLASSPATH
for f in $HADOOP_HOME/lib/*.jar; do
  CLASSPATH=${CLASSPATH}:$f;
done

if [ -d "$HADOOP_HOME/build/ivy/lib/Hadoop/common" ]; then
for f in $HADOOP_HOME/build/ivy/lib/Hadoop/common/*.jar; do
  CLASSPATH=${CLASSPATH}:$f;
done
fi

for f in $HADOOP_HOME/lib/jsp-2.1/*.jar; do
  CLASSPATH=${CLASSPATH}:$f;
done

# add user-specified CLASSPATH last
if [ "$HADOOP_CLASSPATH" != "" ]; then
  CLASSPATH=${CLASSPATH}:${HADOOP_CLASSPATH}
fi

export CLASSPATH=$CLASSPATH

unset IFS

# New gridftp.conf override in GT 5.2
#export GRIDFTP_CONF=/etc/gridftp-hdfs/gridftp.conf
#export conf=/etc/gridftp-hdfs/gridftp.conf

# Allow non-java-based signal handling
export LD_PRELOAD=libjsig.so

