Обсуждение: PREPARE and GUC plan_cache_mode

Поиск
Список
Период
Сортировка

PREPARE and GUC plan_cache_mode

От
Bruce Momjian
Дата:
Our current docs have this text for PREPARE:

       Prepared statements can use generic plans rather than re-planning
       with each set of supplied EXECUTE values. This occurs immediately
       for prepared statements with no parameters; otherwise it occurs
       only after five or more executions produce plans whose estimated
       cost average (including planning overhead) is more expensive than
       the generic plan cost estimate. Once a generic plan is chosen, it
       is used for the remaining lifetime of the prepared statement. Using
       EXECUTE values which are rare in columns with many duplicates can
       generate custom plans that are so much cheaper than the generic
       plan, even after adding planning overhead, that the generic plan
       might never be used.

There is no mention that PG 12's plan_cache_mode can modify this
behavior.  I think this needs a doc patch.

-- 
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

+ As you are, so once was I.  As I am, so you will be. +
+                      Ancient Roman grave inscription +



Re: PREPARE and GUC plan_cache_mode

От
Tom Lane
Дата:
Bruce Momjian <bruce@momjian.us> writes:
> Our current docs have this text for PREPARE:
>        Prepared statements can use generic plans rather than re-planning
>        with each set of supplied EXECUTE values. This occurs immediately
>        for prepared statements with no parameters; otherwise it occurs
>        only after five or more executions produce plans whose estimated
>        cost average (including planning overhead) is more expensive than
>        the generic plan cost estimate. Once a generic plan is chosen, it
>        is used for the remaining lifetime of the prepared statement. Using
>        EXECUTE values which are rare in columns with many duplicates can
>        generate custom plans that are so much cheaper than the generic
>        plan, even after adding planning overhead, that the generic plan
>        might never be used.

> There is no mention that PG 12's plan_cache_mode can modify this
> behavior.  I think this needs a doc patch.

Yeah, agreed.  I can do it, or do you want to?

            regards, tom lane



Re: PREPARE and GUC plan_cache_mode

От
Bruce Momjian
Дата:
On Mon, Sep 30, 2019 at 12:05:07PM -0400, Tom Lane wrote:
> Bruce Momjian <bruce@momjian.us> writes:
> > Our current docs have this text for PREPARE:
> >        Prepared statements can use generic plans rather than re-planning
> >        with each set of supplied EXECUTE values. This occurs immediately
> >        for prepared statements with no parameters; otherwise it occurs
> >        only after five or more executions produce plans whose estimated
> >        cost average (including planning overhead) is more expensive than
> >        the generic plan cost estimate. Once a generic plan is chosen, it
> >        is used for the remaining lifetime of the prepared statement. Using
> >        EXECUTE values which are rare in columns with many duplicates can
> >        generate custom plans that are so much cheaper than the generic
> >        plan, even after adding planning overhead, that the generic plan
> >        might never be used.
> 
> > There is no mention that PG 12's plan_cache_mode can modify this
> > behavior.  I think this needs a doc patch.
> 
> Yeah, agreed.  I can do it, or do you want to?

Uh, I am feeling I can't do anything with the tree until Friday because
of the PG 12 packaging, right?

-- 
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

+ As you are, so once was I.  As I am, so you will be. +
+                      Ancient Roman grave inscription +



Re: PREPARE and GUC plan_cache_mode

От
Tom Lane
Дата:
Bruce Momjian <bruce@momjian.us> writes:
> On Mon, Sep 30, 2019 at 12:05:07PM -0400, Tom Lane wrote:
>> Yeah, agreed.  I can do it, or do you want to?

> Uh, I am feeling I can't do anything with the tree until Friday because
> of the PG 12 packaging, right?

There's not a freeze on docs, as far as I'm concerned.  I'm working
on it right now.

            regards, tom lane