Re: speeding up planning with partitions

Поиск
Список
Период
Сортировка
От Robert Haas
Тема Re: speeding up planning with partitions
Дата
Msg-id CA+Tgmob3-6-GswdUX8nR72BmsDEz0_xHXcX5UrTSfG2_-s9zOg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: speeding up planning with partitions  (Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>)
Ответы Re: speeding up planning with partitions
Список pgsql-hackers
On Fri, Mar 8, 2019 at 4:18 AM Amit Langote
<Langote_Amit_f8@lab.ntt.co.jp> wrote:
> Maybe you know that range_table_mutator() spends quite a long time if
> there are many target children, but I realized there's no need for
> range_table_mutator() to copy/mutate child target RTEs.  First, there's
> nothing to translate in their case.  Second, copying them is not necessary
> too, because they're not modified across different planning cycles.  If we
> pass to adjust_appendrel_attrs only the RTEs in the original range table
> (that is, before any child target RTEs were added), then
> range_table_mutator() has to do significantly less work and allocates lot
> less memory than before.  I've broken this change into its own patch; see
> patch 0004.

Was just glancing over 0001:

- * every non-join RTE that is used in the query.  Therefore, this routine
- * is the only place that should call build_simple_rel with reloptkind
- * RELOPT_BASEREL.  (Note: build_simple_rel recurses internally to build
- * "other rel" RelOptInfos for the members of any appendrels we find here.)
+ * every non-join RTE that is specified in the query.  Therefore, this
+ * routine is the only place that should call build_simple_rel with
+ * reloptkind RELOPT_BASEREL.  (Note:  "other rel" RelOptInfos for the
+ * members of any appendrels we find here are built later when query_planner
+ * calls add_other_rels_to_query().)

Used -> specified doesn't seem to change the meaning, so I'm not sure
what the motivation is there.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Kyotaro HORIGUCHI
Дата:
Сообщение: Re: Proposal to suppress errors thrown by to_reg*()
Следующее
От: Amit Langote
Дата:
Сообщение: Re: speeding up planning with partitions