Los ingenieros de Tailscale rastrearon una serie de incidentes de corrupción de datos en su infraestructura hasta una race condition latente en el procesamiento del write-ahead log (WAL) de SQLite. El bug, que existía sin ser detectado durante más de 16 años, ocurre durante la fase de checkpoint cuando SQLite reinicia el archivo WAL.

La vulnerabilidad emerge cuando múltiples procesos acceden simultáneamente a una base de datos en modo WAL. Bajo condiciones de timing muy precisas durante operaciones de checkpoint, la race condition puede provocar pérdida de datos – una falla crítica en ambientes de producción. La ventana temporal estrecha para desencadenar el bug explica por qué permaneció latente tanto tiempo; requiere una secuencia específica de operaciones e interacciones entre procesos para manifestarse.

El descubrimiento de Tailscale es significativo porque el modo write-ahead log de SQLite está ampliamente desplegado en aplicaciones que buscan mejor concurrencia y recuperación ante fallos. La investigación ilustra cómo el debugging de incidentes en producción en sistemas a gran escala puede revelar vulnerabilidades en componentes de software fundamental utilizados por millones de desarrolladores. Corregir estos bugs requiere coordinación cuidadosa con los mantenedores de SQLite.