Inverted mk-bit logic, renamed to grow-bit

This only affects the in-device tags, not the on-disk tags.

The mk variant of tags was seeing much more use than the grow variant,
since the grow variant is really only used by the btree internals. But
since the default encoding of tags cleared the mk-bit, this led to a
bunch of extra lfsr_tag_setmk calls just to reserialize things correctly
during compact, split, etc.

Flipping the logic so the bit needs to be set to grow tags simplified
things quite a bit.

Note that mk tags do nothing when their delta is zero, so zero-delta
tags are the same in both mk/grow mode.
This commit is contained in:
Christopher Haster
2023-06-18 01:32:43 -05:00
parent 7180b70c9c
commit f2c36efdb3
3 changed files with 406 additions and 410 deletions
+243 -239
View File
File diff suppressed because it is too large Load Diff