Обсуждение: Check what a transaction did in the past

Поиск
Список
Период
Сортировка

Check what a transaction did in the past

От
manugarciac
Дата:
I have an Idle in transaction that's really long. I suspect there is a
problem in my application, but I can't figure out where. If I new which
queries that transaction did in the past, it would really help me find the
problem. I know the transaction id, the process id, everything there is to
know, except the queries it did in the past. Is there any way to check this?
--
View this message in context: http://old.nabble.com/Check-what-a-transaction-did-in-the-past-tp27609195p27609195.html
Sent from the PostgreSQL - general mailing list archive at Nabble.com.


Re: Check what a transaction did in the past

От
Alvaro Herrera
Дата:
manugarciac wrote:
>
> I have an Idle in transaction that's really long. I suspect there is a
> problem in my application, but I can't figure out where. If I new which
> queries that transaction did in the past, it would really help me find the
> problem. I know the transaction id, the process id, everything there is to
> know, except the queries it did in the past. Is there any way to check this?

Turn on log_statements and check the log.

--
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

Re: Check what a transaction did in the past

От
Tom Lane
Дата:
Alvaro Herrera <alvherre@commandprompt.com> writes:
> manugarciac wrote:
>> I have an Idle in transaction that's really long. I suspect there is a
>> problem in my application, but I can't figure out where. If I new which
>> queries that transaction did in the past, it would really help me find the
>> problem. I know the transaction id, the process id, everything there is to
>> know, except the queries it did in the past. Is there any way to check this?

> Turn on log_statements and check the log.

Note that log_statements alone isn't much help.  You'll want to add at
least %p to log_line_prefix so that you can relate entries in the log
to currently active transactions.

            regards, tom lane