Deeply buried 16-year-old SQLite bug caused last year's Tailscale outages
Think your bugs are a pain to track? WAL-Reset took six months of hunting and development of a new logging tool to identify
Tailscale users experienced unexpected outages in late 2024 after a 16-year-old bug was discovered in SQLite's write-ahead log. The Tailscale team investigated the issue for six months and found that the bug, dubbed the WAL-Reset bug, was hiding deep within SQLite's nature. The problem arose due to a rare data race between a checkpoint and write transaction in the database.
SQLite's Write-Ahead Log (WAL) mode, which allows for improved performance and concurrency, was used by Tailscale's control plane to run fast and consistent backups. The issue can only be triggered when WAL mode is active and multiple database connections are open on the same file. SQLite maintainers have confirmed that the bug has been present since version 3.7.0, released in July 2010, and have fixed it.
Users are advised to update to a fixed version of SQLite, as the issue, although rare, can have serious consequences.
Written by urgent.news from The Register Software's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.