I am not fully convinced by the architecture/indirection that the CostEvaluation uses WhatIfIndexCreation uses DBConnector.
But this has maybe not a high priority.
Besides, I see the danger that CostEvaluation and WhatIfIndexCreation become inconsistent when calling reset()?
Calling all_simulated_indexes() should not be that expensive.
I am not fully convinced by the architecture/indirection that the CostEvaluation uses WhatIfIndexCreation uses DBConnector. But this has maybe not a high priority. Besides, I see the danger that CostEvaluation and WhatIfIndexCreation become inconsistent when calling reset()? Calling all_simulated_indexes() should not be that expensive.