Some cleanup, reverted merge of rbyd_estimate/isdegenerate

Unfortunately due to different early-exit conditions,
estimate/isdegenerate isn't trivially compatible. The previous, merged
implementation missed the opportunity to inline btrees with two large
entries undergoing compaction.

It's unlikely to hit this, but splitting these back into two separate
passes simplifies the code and avoids the potential for other bugs from
this combination of unrelated pieces of logic.

Keep in mind lfsr_rbyd_isdegenerate is cheap:
1. Only ran when compacting the root of a btree.
2. Cutoff is usually small, at the moment requires at most 2 ids, or
   2*2 rbyd lookups with the current btree implementation.
This commit is contained in:
Christopher Haster
2023-05-09 12:50:55 -05:00
parent 975a98b099
commit a57e79bc68
+224 -824
View File
File diff suppressed because it is too large Load Diff