doris建表时报错:Failed to create partition [xxx] . Timeout

提问者:Rae 问题分类:数据库
doris建表时报错,提示
Failed to create partition [xxx] . Timeout
现在怎么办?
4 个回答
幸福搭配甜蜜
幸福搭配甜蜜
Doris 建表是按照 Partition 粒度依次创建的。当一个 Partition 创建失败时,可能会报这个错误。即使不使用 Partition,当建表出现问题时,也会报 Failed to create partition,因为如前文所述,Doris 会为没有指定 Partition 的表创建一个不可更改的默认的 Partition。
当遇到这个错误是,通常是 BE 在创建数据分片时遇到了问题。可以参照以下步骤排查:
1. 在 fe.log 中,查找对应时间点的 Failed to create partition 日志。在该日志中,会出现一系列类似 {10001-10010} 字样的数字对。数字对的第一个数字表示 Backend ID,第二个数字表示 Tablet ID。如上这个数字对,表示 ID 为 10001 的 Backend 上,创建 ID 为 10010 的 Tablet 失败了。
2. 前往对应 Backend 的 be.INFO 日志,查找对应时间段内,tablet id 相关的日志,可以找到错误信息。
3. 以下罗列一些常见的 tablet 创建失败错误,包括但不限于:
1)BE 没有收到相关 task,此时无法在 be.INFO 中找到 tablet id 相关日志或者 BE 创建成功,但汇报失败。以上问题,请参阅官网的 安装与部署 检查 FE 和 BE 的连通性。
2)预分配内存失败。可能是表中一行的字节长度超过了 100KB。
3)Too many open files。
打开的文件句柄数超过了 Linux 系统限制。需修改 Linux 系统的句柄数限制。
发布于:4个月前 (01-12) IP属地:四川省
忆雪
忆雪
如果创建数据分片时超时,也可以通过在 fe.conf 中设置
tablet_create_timeout_second=xxx
以及 max_create_table_timeout_second=xxx 来延长超时时间。
其中 tablet_create_timeout_second 默认是 1 秒,
max_create_table_timeout_second 默认是 60 秒,
总体的超时时间为
min(tablet_create_timeout_second * replication_num, max_create_table_timeout_second),具体参数设置可参阅官网的 FE 配置项 。
发布于:4个月前 (01-12) IP属地:四川省
我来回答