Until the final fix for
OAK-8832 will be out and even after that, I think we must offer the possibility to do offline compaction in two modes:
- current optimized solution which compacts checkpoints on top of the other, chronologically and after that the root state on top of those
- previous un-optimized solution which blindly compacts everything, making use of the deduplication caches to control checkpoints "explosion"
I propose to add an optional argument to compact, --compactor with three values: auto, diff and classic. When not set, it will just go with whatever we choose as auto - for now "classic". If set, it will use the mode provided.