On Sun, 26 Jul 2020 at 02:54, Tom Lane <tgl@xxxxxxxxxxxxx> wrote: > > David Rowley <dgrowleyml@xxxxxxxxx> writes: > > ... nested at the bottom level join, about 6 joins deep. The lack of > > any row being found results in upper level joins not having to do > > anything, and the majority of the plan is (never executed). > > On re-reading this, that last point struck me forcibly. If most of > the plan never gets executed, could we avoid compiling it? That is, > maybe JIT isn't JIT enough, and we should make compilation happen > at first use of an expression not during executor startup. That's interesting. But it would introduce an additional per evaluation cost of checking if we're doing the first execution. David