A key/value database for the Phoenix Golang Meetup's Build a Database Server challenge.
Heavily inspired by chapter 7 of Martin Kleppmann's Designing Data-Intensive Applications book.
cmd- TCP and HTTP frontends for the DBcommands- Implementations of execuatable and undoable actionsprotobuf- Protobuf implementations of store persistencestores- Stuff to do with storagetransactors- Implementation of a transaction orchestrator
This DB implmements serializable isolation with a 2-phase lock.
This DB has a protobuf binary log for disk persistence.
"Transactions: myths, surprises and opportunities" - Martin Kleppmann at Strange Loop