Comment

Comment by eatonphil

Just as one tiny counterpoint, the company I work for [0] builds a database written in Zig, not C. We implemented our own consensus using Viewstamped Replication [1], not Raft. And we built our own storage engine on LSM trees rather than use RocksDB [2].

A lot of this we built ourselves so we can do FoundationDB-style deterministic testing [3] of the entire system which would not be possible with off-the-shelf libraries because they are not deterministic.

Another goal was to not allocate memory after startup. A goal that most third party libraries would disrupt.

Sometimes the boring options do not further the technical goals of your project. :)

[0] https://github.com/tigerbeetledb/tigerbeetle

[1] https://pmg.csail.mit.edu/vr/liskov12vr-abstract.html

[2] http://rocksdb.org/

[3] https://apple.github.io/foundationdb/testing.html

parent eatonphil 4 years ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton