A background thread that cleans segments with a poor utilisation is started automatically. This defragments the store.
When the store is created or opened, the cleaner threshold can be specified. This defaults to 85% meaning that all segments that are less than 85% utilised will be cleaned.
The cleaner is provided an ordered list of segments to clean after each check point.