Description
EP-engine has forestdb as storage option. Each shard in EP-engine maps to a file in ForestDB. With couchstore, each file mapped to a vbucket, so fragmentation levels of each vbucket was monitored and compaction was issued. In the case of forestdb, fragmentation levels of the shard needs to be monitored and compaction needs to be issued for that.
In addition, forestdb has 2 compactions modes:
- Append-only with full compaction (based on fragmentation %)
- Circular block reuse mode with periodic full compaction (not based on fragmentation %)
When we implement support for forestdb we'll need to decide which compaction mode we support and then adjust the compaction code accordingly. Note that the current plan is to support couchstore or forestdb – so we'll need to keep the old code around anyway.