public inbox for [email protected]  
help / color / mirror / Atom feed
From: Robert Haas <[email protected]>
To: Nikolay Samokhvalov <[email protected]>
Cc: [email protected]
Subject: Re: Proposals for EXPLAIN: rename ANALYZE to EXECUTE and extend VERBOSE
Date: Tue, 5 Nov 2024 13:19:36 -0500
Message-ID: <CA+TgmoZF7PbO7DB_VMQS4664EgOdObhFtAoLUb83bp3i-623UQ@mail.gmail.com> (raw)
In-Reply-To: <CANNMO++9W_UA8PB9AkDRF3JBv4K7K1FnisrXTjicL+WZhwUJzw@mail.gmail.com>
References: <CANNMO++9W_UA8PB9AkDRF3JBv4K7K1FnisrXTjicL+WZhwUJzw@mail.gmail.com>

On Tue, Nov 5, 2024 at 1:02 PM Nikolay Samokhvalov
<[email protected]> 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.

-- 
Robert Haas
EDB: http://www.enterprisedb.com






view thread (20+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected]
  Subject: Re: Proposals for EXPLAIN: rename ANALYZE to EXECUTE and extend VERBOSE
  In-Reply-To: <CA+TgmoZF7PbO7DB_VMQS4664EgOdObhFtAoLUb83bp3i-623UQ@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox