Re: Question about some changes in 11.3

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

In response to

Responses

Browse pgsql-hackers by date

  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