The Flint Value Table
This page describes the format of the Value table in the FlintBackend.
This takes one extra byte compared to Quartz, but means that when appending documents to a database, the insert is always in the same place (at the "end" of the table). This is faster, and produces a more compact database without a separate compaction step.
The plan for chert or later is to subclass the compare routine so we can store the key as compactly as Quartz did but keep the improved sort order.
Zero or more of (in ascending slot order):
pack_uint(slot) + pack_string(value)