Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
sqoop错误:HADOOP_ORG.APACHE.sqoop.sqoop_用户:错误替换_Hadoop_Sqoop - Fatal编程技术网

sqoop错误:HADOOP_ORG.APACHE.sqoop.sqoop_用户:错误替换

sqoop错误:HADOOP_ORG.APACHE.sqoop.sqoop_用户:错误替换,hadoop,sqoop,Hadoop,Sqoop,为什么sqoop会抛出这个错误,如何修复它 我已经检查了hadoop-functions.sh中的第2326行,功能是: hduser@kubuntu17:~$ sqoop version /usr/local/hadoop/libexec/hadoop-functions.sh: line 2326: HADOOP_ORG.APACHE.SQOOP.SQOOP_USER: bad substitution /usr/local/hadoop/libexec/hadoop-functions.s

为什么sqoop会抛出这个错误,如何修复它

我已经检查了hadoop-functions.sh中的第2326行,功能是:

hduser@kubuntu17:~$ sqoop version
/usr/local/hadoop/libexec/hadoop-functions.sh: line 2326: HADOOP_ORG.APACHE.SQOOP.SQOOP_USER: bad substitution
/usr/local/hadoop/libexec/hadoop-functions.sh: line 2421: HADOOP_ORG.APACHE.SQOOP.SQOOP_OPTS: bad substitution
2017-11-04 03:34:05,230 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6
Sqoop 1.4.6
git commit id c0c5a81723759fa575844a0a1eae8f510fa32c25
Compiled by root on Mon Apr 27 14:38:36 CST 2015
hduser@kubuntu17:~$ 

如果您对此有任何想法,我们将不胜感激。

您尝试过什么?你有什么假设吗?是谷歌先做的,没有发现类似的案例。接下来,通过查看两个问题行(sqoop版本命令结果),打开hadoop_functions.sh并检查行号2326和2421。看起来“uvar”变量是问题元素,但不确定如何继续解决此问题。顺便说一句,sqoop运行良好,我可以将数据从MySql导入到Hive中。你们有什么版本的Hadoop?您是否验证了Sqoop支持它?您是否找到了解决方案?@BrunoWego此问题已在中修复。您可以在GitHub()找到最新版本。
function hadoop_verify_user_perm
{
  declare program=$1
  declare command=$2
  declare uvar

  uvar=$(hadoop_build_custom_subcmd_var "${program}" "${command}" USER)

  if [[ -n ${!uvar} ]]; then
    if [[ ${!uvar} !=  "${USER}" ]]; then
      hadoop_error "ERROR: ${command} can only be executed by ${!uvar}."
      exit 1
    fi
  fi
  return 0
}