The Bucket Is the Log: Building an Append-Only Log on Object Storage in Go
How UnisonDB's object-store WAL replication became objlog: immutable segments, a bounded catalog, fencing, and replay by LSN or timestamp.
Staff Software Engineer at Walmart Global Tech, based in Bengaluru.
I work on distributed systems and platform infrastructure, mostly in Go. I write about databases, runtimes, performance, and the parts of software that are easy to use but difficult to understand.
Away from software, I make photographs and sometimes write poetry.
Things I build and maintain outside work.
How UnisonDB's object-store WAL replication became objlog: immutable segments, a bounded catalog, fencing, and replay by LSN or timestamp.
Learn how Go singleflight prevents cache stampedes, why caller cancellation gets tricky, and how to safely cancel and drain shared work during shutdown.
How an LSM tree gives us the right building blocks, and where object storage changes the design.
How hierarchical timing wheels expire millions of cache entries efficiently in Go without periodic O(n) scans or a timer per key.
I keep source code on GitHub, photographs on 500px, and poetry at Tangled Vibes.