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.
[1] https://github.com/HypoPG/hypopg/tree/REL1_STABLE
[2] https://github.com/HypoPG/hypopg/tree/master
--
Best regards,
Yuzuko Hosoya
NTT Open Source Software Center