David Rowley <dgrowleyml@gmail.com> writes: > I see this is quite a fundamental change to how things currently work and > it could cause planning to take place during the execution of PREPAREd > statements, which might not impress people too much, but it would certainly > fix the weird anomalies that I'm currently facing by trimming the plan at > executor startup. e.g left over Sort nodes after a MergeJoin was removed.
> It would be interesting to hear Tom's opinion on this.
Another question is what effect this has on EXPLAIN; there's basically no way you can avoid lying to the user about what's going to happen at runtime.
One of us must be missing something here. As far as I see it, there are no lies told, the EXPLAIN shows exactly the plan that will be executed. All of the regression tests I've added rely on this.