Re: transction_timestamp() inside of procedures - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: transction_timestamp() inside of procedures
Date
Msg-id e2ad8aaf-e1d8-499e-4de0-e3616f8d908d@2ndquadrant.com
Whole thread Raw
In response to Re: transction_timestamp() inside of procedures  (Peter Eisentraut <peter.eisentraut@2ndquadrant.com>)
Responses Re: transction_timestamp() inside of procedures
Re: transction_timestamp() inside of procedures
List pgsql-hackers
On 26/09/2018 23:48, Peter Eisentraut wrote:
> On 26/09/2018 17:54, Alvaro Herrera wrote:
>> What could be the use for the transaction timestamp?  I think one of the
>> most important uses (at least in pg_stat_activity) is to verify that
>> transactions are not taking excessively long time to complete; that's
>> known to cause all sorts of trouble in Postgres, and probably other
>> DBMSs too.  If we don't accurately measure what it really is, and
>> instead keep the compatibility behavior, we risk panicking people
>> because they think some transaction has been running for a long time
>> when in reality it's just a very long procedure which commits frequently
>> enough not to be a problem.
> 
> That's certainly a good argument.  Note that if we implemented that the
> transaction timestamp is advanced inside procedures, that would also
> mean that the transaction timestamp as observed in pg_stat_activity
> would move during VACUUM, for example.  That might or might not be
> desirable.

Attached is a rough implementation.

I'd be mildly in favor of doing this, but we have mentioned tradeoffs in
this thread.

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Attachment

pgsql-hackers by date:

Previous
From: Haribabu Kommi
Date:
Subject: Re: Libpq support to connect to standby server as priority
Next
From: Amit Langote
Date:
Subject: Re: executor relation handling