Database School

Rewriting SQLite from scratch (yes, really)

Want to learn more about SQLite?  
Check out my course on SQLite: https://highperformancesqlite.com/?ref=yt  

In this episode of Database School, I chat with Glauber Costa, CEO of Turso, about their audacious decision to rewrite SQLite from the ground up.  

We cover the technical motivations, open contribution philosophy, and how deterministic simulation testing is unlocking new levels of reliability.  

Get your free SQLite reference guide: https://highperformancesqlite.com/products/sqlite-reference-guide.  

Follow Glauber:  
Twitter: https://twitter.com/glcst  
Turso: https://tur.so/af  

Follow Aaron:  
Twitter: https://twitter.com/aarondfrancis  
LinkedIn: https://www.linkedin.com/in/aarondfrancis  
Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.  

Database school: https://databaseschool.com  

Chapters:  
00:00 - Intro to guest Glauber Costa  
00:58 - Glauber's background and path to databases  
02:23 - Moving to Texas and life changes  
05:32 - The origin story of Turso  
07:55 - Why fork SQLite in the first place?  
10:28 - SQLite’s closed contribution model  
12:00 - Launching libSQL as an open contribution fork  
13:43 - Building Turso Cloud for serverless SQLite  
14:57 - Limitations of forking SQLite  
17:00 - Deciding to rewrite SQLite from scratch  
19:08 - Branding mistakes and naming decisions  
22:29 - Differentiating Turso (the database) from Turso Cloud  
24:00 - Technical barriers that led to the rewrite  
28:00 - Why libSQL plateaued for deeper improvements  
30:14 - Big business partner request leads to deeper rethink  
31:23 - The rewrite begins  
33:36 - Early community traction and GitHub stars  
35:00 - Hiring contributors from the community  
36:58 - Reigniting the original vision  
39:40 - Turso’s core business thesis  
42:00 - Fully pivoting the company around the rewrite  
45:16 - How GitHub contributors signal business alignment  
47:10 - SQLite’s rock-solid rep and test suite challenges  
49:00 - The magic of deterministic simulation testing  
53:00 - How the simulator injects and replays IO failures  
56:00 - The role of property-based testing  
58:54 - Offering cash for bugs that break data integrity  
1:01:05 - Deterministic testing vs traditional testing  
1:03:44 - What it took to release Turso Alpha  
1:05:50 - Encouraging contributors with real incentives  
1:07:50 - How to get involved and contribute  
1:20:00 - Upcoming roadmap: indexes, CDC, schema changes  
1:23:40 - Final thoughts and where to find Turso