Commit 17511fe
Implement complete CompressedLeafNode functionality with proper next field linking
- Add remove() method with underfull detection matching LeafNode behavior
- Implement iterator support with CompressedLeafIter for sorted traversal
- Add proper next field linking during splits:
- Right node inherits original next pointer
- Left node gets NULL_NODE for caller to update
- Preserves linked list integrity during node splits
- Add comprehensive next field accessor methods (next(), set_next())
- Update to_leaf_node() to preserve next field when converting
- Add extensive test coverage:
- Remove operations: single/multiple items, edge cases, underfull detection
- Iterator functionality: empty, single, multiple items, boundary values
- Next field linking: basic ops, split preservation, conversion integrity
- All 37 CompressedLeafNode tests pass, maintaining API consistency with LeafNode
- Ensures proper B+ tree linked list maintenance during splits and merges
Co-authored-by: Ona <no-reply@ona.com>1 parent b638a93 commit 17511fe
1 file changed
+550
-9
lines changed
0 commit comments