tursodatabase/turso

Page modification safety property in the simulator

Open

#4,240 opened on Dec 16, 2025

View on GitHub
 (1 comment) (0 reactions) (0 assignees)Rust (1,001 forks)github user discovery
enhancementhelp wantedsimulator

Repository metrics

Stars
 (19,103 stars)
PR merge metrics
 (PR metrics pending)

Description

We had some nasty bugs where page was marked dirty after they were modified:

https://github.com/tursodatabase/turso/pull/4231

https://github.com/tursodatabase/turso/pull/4232

Let's extend the simulator to detect these types of cases. For example, we can calculate a page content hash when we load the page from disk. We can then in add_dirty verify that the hash is unchanged; otherwise someone changed the page without first marking it as dirty. We can make the simulator use the hashes to verify things like rollback safety.

Contributor guide