分享

Hive升级时遇到的几个小问题以及解决办法

sholydar 发表于 2015-3-4 15:34:20 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 1 26103
本帖最后由 sholydar 于 2015-3-4 15:36 编辑

本人原来用的是Hive-0.13.1,今天心血来潮想试试Hive-1.0.0。结果遇到了下面几个问题:
1.hive.exec.scratchdir 路径提示权限错误,hive-0.13.1没有问题,hive-1.0.0一直报错:
  1. Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: The root scratch dir: hdfs://mycluster/hive/scratchdir on HDFS should be writable. Current permissions are: rwxr-xr-
复制代码

解决办法:
  1. hadoop fs -chmod -R 777 /scratchdir路径
复制代码
例如:
  1. hadoop fs -chmod -R 777 /hive/scratchdir
复制代码


2.system:java.io.tmpdir 提示需要使用绝对路径:
  1. Exception in thread "main" java.lang.RuntimeException: java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
复制代码

解决办法:将hive-site.xml中所有的system:java.io.tmpdir 都换成绝对路径,Hive-1.0.0版本中有以下三处:
  1. <property>
  2.     <name>hive.exec.local.scratchdir</name>
  3.     <value>${system:java.io.tmpdir}/${system:user.name}</value>
  4.     <description>Local scratch space for Hive jobs</description>
  5.   </property>
  6. <property>
  7.     <name>hive.downloaded.resources.dir</name>
  8.     <value>${system:java.io.tmpdir}/${hive.session.id}_resources</value>
  9.     <description>Temporary local directory for added resources in the remote file system.</description>
  10.   </property>
  11. <property>
  12.     <name>hive.server2.logging.operation.log.location</name>
  13.     <value>${system:java.io.tmpdir}/${system:user.name}/operation_logs</value>
  14.     <description>Top level directory where operation logs are stored if logging functionality is enabled</description>
  15.   </property>
复制代码




已有(1)人评论

跳转到指定楼层
rsgg03 发表于 2015-3-4 16:02:15
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条