rqlite is a lightweight, open-source, distributed relational database written in Go, which uses SQLite as its storage engine.
Concurrency and synchronization are at the heart of any database — and distributed systems too. Today, I’d like to share the set of synchronization primitives and race-free data structures I’ve developed for rqlite, and explain how I use them to program key aspects of the database. They might even be useful to others confronted with similar requirements.
Continue reading “Concurrency Control in Go: Inside rqlite’s Custom Synchronization Primitives”















Getting ready to speak at a technical conference can be as nerve-wracking as it is exciting, especially if it’s your first time.