Thread
Commits
-
Don't pass down nonnullable_vars while reducing outer joins.
- b0b72c64a0ce 16.0 landed
-
Do we need to pass down nonnullable_vars when reducing outer joins?
Richard Guo <guofenglinux@gmail.com> — 2022-09-13T07:00:16Z
AFAICS, the Vars forced nonnullable by given clause are only used to check if we can reduce JOIN_LEFT to JOIN_ANTI, and it is checking the join's own quals there. It seems to me we do not need to pass down nonnullable_vars by upper quals to the children of a join. Attached is a patch to remove the pass-down of nonnullable_vars. Thanks Richard
-
Re: Do we need to pass down nonnullable_vars when reducing outer joins?
Tom Lane <tgl@sss.pgh.pa.us> — 2022-11-05T20:00:47Z
Richard Guo <guofenglinux@gmail.com> writes: > AFAICS, the Vars forced nonnullable by given clause are only used to > check if we can reduce JOIN_LEFT to JOIN_ANTI, and it is checking the > join's own quals there. It seems to me we do not need to pass down > nonnullable_vars by upper quals to the children of a join. Hmm, you are right, we are not doing anything useful with that data. I can't remember if I had a concrete plan for doing something with it or not, but we sure aren't using it now. So pushed. regards, tom lane
-
Re: Do we need to pass down nonnullable_vars when reducing outer joins?
Richard Guo <guofenglinux@gmail.com> — 2022-11-07T02:54:32Z
On Sun, Nov 6, 2022 at 4:00 AM Tom Lane <tgl@sss.pgh.pa.us> wrote: > Richard Guo <guofenglinux@gmail.com> writes: > > AFAICS, the Vars forced nonnullable by given clause are only used to > > check if we can reduce JOIN_LEFT to JOIN_ANTI, and it is checking the > > join's own quals there. It seems to me we do not need to pass down > > nonnullable_vars by upper quals to the children of a join. > > Hmm, you are right, we are not doing anything useful with that data. > I can't remember if I had a concrete plan for doing something with it > or not, but we sure aren't using it now. So pushed. Thanks for pushing it! Thanks Richard