[ 
https://issues.apache.org/jira/browse/SQOOP-3102?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

peng.jianhua updated SQOOP-3102:
--------------------------------
    Description: 
There are two questions in the sqoop_server_classpath_set function of the 
sqoop.sh. The sqoop2 start failure when using the same user with hadoop.

$HADOOP_YARN_HOME and $HADOOP_HDFS_HOME were used as following in start-all.sh 
of the hadoop:
# start hdfs daemons if hdfs is present
if [ -f "${HADOOP_HDFS_HOME}"/sbin/start-dfs.sh ]; then
  "${HADOOP_HDFS_HOME}"/sbin/start-dfs.sh --config $HADOOP_CONF_DIR
fi
# start yarn daemons if yarn is present
if [ -f "${HADOOP_YARN_HOME}"/sbin/start-yarn.sh ]; then
  "${HADOOP_YARN_HOME}"/sbin/start-yarn.sh --config $HADOOP_CONF_DIR
fi
Based on above logic the $HADOOP_YARN_HOME and $HADOOP_HDFS_HOME must equal to 
$HADOOP_HOME. And they must be set as environment variable.

In sqoop2 they were used as following in sqoop_server_classpath_set function 
for sqoop.sh file.
HADOOP_COMMON_HOME=${HADOOP_COMMON_HOME:-${HADOOP_HOME}/share/hadoop/common}
HADOOP_HDFS_HOME=${HADOOP_HDFS_HOME:-${HADOOP_HOME}/share/hadoop/hdfs}
HADOOP_MAPRED_HOME=${HADOOP_MAPRED_HOME:-${HADOOP_HOME}/share/hadoop/mapreduce}
HADOOP_YARN_HOME=${HADOOP_YARN_HOME:-${HADOOP_HOME}/share/hadoop/yarn}
In above logic the HADOOP_HDFS_HOME will equal to HADOOP_HOME when 
HADOOP_HDFS_HOME equal to $HADOOP_HOME in environment variable . The 
HADOOP_YARN_HOME will equal to HADOOP_HOME when HADOOP_YARN_HOME was set to 
$HADOOP_HOME in environment variable also.
As a result, sqoop2 start failure.
We shouldn't only check whether HADOOP_HDFS_HOME is empty, but also directly 
set HADOOP_HDFS_HOME=${HADOOP_HOME}/share/hadoop/hdfs and 
HADOOP_YARN_HOME={HADOOP_HOME}/share/hadoop/yarn in sqoop_server_classpath_set 
function for sqoop.sh file..

  was:
There are two questions in the sqoop_server_classpath_set function of the 
sqoop.sh

$HADOOP_YARN_HOME and $HADOOP_HDFS_HOME were used as following in start-all.sh 
of the hadoop:
# start hdfs daemons if hdfs is present
if [ -f "${HADOOP_HDFS_HOME}"/sbin/start-dfs.sh ]; then
  "${HADOOP_HDFS_HOME}"/sbin/start-dfs.sh --config $HADOOP_CONF_DIR
fi
# start yarn daemons if yarn is present
if [ -f "${HADOOP_YARN_HOME}"/sbin/start-yarn.sh ]; then
  "${HADOOP_YARN_HOME}"/sbin/start-yarn.sh --config $HADOOP_CONF_DIR
fi
Based on above logic the $HADOOP_YARN_HOME and $HADOOP_HDFS_HOME must equal to 
$HADOOP_HOME. And they must be set as environment variable.

In sqoop2 they were used as following in sqoop_server_classpath_set function 
for sqoop.sh file.
HADOOP_COMMON_HOME=${HADOOP_COMMON_HOME:-${HADOOP_HOME}/share/hadoop/common}
HADOOP_HDFS_HOME=${HADOOP_HDFS_HOME:-${HADOOP_HOME}/share/hadoop/hdfs}
HADOOP_MAPRED_HOME=${HADOOP_MAPRED_HOME:-${HADOOP_HOME}/share/hadoop/mapreduce}
HADOOP_YARN_HOME=${HADOOP_YARN_HOME:-${HADOOP_HOME}/share/hadoop/yarn}
In above logic the HADOOP_HDFS_HOME will equal to HADOOP_HOME when 
HADOOP_HDFS_HOME equal to $HADOOP_HOME in environment variable . The 
HADOOP_YARN_HOME will equal to HADOOP_HOME when HADOOP_YARN_HOME was set to 
$HADOOP_HOME in environment variable also.
As a result, sqoop2 start failure.
We shouldn't only check whether HADOOP_HDFS_HOME is empty, but also directly 
set HADOOP_HDFS_HOME=${HADOOP_HOME}/share/hadoop/hdfs and 
HADOOP_YARN_HOME={HADOOP_HOME}/share/hadoop/yarn in sqoop_server_classpath_set 
function for sqoop.sh file..

        Summary: There are two questions in the sqoop_server_classpath_set 
function of the sqoop.sh. The sqoop2 start failure when using the same user 
with hadoop.  (was: There are two questions in the sqoop_server_classpath_set 
function of the sqoop.sh)

> There are two questions in the sqoop_server_classpath_set function of the 
> sqoop.sh. The sqoop2 start failure when using the same user with hadoop.
> --------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SQOOP-3102
>                 URL: https://issues.apache.org/jira/browse/SQOOP-3102
>             Project: Sqoop
>          Issue Type: Bug
>          Components: sqoop2-dist
>            Reporter: peng.jianhua
>            Priority: Minor
>              Labels: patch
>         Attachments: 
> 0001-SQOOP-3102-There-are-two-questions-in-the-sqoop_serv.patch
>
>
> There are two questions in the sqoop_server_classpath_set function of the 
> sqoop.sh. The sqoop2 start failure when using the same user with hadoop.
> $HADOOP_YARN_HOME and $HADOOP_HDFS_HOME were used as following in 
> start-all.sh of the hadoop:
> # start hdfs daemons if hdfs is present
> if [ -f "${HADOOP_HDFS_HOME}"/sbin/start-dfs.sh ]; then
>   "${HADOOP_HDFS_HOME}"/sbin/start-dfs.sh --config $HADOOP_CONF_DIR
> fi
> # start yarn daemons if yarn is present
> if [ -f "${HADOOP_YARN_HOME}"/sbin/start-yarn.sh ]; then
>   "${HADOOP_YARN_HOME}"/sbin/start-yarn.sh --config $HADOOP_CONF_DIR
> fi
> Based on above logic the $HADOOP_YARN_HOME and $HADOOP_HDFS_HOME must equal 
> to $HADOOP_HOME. And they must be set as environment variable.
> In sqoop2 they were used as following in sqoop_server_classpath_set function 
> for sqoop.sh file.
> HADOOP_COMMON_HOME=${HADOOP_COMMON_HOME:-${HADOOP_HOME}/share/hadoop/common}
> HADOOP_HDFS_HOME=${HADOOP_HDFS_HOME:-${HADOOP_HOME}/share/hadoop/hdfs}
> HADOOP_MAPRED_HOME=${HADOOP_MAPRED_HOME:-${HADOOP_HOME}/share/hadoop/mapreduce}
> HADOOP_YARN_HOME=${HADOOP_YARN_HOME:-${HADOOP_HOME}/share/hadoop/yarn}
> In above logic the HADOOP_HDFS_HOME will equal to HADOOP_HOME when 
> HADOOP_HDFS_HOME equal to $HADOOP_HOME in environment variable . The 
> HADOOP_YARN_HOME will equal to HADOOP_HOME when HADOOP_YARN_HOME was set to 
> $HADOOP_HOME in environment variable also.
> As a result, sqoop2 start failure.
> We shouldn't only check whether HADOOP_HDFS_HOME is empty, but also directly 
> set HADOOP_HDFS_HOME=${HADOOP_HOME}/share/hadoop/hdfs and 
> HADOOP_YARN_HOME={HADOOP_HOME}/share/hadoop/yarn in 
> sqoop_server_classpath_set function for sqoop.sh file..



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to