Get rid of duplicate child RTE for a partitioned table.
Tom Lane <tgl@sss.pgh.pa.us>
Get rid of duplicate child RTE for a partitioned table. We've been creating duplicate RTEs for partitioned tables just because we do so for regular inheritance parent tables. But unlike regular-inheritance parents which are themselves regular tables and thus need to be scanned, partitioned tables don't need the extra RTE. This makes the conditions for building a child RTE the same as those for building an AppendRelInfo, allowing minor simplification in expand_single_inheritance_child. Since the planner's actual processing is driven off the AppendRelInfo list, nothing much changes beyond that, we just have one fewer useless RTE entry. Amit Langote, reviewed and hacked a bit by me Discussion: https://postgr.es/m/9d7c5112-cb99-6a47-d3be-cf1ee6862a1d@lab.ntt.co.jp
Files
| Path | Change | +/− |
|---|---|---|
| contrib/postgres_fdw/expected/postgres_fdw.out | modified | +1 −1 |
| src/backend/optimizer/util/inherit.c | modified | +44 −42 |
Discussion
- speeding up planning with partitions 265 messages · 2018-08-29 → 2019-05-02