踩坑——Oozie提交hive报错JA010: Property [fs.default.name] not allowed in action [job-xml] configuration

报错如下

2019-02-15 09:47:47,017  WARN ActionStartXCommand:523 - SERVER[deptest75] USER[hadoop] GROUP[-] TOKEN[] APP[hive-wf] JOB[0000067-190128144307847-oozie-hado-W] ACTION[0000067-190128144307847-oozie-hado-W@hive-n
ode] Error starting action [hive-node]. ErrorType [FAILED], ErrorCode [JA010], Message [JA010: Property [fs.default.name] not allowed in action [job-xml] configuration]org.apache.oozie.action.ActionExecutorException: JA010: Property [fs.default.name] not allowed in action [job-xml] configuration
	at org.apache.oozie.action.hadoop.JavaActionExecutor.checkForDisallowedProps(JavaActionExecutor.java:210)
	at org.apache.oozie.action.hadoop.JavaActionExecutor.parseJobXmlAndConfiguration(JavaActionExecutor.java:510)
	at org.apache.oozie.action.hadoop.JavaActionExecutor.parseJobXmlAndConfiguration(JavaActionExecutor.java:468)
	at org.apache.oozie.action.hadoop.JavaActionExecutor.setupActionConf(JavaActionExecutor.java:541)
	at org.apache.oozie.action.hadoop.HiveActionExecutor.setupActionConf(HiveActionExecutor.java:77)
	at org.apache.oozie.action.hadoop.JavaActionExecutor.submitLauncher(JavaActionExecutor.java:1093)
	at org.apache.oozie.action.hadoop.JavaActionExecutor.start(JavaActionExecutor.java:1386)
	at org.apache.oozie.command.wf.ActionStartXCommand.execute(ActionStartXCommand.java:234)
	at org.apache.oozie.command.wf.ActionStartXCommand.execute(ActionStartXCommand.java:65)
	at org.apache.oozie.command.XCommand.call(XCommand.java:287)
	at org.apache.oozie.service.CallableQueueService$CompositeCallable.call(CallableQueueService.java:332)
	at org.apache.oozie.service.CallableQueueService$CompositeCallable.call(CallableQueueService.java:261)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at org.apache.oozie.service.CallableQueueService$CallableWrapper.run(CallableQueueService.java:179)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:748)
先说解决方案,将 workflow.xml 中 ${nameNode}/hive/hive-site.xml 中指定的hdfs上 hive-site.xml 文件中 fs.defaultFS 参数注释掉,本地的 hive-site.xml 文件不用修改。

这个报错很尴尬。事情起因起因是前段时间由于将hiveLOCATION 地址从 hdfs://test1:9000*** 改成 hdfs://ns*** ,在想旧表中load数据时需要将 fs.defaultFS 参数添加到 hive-site.xml 文件中,后来运行hive也没啥问题就没有修改回来,但是现在oozie调用就报错了。尬不尬?

解决思路:
1.我首先怀疑的肯定是oozie调用hive的workflow.xml文件有问题,job-xml 这个配置就在workflow.xml中,后来发现配置和别的一样,没问题呀
2.我怀疑是sql语句或hive出问题,我将hive语句用shell脚本提交发现也没有问题
3.我怀疑oozie配置的有问题,我用oozie提交了一个spark任务,发现成功了,说明oozie基本配置也没问题。截止目前workflow.xml没问题,sql语句没问题,hive没问题,oozie也没有问题,这是后特别头大,什么都没问题那为啥oozie提交hive任务就报错呢?
4.我用另一套集群B提交相同的代码,发现也没问题。奇迹了,这就更尴尬了。说明肯定是oozie读取的某个参数有问题,不然相同的workflow.xml和正常的hive,为啥另一个集群就不报错呢?
5.我想两个集群上的任务交叉提交到对方的oozie地址上,发现集群B上的oozie也失败了。我仔细的查看了workflow.xml中各个参数文件有啥不一样,最后发现,oozie在调用hive任务时加载workflow.xml中job-xml指定的hive-site.xml不一样。在注释掉 fs.defaultFS 参数,发现可以正常运行了。

====================================================================

@羲凡——只为了更好的活着

若对博客中有任何问题,欢迎留言交流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值