Andres Freund <and...@anarazel.de> writes: > I'm not too worried about that scenario. If, for a cheap plan, the > planner ends up with a seqscan despite it being disabled, you're pretty > close to randomly choosing plans already, as the pruning doesn't work > well anymore (as the %1 percent fuzz factor in > compare_path_costs_fuzzily() swamps the actual plan costs).
Something I've wanted to do for awhile is to get rid of disable_cost in favor of pruning disabled plans through logic rather than costing. I've looked at this once or twice, and it seems doable but not entirely trivial --- the sticky bits are places where you do need to allow a disabled plan type because there's no other alternative. But if we could get that done, it'd help with this sort of problem. regards, tom lane