Conviva Replaced mmap with io_uring in Its Rust Query Engine — and It Got Slower
blaizedsouza · x · 2026-09-04
- Conviva engineer Evan Chan published a two-part blog on replacing mmap with iouring in the company's Rust query engine.
- mmap initially fit perfectly: Arrow IPC's layout supports zero-copy random access, and mmap lazily reads huge numbers of files without manual memory management.
- In production under real concurrent query loads, mmap became a serious problem (page faults, page-cache contention).
- The team switched to iouring for async I/O — and it got slower. The series dissects why, and doubles as the basis for his P99 CONF talk.
More from coding & agent
- Live show to cover rogue agent swarm incidents, GPT-6 Astra, and Runway's Solaris world model — DhruvBatra_ · 2026-09-05
- One Weekend Exercise for Learning to Build AI Products: Automate a Workflow End to End — realmadhuguru · 2026-09-05
- After Datadog and Grafana, dev endorses Pydantic Logfire for all observability — samuelcolvin · 2026-09-05
- Vibe coding isn't the problem—conflating it with agentic engineering is — bendee983 · 2026-09-05
- Allie Miller shares her AI research workflow: hypothesis-first with hundreds of agents — alliekmiller · 2026-09-05
- Builder shares update on Grok bot + Shopify integration experiment — billyjhowell · 2026-09-05