pg.ddx.io  pgsql-bugs@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Andrey Lepikhov <a.lepikhov@postgrespro.ru>
To: Richard Guo <guofenglinux@gmail.com>
Cc: PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Subject: Re: Clause accidentally pushed down ( Possible bug in Making Vars outer-join aware)
Date: Mon, 27 Feb 2023 11:23:57 +0500
Message-ID: <efb33bee-145d-95a8-1048-2e7b8f282e2c@postgrespro.ru> (raw)
In-Reply-To: <CAMbWs4_XcPHqc=A=36cxvJRhkjAgEeJtOFLOnBPEfQYGqnGOCw@mail.gmail.com>
References: <0b819232-4b50-f245-1c7d-c8c61bf41827@postgrespro.ru>
	<CAMbWs4_HJNuLv9HDReEBDrQrCPV-uqpVOecoJkurprnY+Do9Fg@mail.gmail.com>
	<CAMbWs4_8EZU4DetHyZGm1CwCxUhBdWpRnA9dtM-Z82i=bVKA6A@mail.gmail.com>
	<CAMbWs4_XcPHqc=A=36cxvJRhkjAgEeJtOFLOnBPEfQYGqnGOCw@mail.gmail.com>

On 23/2/2023 11:36, Richard Guo wrote:
> I've realized this hack is not correct :-(.  References to A Vars and B
> Vars in higher qual levels do not need this adjustment.  So this code
> change would add unnecessary relids for clauses that involve A Vars or B
> Vars but not C Vars, resulting them being placed at higher place than
> needed.
> 
> Maybe what we need is to add in commute_below_l (assuming it has been
> recorded in SpecialJoinInfo) rather than commute_below of outer joins
> mentioned within the clause?
Doing a comparison of pg15 and master initsplan.c I found that a clear 
and documented algorithm for delaying the application of a qual is lost 
or replaced with some commute_* fields.
It is not clear how we guarantee correct application delay of a qual. 
Which part of the code implements it now?

-- 
regards,
Andrey Lepikhov
Postgres Professional






view thread (46+ messages)  latest in thread

Message-ID: <efb33bee-145d-95a8-1048-2e7b8f282e2c@postgrespro.ru>
Permalink:  ../efb33bee-145d-95a8-1048-2e7b8f282e2c@postgrespro.ru/
Also on:    postgresql.org/message-id/efb33bee-145d-95a8-1048-2e7b8f282e2c@postgrespro.ru

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-bugs@postgresql.org
  Cc: a.lepikhov@postgrespro.ru, guofenglinux@gmail.com, pgsql-bugs@lists.postgresql.org
  Subject: Re: Clause accidentally pushed down ( Possible bug in Making Vars outer-join aware)
  In-Reply-To: <efb33bee-145d-95a8-1048-2e7b8f282e2c@postgrespro.ru>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox