Re: Proposal: %T Prompt parameter for psql for current time (like Oracle has) - Mailing list pgsql-hackers

From Kirk Wolak
Subject Re: Proposal: %T Prompt parameter for psql for current time (like Oracle has)
Date
Msg-id CACLU5mQL+Ct2+6GsQvHvKbW7dD3SH-D-uXK3fLKNDLuLzvnW=g@mail.gmail.com
Whole thread Raw
In response to Re: Proposal: %T Prompt parameter for psql for current time (like Oracle has)  (Kirk Wolak <wolakk@gmail.com>)
Responses Re: Proposal: %T Prompt parameter for psql for current time (like Oracle has)  (Jim Jones <jim.jones@uni-muenster.de>)
List pgsql-hackers
On Thu, Feb 23, 2023 at 2:05 PM Kirk Wolak <wolakk@gmail.com> wrote:
On Thu, Feb 23, 2023 at 9:52 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
Heikki Linnakangas <hlinnaka@iki.fi> writes:
> On 23/02/2023 13:20, Peter Eisentraut wrote:
>> If you don't have \timing turned on before the query starts, psql won't
>> record what the time was before the query, so you can't compute the run
>> time afterwards.  This kind of feature would only work if you always
>> take the start time, even if \timing is turned off.

> Correct. That seems acceptable though? gettimeofday() can be slow on
> some platforms, but I doubt it's *that* slow, that we couldn't call it
> two times per query.

Yeah, you'd need to capture both the start and stop times even if
\timing isn't on, in case you get asked later.  But the backend is
going to call gettimeofday at least once per query, likely more
depending on what features you use.  And there are inherently
multiple kernel calls involved in sending a query and receiving
a response.  I tend to agree with Heikki that this overhead would
be unnoticeable.  (Of course, some investigation proving that
wouldn't be unwarranted.)

                        regards, tom lane

Note, for this above feature, I was thinking we have a  ROW_COUNT variable I use \set to see.
The simplest way to add this is maybe a set variable:  EXEC_TIME
And it's set when ROW_COUNT gets set.
+1

==
Now, since this opened a lively discussion, I am officially submitting my first patch.
This includes the small change to prompt.c and the documentation.  I had help from Andrey Borodin,
and Pavel Stehule, who have supported me in how to propose, and use gitlab, etc.

We are programmers... It's literally our job to sharpen our tools.  And PSQL is one of my most used.
A small frustration, felt regularly was the motive.

Regards, Kirk
PS: If I am supposed to edit the subject to say there is a patch here, I did not know
PPS: I appreciate ANY and ALL feedback... This is how we learn!

Patch Posted with one edit, for line editings (Thanks Jim!)

 
Attachment

pgsql-hackers by date:

Previous
From: "Imseih (AWS), Sami"
Date:
Subject: Re: Doc update for pg_stat_statements normalization
Next
From: Jeff Davis
Date:
Subject: Re: Minimal logical decoding on standbys