placeholder

Tokio + prctl = nasty bug

Recently I encountered a bug so cute that I immediately knew that I will want to share it on my blog. It was one of those bugs that even Rust can’t save you from. It occurred in HyperQueue (HQ), a distributed task scheduler written in Rust that I work on.

Click to view the original at kobzol.github.io

Hasnain says:

"Funnily enough, this commit was added to HyperQueue in an enormous pull request that essentially backported most of my benchmarking experiments that I have done over the summer. The PR almost exclusively contained changes only to benchmarks, so it should have been safe to merge without a lot of scrutiny. But it also contained two teeny tiny changes. The PR description that I wrote is quite funny in retrospect:

> This backports the benchmarks that I prepared for my PhD thesis back into the HQ repository. Almost all changes are to the benchmarks repository, and they thus shouldn’t need a lot of review. There are a few changes in HQ though: command spawning optimization and the option to disable authentication for benchmarking.

Well, guess what, the “command spawning optimization” managed to break HyperQueue’s primary functionality for a bunch of users. That’s what I get for sending +3,458 -601 diff pull requests, sigh…"

Posted on 2025-03-16T17:04:08+0000