我试图在presto上执行一个简单的select *查询,但是它一直在给我: 查询20181112_135620_00001_qenvh失败:java.io.IOException:无法获取主Kerberos主体用作续订错误。我正在hcatalog表上运行此查询,并将所有必需的属性也添加到目录文件夹中的 config.properties 和 hive.properties 中。
当我通过beeline执行相同的查询时,它会被执行。这可能是什么原因?有人可以帮忙吗?
以下是我从server.log中捕获的详细错误:
2018-11-12T06:14:24.779-0800调试查询-3 com.facebook.presto.execution.QueryStateMachine查询20181112_141422_00001_ib3u7失败 2018-11-12T06:14:24.779-0800调试query-execution-2 com.facebook.presto.execution.StageStateMachine Stage 20181112_141422_00001_ib3u7.0已中止 2018-11-12T06:14:24.780-0800调试查询-0 com.facebook.presto.execution.StageStateMachine阶段20181112_141422_00001_ib3u7.1已取消 2018-11-12T06:14:24.779-0800 DEBUG query-execution-1 com.facebook.presto.execution.QueryStateMachine查询20181112_141422_00001_ib3u7失败 java.lang.RuntimeException:java.io.IOException:无法获取用作更新程序的Master Kerberos主体 在io.airlift.concurrent.MoreFutures.tryGetFutureValue(MoreFutures.java:235) 在io.airlift.concurrent.MoreFutures.tryGetFutureValue(MoreFutures.java:205) 在com.facebook.presto.execution.scheduler.SqlQueryScheduler.schedule(SqlQueryScheduler.java:497) 在java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:511) 在java.util.concurrent.FutureTask.run(FutureTask.java:266) 在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624) 在java.lang.Thread.run(Thread.java:748) 由以下原因引起:java.io.IOException:无法获取用作更新程序的主Kerberos主体 在org.apache.hadoop.mapreduce.security.TokenCache.obtainTokensForNamenodesInternal(TokenCache.java:116) 在org.apache.hadoop.mapreduce.security.TokenCache.obtainTokensForNamenodesInternal(TokenCache.java:100) 在org.apache.hadoop.mapreduce.security.TokenCache.obtainTokensForNamenodes(TokenCache.java:80) 在org.apache.hadoop.mapred.FileInputFormat.listStatus(FileInputFormat.java:206) 在org.apache.hadoop.mapred.FileInputFormat.getSplits(FileInputFormat.java:315) 在com.facebook.presto.hive.BackgroundHiveSplitLoader.loadPartition(BackgroundHiveSplitLoader.java:341) 在com.facebook.presto.hive.BackgroundHiveSplitLoader.loadSplits(BackgroundHiveSplitLoader.java:247) at com.facebook.presto.hive.BackgroundHiveSplitLoader.access $ 300(BackgroundHiveSplitLoader.java:88) 在com.facebook.presto.hive.BackgroundHiveSplitLoader $ HiveSplitLoaderTask.process(BackgroundHiveSplitLoader.java:182) 在com.facebook.presto.hive.util.ResumableTasks.safeProcessTask(ResumableTasks.java:47) 在com.facebook.presto.hive.util.ResumableTasks.access $ 000(ResumableTasks.java:20) 在com.facebook.presto.hive.util.ResumableTasks $ 1.run(ResumableTasks.java:35) 在io.airlift.concurrent.BoundedExecutor.drainQueue(BoundedExecutor.java:78) ...还有3个
请帮助!