我使用的是使用kerberos保护的Hadoop-2.6.0。安装了hive server2 1.1.0版本,其中 derby 数据库作为connectionurl,启用了安全性并启用了授权。启用transaction configuration时,我收到以下异常,无法执行任何查询;
异常
Error: Error while compiling statement: FAILED: LockException [Error 10280]: Error communicating with the metastore (state=42000,code=10280)
日志
[错误10280]:与Metastore通信时出错 org.apache.hadoop.hive.ql.lockmgr.LockException:与Metastore通信时出错 at org.apache.hadoop.hive.ql.lockmgr.DbTxnManager.getValidTxns(DbTxnManager.java:300) 在org.apache.hadoop.hive.ql.Driver.recordValidTxns(Driver.java:927)
引起:MetaException(消息:无法从事务数据库中选择,java.sql.SQLSyntaxErrorException:表/视图' TXNS'不存在。
所以我在hive-site.xml文件中创建了一个下面的属性,如博客中提到的here
配置
<property>
<name>hive.in.test</name>
<value>true</value>
</property>
如果我设置了上面的属性,那么得到以下异常,我被击中,无法解决它。即使使用mydb;
,我也无法运行任何查询异常
Error: Error while compiling statement: FAILED: NullPointerException null (state=42000,code=40000)
日志
执行语句时出错: org.apache.hive.service.cli.HiveSQLException:编译语句时出错:FAILED:NullPointerException null 在org.apache.hive.service.cli.operation.Operation.toSQLException(Operation.java:315) 在org.apache.hive.service.cli.operation.SQLOperation.prepare(SQLOperation.java:103)
引起:java.lang.NullPointerException 在org.apache.hadoop.hive.metastore.txn.TxnHandler.checkQFileTestHack(TxnHandler.java:1146) 在org.apache.hadoop.hive.metastore.txn.TxnHandler。(TxnHandler.java:117)
我需要一个在Hive Server2中处理ACID事务的解决方案。我找到了两个相关的问题,但没有解决我的问题。
答案 0 :(得分:0)
使用hive-txn-schema-0.14.0.mysql.sql升级您的hive mysql Metastore数据库,如下所示。
的MySQL&GT;消息来源/usr/local/hadoop/hive/scripts/metastore/upgrade/mysql/hive-txn-schema-0.14.0.mysql.sql;