今天在整合hive on spark的时候,出现一个小的问题,进行命令:show databases或者show tables时出现如下问题,
FAILED: IllegalArgumentException java.net.URISyntaxException: Relative path in absolute URI: file:./$/root/hive/tmp/root/ed57815b-1c57-4ae4-97e4-ddd0e7302ea8/hive_2018-06-07_15-07-04_001_8340898723831414051-1 |
如图所示:
显示是URI的问题,于是我就验证hive+spark能不能运行,结果发现可以正常运行,就是show databases,show tables运行就报错,肯定问题是出在hive-site.xml这个文件的配置中了,于是按照错误的提示。找到这个目录/root/hive/tmp在hive-site.xml中的位置,结果发现,在替换${system:java.io.tmpdir}为自己创建的目录:/root/hive/tmp时 和 ${system:user.name}改为用户:root时,替换除了问题,替换没有完全替换干净,$这个符号没有替换,导致出错,将$删除,重新启动hive,命令:show databases,show tables可以正常使用。
没有替换干净:错误的配置,路径为自己创建的 <property> <name>hive.exec.local.scratchdir</name><value>$/root/hive/tmp/root</value> <description>Local scratch space for Hive jobs</description> </property> |
替换干净:正确的配置,路径为自己创建的 property>
扫描二维码关注公众号,回复:
3467975 查看本文章
<name>hive.exec.local.scratchdir</name><value>/root/hive/tmp/root</value> <description>Local scratch space for Hive jobs</description> </property> |