ParseException line 20:7 Failed to recognize predicate 'timestamp'. Failed rule: 'identifier' in tab

      今天在执行 hive ql 时,突然出现了这个错误,之前没遇到过。就自己在网上找原因,看了几篇回复都是不搭边的,都不想继续了,不过也给自己了个思路,有一篇英文贴是有效的。

        就尝试了修改操作,SET hive.support.sql11.reserved.keywords=false; 

      这个设置就是表明: 建表的字段名,最好不要使用保留字。如果已经使用了,执行sql前设置弃用,只对当前会话有效; 

     注意:   hive.support.sql11.reserved.keywords=true;   Hive 1.2 后默认是开启的; 为了避免不必要的麻烦,最好是关闭这个选项或者使用别名,不是关键字来做字段。

       2. 还遇到另外一个Hive 异常错误;

        Unable to acquire IMPLICIT, EXCLUSIVE lock   master@tmp_sales_order after 100 attempts

FAILED: Error in acquiring locks: Locks on the underlying objects cannot be acquired. retry after some time;

       在执行 hive QL 时,停留了很长时间不能往下执行,最后就报了这个异常;

       网上回复的是Hive 锁表的问题; 

      解决办法:  

     关闭锁机制: set hive.support.concurrency=false; 默认为true 

 

      

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值