Re: Should we add GUCs to allow partition pruning to be disabled?

From: Amit Langote <amitlangote09(at)gmail(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Amit Langote <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp>, David Rowley <david(dot)rowley(at)2ndquadrant(dot)com>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Justin Pryzby <pryzby(at)telsasoft(dot)com>, Ashutosh Bapat <ashutosh(dot)bapat(at)enterprisedb(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Should we add GUCs to allow partition pruning to be disabled?
Date: 2018-05-19 04:22:20
Message-ID: CA+HiwqG5Bf2NeDVsz3Lf=uLZw-7GZjz5WFmnnPfDRr-_mc9oGw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sat, May 19, 2018 at 5:02 AM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Fri, May 18, 2018 at 4:22 AM, Amit Langote
> <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp> wrote:
>> Yeah, I think it'd help to have Append be annotated as suggested by Robert
>> above. I guess if "at executor startup" is shown, then the subnodes
>> listed under Append will consist of only those that survived
>> executor-startup pruning and thus will help understand why there are fewer
>> than shown with EXPLAIN (without ANALYZE). Also, if "at runtime" is
>> shown, a user may want look at nloops property of the individual subnodes
>> to guess at how much pruning has occurred; although only the latter (that
>> is, inspecting nloops) suffices to know that runtime pruning has occurred
>> as also currently written in the documentation about pruning [1], the
>> first piece of information (the "at runtime" annotation) seems nice to have.
>
> Having EXPLAIN and EXPLAIN ANALYZE show different things doesn't sound
> like a good idea.

Hmm yeah. I think I was misunderstanding how executor-startup pruning
works when I wrote:

...and thus will help understand why there are fewer
than shown with EXPLAIN (without ANALYZE).

Actually, because ExecInitAppend would run for both EXPLAIN and
EXPLAIN ANALYZE, executor-startup pruning should occur in both cases
and will result in the same plan shape to be shown. Sorry about the
confusion.

Thanks,
Amit

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Thomas Munro 2018-05-19 04:51:40 Re: Postgres, fsync, and OSs (specifically linux)
Previous Message Andrew Dunstan 2018-05-19 02:58:21 Re: perl checking