Presented at preFOSDEM MySQL Belgian Days 2025 in Brussels, with Harshit Gangal.
For years, Vitess users got full ACID guarantees only inside a single shard. Anything wider was a best-effort multi-shard commit, and applications had to write their own roll-forward or rollback logic for when it failed partway. Atomic distributed transactions close that gap: a real two-phase commit across shards, built on plain MySQL.
Harshit opens with how Vitess’s transaction modes evolved and then goes deep into the implementation. I cover how we test it. We built a fuzzer that runs conflicting transactions across shards, injects failures, and then uses the resulting data as a checksum to catch any commit that wasn’t atomic or was applied out of order.