Re: pull-up subquery if JOIN-ON contains refs to upper-query
solaimurugan vellaipandiyan <drsolaimurugan.v@gmail.com>
From: solaimurugan vellaipandiyan <drsolaimurugan.v@gmail.com>
To: Petr Petrov <p.petrov@postgrespro.ru>
Cc: Alena Rybakina <a.rybakina@postgrespro.ru>, Ilia Evdokimov <ilya.evdokimov@tantorlabs.com>,
David Rowley <dgrowleyml@gmail.com>, Ranier Vilela <ranier.vf@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-05-11T05:20:20Z
Lists: pgsql-hackers
Hi Alena, I did some additional testing on the latest patch and the behavior looks good in my environment so far. I verified the original EXISTS pull-up case and confirmed that after applying the patch the planner generates optimized Semi Join plans instead of EXISTS(SubPlan). I also tested several additional cases discussed in the thread, including: 1.NOT EXISTS queries 2. constant qual conditions 3. ANY array conditions 4. LEFT JOIN cases 5. FULL JOIN cases For the FULL JOIN scenarios, I checked both the execution plans and actual query results. In one case the planner simplified the query into a Hash Join plan, but the final query results remained correct. I additionally ran: - make check - make -C contrib check Both completed successfully in my environment and I did not observe planner crashes or incorrect query results during testing. Overall, the patch seems to improve planner behavior consistently for these EXISTS pull-up scenarios. Regards, Solaimurugan V