我正在尝试使用HDP 2.4中的最新RHive包从R连接到Hive。安装似乎进展顺利,因为我能够调用RHive库。当我执行
rhive.connect(host="192.168.56.101",port=10000, hiveServer2=TRUE)
我收到此错误消息:
无法在运行时修改mapred.child.env。它不在允许在运行时修改的参数列表中。
在谷歌搜索后,我将以下内容添加到/etc/hive/conf/hive-site.xml文件中:
<property>
<name>hive.security.authorization.sqlstd.confwhitelist.append</name>
<value>mapred.child.env</value>
</property>
重新启动hive-server2后,原始错误消息现在被替换为:
无法在运行时修改RHIVE_UDF_DIR。它不在params列表中 允许在运行时修改。
我尝试在map.child.env旁边添加RHIVE_UDF_DIR,如下所示:
<property>
<name>hive.security.authorization.sqlstd.confwhitelist.append</name>
<value>mapred.child.env,RHIVE_UDF_DIR</value>
</property>
但这并没有解决问题;它带回了我在一开始就得到的原始错误消息。有什么想法吗?提前谢谢!
答案 0 :(得分:0)
我知道这是迟到的回复,但我刚遇到这个帖子。使用java正则表达式而不是逗号分隔将起作用。今天早上这对我有用。
应在hive-site.xml下添加配置参数
hive.security.authorization.sqlstd.confwhitelist.append=mapred\.child\.env|RHIVE_UDF_DIR
Ps:反斜杠没有在上方显示,因此添加了屏幕截图链接。 config parameter with proper java regex for values