From: | "Jonathan S(dot) Katz" <jkatz(at)postgresql(dot)org> |
---|---|
To: | Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com> |
Cc: | Vik Fearing <vik(dot)fearing(at)2ndquadrant(dot)com>, depesz(at)depesz(dot)com, pgsql-hackers mailing list <pgsql-hackers(at)postgresql(dot)org>, Michael Paquier <michael(at)paquier(dot)xyz> |
Subject: | Re: xact_start meaning when dealing with procedures? |
Date: | 2018-08-15 22:23:40 |
Message-ID: | ECAFB052-8601-4BCA-B028-F12B69B67090@postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> On Aug 10, 2018, at 4:39 AM, Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com> wrote:
>
> On 09/08/2018 20:25, Vik Fearing wrote:
>> On 09/08/18 20:13, Peter Eisentraut wrote:
>>> On 09/08/2018 19:57, hubert depesz lubaczewski wrote:
>>>> I just noticed that when I called a procedure that commits and rollbacks
>>>> - the xact_start in pg_stat_activity is not updated. Is it intentional?
>>>
>>> It's an artifact of the way this is computed. The reported transaction
>>> timestamp is the timestamp of the first top-level statement of the
>>> transaction. This assumes that transactions contain statements, not the
>>> other way around, like it is now possible. I'm not sure what an
>>> appropriate improvement would be here.
>>
>> That would just mean that query_start would be older than xact_start,
>> but that's okay because the displayed query would be a CALL so we'll
>> know what's going on.
>
> Note that this issue already exists for other commands that start
> transactions internally, such as VACUUM and CREATE INDEX CONCURRENTLY.
> At the moment, one should interpret xact_start as referring to the
> top-level transaction only.
>
> In practice, I think the value of xact_start versus query_start is to
> anayze idle transactions. This doesn't happen with internal
> transactions, so it's not a big deal in practice.
This was added as an open item by Michael[1]. When the RMT discussed,
we were able to make arguments both ways (i.e. adjusting the behavior vs.
not).
Peter, from your analysis it sounds like we should leave it, but I wanted to
confirm before removing the open item.
Thanks,
Jonathan
[1] https://www.postgresql.org/message-id/20180810164653.GN13638%40paquier.xyz <https://www.postgresql.org/message-id/20180810164653.GN13638@paquier.xyz>
From | Date | Subject | |
---|---|---|---|
Next Message | Andres Freund | 2018-08-15 22:24:01 | Re: C99 compliance for src/port/snprintf.c |
Previous Message | Tom Lane | 2018-08-15 22:18:21 | Re: C99 compliance for src/port/snprintf.c |