FizzBee: Modeling Mutual Exclusion and the Pitfalls of Redlock
2025-03-22

This article details the author's experience using FizzBee, a new formal specification language built on Starlark, to model mutual exclusion algorithms and investigate issues with the Redlock algorithm. By modeling critical sections, locks, leases, and fencing tokens, the author reveals limitations in Redlock's fault tolerance, ultimately showing that fencing tokens don't completely solve mutual exclusion problems. The author concludes by discussing FizzBee's ease of use and shortcomings while highlighting the importance of formal specification in algorithm design. The practical exercise unexpectedly revealed subtle flaws in the author's understanding of fencing tokens, underscoring the value of formal methods.
Development
mutual exclusion