umbra: the server crashes while loading a billion-row Parquet file with a large footer
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 25/100
Piste de recherche
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.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
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
- Langage dominant
- Shell
- Étoiles
- 1.2k
- Forks
- 334
- Merge moyen
- 3 h 50 min
- PR mergées (30 j)
- 710
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Aucun guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de ClickHouse/ClickBench
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 12/100
ClickHouse/ClickBench#3294 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 15/100
ClickHouse/ClickBench#3291 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 5/100
ClickHouse/ClickBench#3288 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
ClickHouse/ClickBench#2650 ·
Les mainteneurs répondent en général sous 1 jour
-
doris-parquet-single fails before measurement on c6a.xlarge: FE cannot commit its 8 GiB initial heapOuverte
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
ClickHouse/ClickBench#2208 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de ClickHouse/ClickBench
Issues similaires
-
good first issue help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
-
documentation good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour
-
bug good first issue help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
laaielichter/Godotwright#213 ·
Les mainteneurs répondent en général sous 1 jour
-
bug good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
laaielichter/AgentHaven#72 ·
Les mainteneurs répondent en général sous 1 jour
-
type: cleanup
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
googleapis/google-cloud-swift#1626 ·
Les mainteneurs répondent en général sous 1 jour