SQLite prefixes its temp files with `etilqs_`
Here’s some wild lore inside SQLite’s source code explaining why temp files start with etilqs_
Recent content on blag
Here’s some wild lore inside SQLite’s source code explaining why temp files start with etilqs_
A brief introduction to Setsum - order agnostic, additive, subtractive checksum
The oldest recorded transaction was in 3100 BC
Why do we use caches at all? Can databases fully replace them?
SQLite doesn’t do fsync unless specified.
SQLite WAL has checksums, but on corruption it drops all the data and does not raise error
This is a beginner’s guide to hacking into Turso DB (formerly known as Limbo), the SQLite rewrite in Rust. I will explore how to get familiar with Turso’s codebase, tooling and tests
Some of the interesting and insane facts I learned about SQLite
This is the fascinating story of how researchers used Bloom filters cleverly to make SQLite 10x faster for analytical queries. These are my five-minute notes on the paper SQLite: Past, Present, and Future
Researchers at the University of Helsinki and Cambridge attempted to build a faster SQLite using modern programming paradigms like io_uring and disaggregated storage. They demonstrate up to a 100x reduction in tail latency. These are my notes.
I recently learned about Galloping Search while building a distributed log called s3-log. It’s used to search sorted items when the upper bound is unknown. In this short post, I will share my notes and other alternatives I discovered for searching over unbounded items
In this third part of the series, I will show how we can implement a durable, distributed, and highly available log using S3
State is pain. The next generation of infrastructure tools will be built on diskless paradigm. In this short post I will explain what is Diskless / Zero Disk Architecture
Most databases don’t do checksums by default. Disk corruptions go silently unnoticed.
SQLite does not do checksums by default. Disk corruptions go silently unnoticed.
a brief introduction to disaggregated storage systems in context of database systems
My answer to a question online, why?
why SQLite is cracked
This is a /now page. Work I work at Turso Database . Learning Rust and C .
Some resources for learning C
A smoll intro to snapshot testing
I got my patches accepted into SQLite fork, libSQL codebase!
Hekaton MVCC Paper contains a publication error. After reviewing the paper, I confirmed the error with one of the authors. This blog post explains the mistake, the implications and the fix.
This is a short story about how I hit a wall while implementing a database research paper, found a publication error and how people on the internet helped me.
It’s harder to refactor a large Python codebase. Type hints won’t save you, and you need a lot of unit tests. But how does that work in practice? Is Python fast to ship?
This short post will show how to add a secondary only index in a MongoDB replica set
CaskDB is an educational project which aims to guide you in writing a persistent, embeddable database from scratch.
the Recurse Center winter break
I forked and modified Go compiler to add a new keyword called let , as alias for var
I worked on upgrading a Django project from v1 to v4
Disk Storage II
Disk Storage I
merged few open pull requests on my projects
I translated B Tree Algorithms from CLRS to Python
I learned how using MongoDB was fatal for a startup
I started re-reading Raft and I learned why it is called so!
Anomalies which define transaction isolation levels
I started writing code for B Tree insertions
How does one start learning to build distributed systems?
I learnt a few things about Dynamo
I found out the answer to B tree fill factor
I learnt some basics of ncurses
B Tree Root: how would you design it?
Reflections on the first week of the Recurse Center
Learning the basics of GC, mark-sweep algorithm
Q: How do I have a same B Tree fill factor across all nodes?
TIL Hammock Driven Development
This is a draft post that I have prematurely published. Currently, I am attending RC and I want to write as much as possible, log my daily learnings and activities. But, I also don't want to spend time on grammar and prose, so I am publishing all the posts which usually I'd have kept in my draft folder. B Tree I started working on the B Tree project, created a Github repo, put up skeleton code.…
This is a draft post that I have prematurely published. Currently, I am attending RC and I want to write as much as possible, log my daily learnings and activities. But, I also don't want to spend time on grammar and prose, so I am publishing all the posts which usually I'd have kept in my draft folder. My RC first day was filled with welcome events and fun activities. It was nice to meet all the…