hive“cannot alter table”错误

jfewjypa  于 2021-06-04  发布在  Hadoop
关注(0)|答案(2)|浏览(707)

将数据加载到表时出现错误,非常感谢您的帮助。

hive> load data local inpath '/home/Xperttech/Desktop/datagen_10.txt' into table patient;

Copying data from file:/home/Xperttech/Desktop/datagen_10.txt
Copying file: file:/home/Xperttech/Desktop/datagen_10.txt
Loading data to table default.patient
Failed with exception Unable to alter table.
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask

然而,数据被正常插入。
只有在我使用mysql进行metastore时才会发生这种情况。当我回到德比时,一切正常。我确信mysql运行良好,从hive登录成功。
配置单元日志:

2014-07-24 20:36:55,136 ERROR exec.Task (SessionState.java:printError(419)) - Failed with exception Unable to alter table.
org.apache.hadoop.hive.ql.metadata.HiveException: Unable to alter table.
        at org.apache.hadoop.hive.ql.metadata.Hive.alterTable(Hive.java:387)
        at org.apache.hadoop.hive.ql.metadata.Hive.loadTable(Hive.java:1448)
        at org.apache.hadoop.hive.ql.exec.MoveTask.execute(MoveTask.java:283)
        at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:151)
        at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:65)
        at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1414)
        at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1192)
        at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1020)
        at org.apache.hadoop.hive.ql.Driver.run(Driver.java:888)
        at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259)
        at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:216)
        at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:413)
................................
        at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:675)
        at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:614)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:160)
Caused by: MetaException(message:org.datanucleus.exceptions.NucleusDataStoreException: Iteration request failed : SELECT `A0`.`BUCKET_COL_NAME`,`A0`.`INTEGER_IDX` AS NUCORDER0 FROM `BUCKETING_COLS` `A0` WHERE `A0`.`SD_ID` = ? AND `A0`.`INTEGER_IDX` >= 0 ORDER BY NUCORDER0)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.alter_table_with_environment_context(HiveMetaStore.java:2408)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
rbpvctlc

rbpvctlc1#

问题解决了。使用兼容版本的mysql java connector。

nwlls2ji

nwlls2ji2#

我遇到过这个问题,通过向infa-bde用户提供hive和hdfs用户访问权限,它工作得很好。

相关问题