Hive tez 查询失败并出现 java.io.IOException

Posted

技术标签:

【中文标题】Hive tez 查询失败并出现 java.io.IOException【英文标题】:Hive tez query fails with java.io.IOException 【发布时间】:2020-11-11 16:25:15 【问题描述】:

执行一个长时间运行的 Hive Tez 查询,它很少会失败:

java.io.IOException: File hdfs://XXX with newer attempt ID 1 is smaller than the file hdfs://YYY with older attempt ID 0

在我们的 20 节点 HDP 3.1.5 集群(Hive 3.1.0 和 Tez 0.9.1)中,它在大约 200 次执行中失败了一次

【问题讨论】:

【参考方案1】:

我们在哪里打HIVE-23354

似乎没有解决方法。它在 Hive 4.0.0 解决

【讨论】:

【参考方案2】:

我在查询有很多大连接时遇到了同样的问题。减小(在我的情况下为 512 mb->16 mb)适合内存的表的大小,即 hive.auto.convert.join.noconditionaltask.size 为我解决了这个问题。

堆栈:HDP 3.1.4、Tez 0.9.1、Hive 3.1.0。

【讨论】:

以上是关于Hive tez 查询失败并出现 java.io.IOException的主要内容,如果未能解决你的问题,请参考以下文章

从 Beeline 连接时,Hive 查询在 Tez 上失败,但在 Map-Reduce 上成功

Hive 查询执行失败

Hive on Tez 出现的bug 及原因解析

Hive tez 执行错误

Hive 查询失败并出现分析异常

无法创建 InputInitializerManager 错误 - HIVE 上的 TEZ