Re: Proposals for EXPLAIN: rename ANALYZE to EXECUTE and extend VERBOSE - Mailing list pgsql-hackers

From Nikolay Samokhvalov
Subject Re: Proposals for EXPLAIN: rename ANALYZE to EXECUTE and extend VERBOSE
Date
Msg-id CANNMO++d9CKuJEzSnRWFCHcmKr2DGASTtEMZ9bpEYHSa4QFQvA@mail.gmail.com
Whole thread Raw
In response to Re: Proposals for EXPLAIN: rename ANALYZE to EXECUTE and extend VERBOSE  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: Proposals for EXPLAIN: rename ANALYZE to EXECUTE and extend VERBOSE
Re: Proposals for EXPLAIN: rename ANALYZE to EXECUTE and extend VERBOSE
List pgsql-hackers
On Tue, Nov 5, 2024 at 10:19 AM Robert Haas <robertmhaas@gmail.com> wrote:
On Tue, Nov 5, 2024 at 1:02 PM Nikolay Samokhvalov
<samokhvalov@gmail.com> wrote:
> hi, I have a proposal, resulted from numerous communications with various folks, both very experienced and new Postgres users:
>
> 1) EXPLAIN ANALYZE Is sometimes very confusing (because there is ANALYZE). Let's rename it to EXPLAIN EXECUTE?

The trouble is that EXPLAIN EXECUTE already means something.

robert.haas=# explain execute foo;
ERROR:  prepared statement "foo" does not exist

Granted, that would not make it impossible to make EXPLAIN (EXECUTE) a
synonym for EXPLAIN (ANALYZE), but IMHO it would be pretty confusing
if EXPLAIN EXECUTE and EXPLAIN (EXECUTE) did different things.

> 2) VERBOSE doesn't include BUFFERS, and doesn't include SETTINGS; it might be also confusing sometimes. Let's include them so VERBOSE would be really verbose?

I agree that the naming here isn't great, but I think making the
options non-orthogonal would probably be worse.

> 3) small thing about grammar: allow omitting parentheses, so EXPLAIN EXECUTE VERBOSE would work.

Perhaps surprisingly, it turns out that this is not a small change. As
Tom mentions, this would have a pretty large blast radius. In fact,
the reason I wrote the patch to introduce parenthesized options for
EXPLAIN was precisely because the unparenthesized option syntax does
not scale nicely at all.

I appreciate all yours and Tom's very quick comments here!

Item 3 is already solved, as it turned out.

Let's focus on item 2. Is it really impossible to make VERBOSE really verbose?

pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Proposals for EXPLAIN: rename ANALYZE to EXECUTE and extend VERBOSE
Next
From: Tom Lane
Date:
Subject: Re: Proposals for EXPLAIN: rename ANALYZE to EXECUTE and extend VERBOSE