# Functions
Compute the number of segments that would be needed to cover the totalSize, by climbing up a logarithmically growing staircase of segment tiers.
Plan() will functionally compute a merge plan.
Smaller result score is better.
ToBarChart returns an ASCII rendering of the segments and the plan.
ValidateMergePlannerOptions validates the merge planner options.
# Constants
MaxSegmentSizeLimit represents the maximum size of a segment, this limit comes with hit-1 optimisation/max encoding limit uint31.
# Variables
DefaultMergePlanOptions suggests the default options.
ErrMaxSegmentSizeTooLarge is returned when the size of the segment exceeds the MaxSegmentSizeLimit.
SingleSegmentMergePlanOptions helps in creating a single segment index.
# Structs
A MergePlan is the result of the Plan() API.
The MergePlanOptions is designed to be reusable between planning calls.
A MergeTask represents several segments that should be merged together into a single segment.
# Interfaces
A Segment represents the information that the planner needs to calculate segment merging.