We currently consult the indexwriter -> merge policy to decide if we need to write CFS or not which is bad in many ways.
- we should call mergepolicy only during merges
- we should never sync on IW during DWPT flush
- we should be able to make the decision if we need to write CFS or not before flush, ie. we could write parts of the flush directly to CFS or even start writing stored fields directly.
- in the NRT case it might make sense to write all flushes to CFS to minimize filedescriptors independent of the index size.
I wonder if we can use a simple boolean for this in the IWC and get away with not consulting merge policy. This would simplify concurrency a lot here already.