When an Aeon segment has lots of deletions (nil records) we often have to scan for the next non-nil record, which can be expensive. We should purge deleted records during housekeeping. Some ideas:
- We should add a flag in the segment header to indicate whether the segment has any deletion stubs.
- If we're merging two segments and there are no segments with older sequence numbers, then we should omit deletion stubs.
- If we cannot merge due to size or because we're the only segment, and if there are no segments with older sequence numbers, then we should create a new segment without deletion stubs.
- If we cannot merge due to size, then we should migrate deletion stubs to the segment with the lowest sequence number.
Resolve
Archive
Reopen
Create
Edit
Save
Attach File
Cancel Edit