Doris 版本
- Doris: 2.1.11
Doris 集群规模
Doris FE: 3个(16c 64g)
Doris BE: 总共6个, 分别为 3个(16c 64g) 3个(32c 96g)
BE conf: 配置过 mem_limit = 80% 默认: 90%
报错日志1
Caused by: java.sql.SQLException: errCode = 2, detailMessage = (10.11.111.167)[CANCELLED]Allocator sys memory check failed: Cannot alloc:64, consuming tracker:<Load#Id=a668b161a2764c29-936c1aeeeb0e4ecc>, peak used 150497169, current used 150497169, exec node:<>, process memory used 54.47 GB exceed limit 74.52 GB or sys available memory 4.37 GB less than low water mark 4.66 GB.
报错日志2
Caused by: java.sql.SQLException: errCode = 2, detailMessage = (10.11.111.163)[CANCELLED]FullGC release wg overcommit mem, wg id:1, name:normal, used:37.73 GB,limit:14.80 GB,backend:10.11.59.163. cancel top memory used tracker <Load#Id=1b2eaa66ab3c41e8-90d146d33b1a122d> consumption 9.53 GB. details:process memory used 46.02 GB exceed soft limit 44.39 GB or sys available memory 7.77 GB less than warning water mark 6.16 GB., Execute again after enough memory, details see be.INFO.
SQL语句
INSERT INTO tbl1
SELECT * FROM source_tbl1 WHERE etl_part = '分区限制';
使用场景
场景: source_tbl1 表里面的分区限制后, 有将近1亿数据量, 需要写入目标表, 报错信息如上, 这种是属于标准的内存不足吗?