Re: Feedback on table expansion hook (including patch)

Julien Rouhaud <rjuju123@gmail.com>

From: Julien Rouhaud <rjuju123@gmail.com>
To: yuzuko <yuzukohosoya@gmail.com>
Cc: Erik Nordström <erik@timescale.com>, David Fetter <david@fetter.org>, Tom Lane <tgl@sss.pgh.pa.us>, Peter Eisentraut <peter.eisentraut@enterprisedb.com>, pgsql-hackers@postgresql.org
Date: 2021-05-12T08:01:04Z
Lists: pgsql-hackers
On Wed, May 12, 2021 at 04:48:29PM +0900, yuzuko wrote:
> Hello,
> 
> > Thank you all for the feedback and insights.
> >
> > Yes, the intention is to *replace* expand_inherited_rtentry() in the same way planner_hook replaces standard_planner().
> >
> 
> This patch is really useful.  We are working on developing hypothetical
> partitioning as a feature of HypoPG[1][2], but we hit the same problem
> as TimescaleDB.  Therefore we would also be thrilled to have that hook.
> 
> Hypothetical partitioning allows users to define multiple partitioning
> schemes on real tables and real data hypothetically, and shows resulting
> queries' plan/cost with EXPLAIN using hypothetical partitioning schemes.
> Users can quickly check how their queries would behave if some tables
> were partitioned, and try different partitioning schemes.  HypoPG does
> table expansion again according to the defined hypothetical partitioning
> schemes.  For this purpose, we used get_relation_info hook, but in PG12,
> table expansion was moved, so we cannot do that using
> get_relation_info hook.  This is exactly the same problem Erik has.
> Therefore the proposed hook would allow us to support hypothetical partitioning.

Sorry for missing that thread until now.  And yes as Hosoya-san just mentioned,
we faced the exact same problem when implementing hypothetical partitioning,
and eventually had to stop as the changes in pg12 prevented it.  So +1 for
introducing such a hook, it would also be useful for that usecase.



Commits

  1. doc: PG 13 relnotes, update TOAST item to mention decompression