85bd28951c
This "mk" bit must not be written to disk, it would conflict with the other non-tree tag encodings. But we can use this bit in the context of lfsr_tag_append to disambiguate tags changing weight from inserting new tags. Note that in the context of rbyd compactions, this will make things a bit weird, since it's no longer just a direct one-to-one copy of each tag. To make compactions a bit easier, this implementation allows the "mk" bit to be set on any tag and ignores it when the weight delta is zero. It turns out that this scheme greatly simplifies the awkward leaf-split-alt calculation that previously had several if statements to handle different corner cases, with the caveat that "mk" tags need their ids adjusted by +1. Added this adjustment directly into lfsr_rbyd_append for now, so the upper-level interface can be a bit more intuitive. Though this may need to change later if it is more confusing than helpful.