From: | Mat Arye <mat(at)timescale(dot)com> |
---|---|
To: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Question about some changes in 11.3 |
Date: | 2019-05-28 15:52:51 |
Message-ID: | CADsUR0Dx=bXcmSxDWtzO8WG24JFGkTHzBb9HZmQt4x8uOZaXuw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Fri, May 24, 2019 at 5:05 PM Mat Arye <mat(at)timescale(dot)com> wrote:
> Hi,
>
> 11.3 included some change to partition table planning. Namely
> commit 925f46f ("Fix handling of targetlist SRFs when scan/join relation is
> known empty.") seems to redo all paths for partitioned tables
> in apply_scanjoin_target_to_paths. It clears the paths in:
>
> ```
> if (rel_is_partitioned)
> rel->pathlist = NIL
> ```
>
> Then the code rebuild the paths. However, the rebuilt append path never
> gets the
> set_rel_pathlist_hook called. Thus, the work that hook did previously gets
> thrown away and the rebuilt append path can never be influenced by this
> hook. Is this intended behavior? Am I missing something?
>
> Thanks,
> Mat
> TimescaleDB
>
I've attached a small patch to address this discrepancy for when the
set_rel_pathlist_hook is called so that's it is called for actual paths
used for partitioned rels. Please let me know if I am misunderstanding how
this should be handled.
Attachment | Content-Type | Size |
---|---|---|
call_set_rel_pathlist_hook_on_part_rels.patch | application/octet-stream | 2.5 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Andres Freund | 2019-05-28 15:58:23 | Re: PG 12 draft release notes |
Previous Message | Andres Freund | 2019-05-28 15:36:26 | Re: COPY FREEZE and setting PD_ALL_VISIBLE/visibility map bits |