umbra: the server crashes while loading a billion-row Parquet file with a large footer
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
调研方向
The crash happens during the COPY in umbra/create.sql (around line 216) when umbra/load reads a Parquet file with about 2,360 row groups and a 31.6 MB footer. Start by rebuilding the reduced-row-group file with the clickhouse local command in the issue, then load it with umbra/load and capture the Umbra server log, which the report did not include. Done means the crash reproduces or is ruled out, with the footer size and row-group count recorded.
由索引模型根据 Issue 内容生成。
描述
The Umbra server crashed while loading a Parquet file of a billion rows: the client lost the connection during the COPY of umbra/create.sql:
CREATE TABLE
psql:create.sql:216: SSL SYSCALL error: EOF detected
psql:create.sql:216: error: connection to server was lost
This happened in the randomized benchmark (https://github.com/ClickHouse/ClickBench/pull/3271), which loads a generated dataset with the same schema as hits.parquet, a billion rows in one file, using umbra/install and umbra/load unchanged (image umbradb/umbra:26.10, machine c6a.metal with 384 GiB of memory). The file was written by ClickHouse 26.10 with its default row group size limit of 512 MB: more than a thousand row groups, and a footer of 35 MB. Hyper refused the same file because of its footer size (https://github.com/ClickHouse/ClickBench/issues/3291), so the size of the footer is a likely cause here too; the other systems of the benchmark loaded the same file. The log of the server was not collected.
Possible reproduction with the standard dataset: rewriting hits.parquet (100M rows, 226 row groups, a footer of 2.4 MB) with smaller row groups gives 2360 row groups and a footer of 31.6 MB:
clickhouse local --output_format_parquet_row_group_size 40000 --output_format_parquet_row_group_size_bytes 100000000000 \
--query "SELECT * FROM file('hits.parquet') INTO OUTFILE 'hits-small-groups.parquet' TRUNCATE FORMAT Parquet"
clickhouse local --query "SELECT num_row_groups, metadata_size FROM file('hits-small-groups.parquet', ParquetMetadata)"
# 2360 31626081
then load it instead of hits.parquet with umbra/load.
The next run of the randomized benchmark writes about 250 row groups per file, as the original file has; its result will show whether Umbra loads a billion rows with a small footer, and I will add it here.
@toschmidt
🤖 Generated with Claude Code
- 主要语言
- Shell
- 星标
- 1.2k
- 派生
- 334
- 平均合并
- 3 小时 50 分钟
- 30 天内合并 PR
- 710
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 没有贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
ClickHouse/ClickBench 的其他 Issue
-
难度 5/5 一周以上 新手友好度 12/100
ClickHouse/ClickBench#3294 ·
维护者通常 1 天内回复
-
难度 4/5 3-5 天 新手友好度 15/100
ClickHouse/ClickBench#3291 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 5/100
ClickHouse/ClickBench#3288 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 35/100
ClickHouse/ClickBench#2650 ·
维护者通常 1 天内回复
-
doris-parquet-single fails before measurement on c6a.xlarge: FE cannot commit its 8 GiB initial heap未关闭
难度 4/5 3-5 天 新手友好度 35/100
ClickHouse/ClickBench#2208 · 2 条评论 ·
维护者通常 1 天内回复
查看 ClickHouse/ClickBench 的全部 Issue
相似的 Issue
-
good first issue help wanted
难度 2/5 1-3 小时 新手友好度 82/100
-
bug good first issue
难度 2/5 1-3 小时 新手友好度 84/100
laaielichter/AgentHaven#72 ·
维护者通常 1 天内回复
-
type: cleanup
难度 2/5 1-3 小时 新手友好度 85/100
googleapis/google-cloud-swift#1626 ·
维护者通常 1 天内回复
-
os:Windows
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 88/100
awslabs/agentcore-samples#2317 ·
维护者通常 3 天内回复