cloudflare / cloudflare/quiche
Quiche Quic interop reference implementation crash
- Dominant language
- Rust
- Stars
- 11.8k
- Forks
- 1.1k
- Avg merge
- 21h 9m
- Merged PRs (30d)
- 6
Description
Hello.
I think I have detected a file descriptor misshandling issue
What: crash at "muttiplexing" test case
When: during the testing of my server implementation against the quiche client, I found a bug related with the number of files open.
Environment: quic interop runner, docker, virtual machine
The virtual machine have this file descriptor limits:
ulimit -Hn -> unlimited
ulimit -n -> 1024
cat /proc/sys/fs/file-max -> a very huge number
How to reproduce:
python3 run.py -c quiche -s -t multiplexing [--debug]
Result:
[2026-07-20T13:27:31.991416661Z DEBUG quiche_apps::common] sending HTTP request "GET /bountiful-intense-keyboard\r\n"
[2026-07-20T13:27:31.991450114Z DEBUG quiche_apps::common] sending HTTP request "GET /salty-satisfied-cheetah\r\n"
[2026-07-20T13:27:31.991477545Z DEBUG quiche_apps::common] sending HTTP request "GET /large-scalding-lemur\r\n"
[2026-07-20T13:27:31.991503674Z DEBUG quiche_apps::common] sending HTTP request "GET /clean-overjoyed-golfcart\r\n"
thread 'main' panicked at apps/src/common.rs:128:23:
Error creating file for https://server4/clean-overjoyed-golfcart, attempted path was /downloads/clean-overjoyed-golfcart: Too many open files (os error 24)
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Thanks in advance.
Contributor guide
Research direction
Run `python3 run.py -c quiche -s -t multiplexing [--debug]` in the stated environment and reproduce the file-descriptor failure. Start at `apps/src/common.rs:128` and the interop runner entry point; done means the multiplexing test handles the download workload without panicking with `Too many open files`.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, python, rust
- Domain
- networking, testing
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100