From: | Richard Guo <guofenglinux(at)gmail(dot)com> |
---|---|
To: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Retiring is_pushed_down |
Date: | 2023-07-27 02:55:07 |
Message-ID: | CAMbWs4-BGokURcVNDmEpQ8OG9Ur_2MP_+FVWRWb9OsC_DvX=4g@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Jul 25, 2023 at 3:39 PM Richard Guo <guofenglinux(at)gmail(dot)com> wrote:
> * This patch calculates the outer join relids that are being formed
> generally in this way:
>
> bms_difference(joinrelids, bms_union(outerrelids, innerrelids))
>
> Of course this can only be used after the outer join relids has been
> added by add_outer_joins_to_relids(). This calculation is performed
> multiple times during planning. I'm not sure if this has performance
> issues. Maybe we can calculate it only once and store the result in
> some place (such as in JoinPath)?
>
In the v2 patch, I added a member in JoinPath to store the relid set of
any outer joins that will be calculated at this join, and this would
avoid repeating this calculation when creating nestloop/merge/hash join
plan nodes. Also fixed a comment in v2.
Thanks
Richard
Attachment | Content-Type | Size |
---|---|---|
v2-0001-Retiring-is_pushed_down.patch | application/octet-stream | 40.4 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Geoghegan | 2023-07-27 04:13:47 | Re: Optimizing nbtree ScalarArrayOp execution, allowing multi-column ordered scans, skip scan |
Previous Message | David Rowley | 2023-07-27 02:51:20 | Re: Performance degradation on concurrent COPY into a single relation in PG16. |