Re: Check what has been done for a uncommitted prepared transaction - Mailing list pgsql-general

From Andy Fan
Subject Re: Check what has been done for a uncommitted prepared transaction
Date
Msg-id CAKU4AWoH7AJS=tknH6DL3fOS_BT-O0ZT60aOTUrY4M9je8p85g@mail.gmail.com
Whole thread Raw
In response to Re: Check what has been done for a uncommitted prepared transaction  (Laurenz Albe <laurenz.albe@cybertec.at>)
Responses Re: Check what has been done for a uncommitted prepared transaction
List pgsql-general


On Thu, May 14, 2020 at 9:33 PM Laurenz Albe <laurenz.albe@cybertec.at> wrote:
On Thu, 2020-05-14 at 16:26 +0800, Andy Fan wrote:
> Thanks,  actually I don't know how to use prepared transaction and how it works.
> I care about this because there is a long prepared transaction exists in our customer,
> and we want to know what this transaction has done(like any data it changed).
> All the things I know is the data comes from pg_prepared_xact, but it doesn't help a lot.

Idf you have the transaction ID from "pg_prepared_xact", you could check
what locks are held:

SELECT * FROM pg_locks WHERE transactionid = ...;

Than might give you a clue.

Thanks a lot.   this transaction only lock a transactionid lock,   so I assume there is nothing
is done in this transaction. 


  locktype    | database | relation | page | tuple | virtualxid | transactionid | classid | objid | objsubid | virtualtransaction | pid  |     mode      | granted | fastpath
---------------+----------+----------+------+-------+------------+---------------+---------+-------+----------+--------------------+------+---------------+---------+----------
 transactionid |          |          |      |       |            |    1181845808 |         |       |          | -1/1181845808      |      | ExclusiveLock | t       | f
(1 row)

Best Regards
Andy Fan

pgsql-general by date:

Previous
From: Michael Lewis
Date:
Subject: Re: vacuumdb --jobs deadlock: how to avoid pg_catalog ?
Next
From: Vamsi Meduri
Date:
Subject: view selection during query rewrite