Why would you care? Seems like forcing that to not happen is actively making it stupider.
To better compare the algorithms and possibly not for final solution at the beginning. If we would implement 10 algorithms and want to pickup just 3 best ones to be used and throw 7 away.
Later on, we can try to run just the one "very fast" algorithm and depending on the cost decide whether we would run remaining 9 or less or even none. Yes, the example in dummy.c is really stupider, but it could be done in more clever way.
Well, I can see one likely problem: list_copy is a shallow copy and thus doesn't ensure that the second set of functions sees the same input data structures as the first. I know that geqo has to go through some special pushups to perform multiple invocations of the base planner, and I suspect you need that here too. Look at geqo_eval().
I'll explore that. Thanks Regards Julius Stroffek ---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster