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