2015-02-23 105 views
4

我在ORC文件格式表上查询时遇到了问题Hive在Hive中处理行时的运行时错误

我正在下面查询。

INSERT INTO表。选择从。条件;

TaskAttempt 2失败,info = [错误:运行任务时失败:java.lang.RuntimeException:java.lang.RuntimeException:org.apache.hadoop.hive.ql.metadata.HiveExceptio Hive处理行时发生运行时错误 at org.apache.hadoop.hive.ql.exec.tez.TezProcessor.run(TezProcessor.java:org.apache.hadoop.hive.ql.exec.tez.TezProcessor.initializeAndRunProcessor(TezProcessor.java:186) ) 138) 在org.apache.tez.runtime.LogicalIOProcessorRuntimeTask.run(LogicalIOProcessorRuntimeTask.java:324) 在org.apache.tez.runtime.task.TezTaskRunner $ $ TaskRunnerCallable 1.run(TezTaskRunner.java:176) 在有机.apache.tez.runtime.task.TezTaskRunner $ TaskRunnerCallable $ 1.run(TezTaskRunner.java:168) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1628 ) 在org.apache.tez.runtime.task.TezTaskRunner $ TaskRunnerCallable.call(TezTaskRunner.java:168) 在org.apache.tez.runtime.task.TezTaskRunner $ TaskRunnerCallable.call(TezTaskRunner.java:163) 在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor)上的java.util.concurrent.FutureTask.run(FutureTask.java:266) (java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 的.java:617) 在java.lang.Thread.run(Thread.java:745) 通过使用:java.lang.Runt imeException:org.apache.hadoop.hive.ql.metadata.HiveException:处理行 时Hive运行时错误,位于org.apache.hadoop.hive.ql.exec.tez.MapRecordSource.processRow(MapRecordSource.java:91) at org.apache.hadoop.hive.ql.exec.tez.MapRecordSource.pushRecord(MapRecordSource.java:68) 在org.apache.hadoop.hive.ql.exec.tez.MapRecordProcessor.run(MapRecordProcessor.java:294) at org.apache.hadoop.hive.ql.exec.tez.TezProcessor.initializeAndRunProcessor(TezProcessor.java:163) ... 13更多 使用者:org.apache.hadoop.hive.ql.metadata.HiveException:处理行 时Hive运行时错误,位于org.apache.hadoop.hive.ql.exec.vector.VectorMapOperator.process(VectorMapOperator.java:52) ,位于org.apache.hadoop.hive.ql.exec.tez.MapRecordSource。 PROC essRow(MapRecordSource.java:83) ... 16更多 使用者:org.apache.hadoop.hive.ql.metadata.HiveException:在org.apache.hadoop.hive.ql.exec处评估'Hotels4U' 时出错.vector.VectorSelectOperator.processOp(VectorSelectOperator.java:126) at org.apache.hadoop.hive.ql.exec.Operator.forward(Operator.java:815) at org.apache.hadoop.hive.ql.exec .TableScanOperator.processOp(TableScanOperator.java:95) at org.apache.hadoop.hive.ql.exec.MapOperator $ MapOpCtx.forward(MapOperator.java:157) at org.apache.hadoop.hive.ql.exec .vector.VectorMapOperator.process(VectorMapOperator.java:45) ... 17更多 使用者:java.lang.ArrayIndexOutOfBoundsException:48 at org.apache.hadoop.hive.ql.exec。 vector.expressions.ConstantVectorExpression.evaluateBytes(ConstantVectorExpression.java:124) at org.apache.hadoop.hive.ql.exec.vector.expressions.ConstantVectorExpression.evaluate(ConstantVectorExpression.java:156) at org.apache.hadoop。 hive.ql.exec.vector.VectorSelectOperator.processOp(VectorSelectOperator。java:124)

回答

1

要解决此问题,请在hive shell中设置以下参数。

hive>set hive.vectorized.execution.enabled=false; hive>set hive.vectorized.execution.reduce.enabled=false;

然后运行插入覆盖命令。

2

我有类似的问题。原来这是因为我没有足够的空间。在我删除Hive中的一些旧表并释放一些内存空间后,它可以正常工作。

+0

其中一个赞成。从HDFS删除旧文件帮助我解决了这个问题。非常感谢。 – sunitha 2017-04-07 08:30:02