Обсуждение: Re: SQL to query running transactions with subtransactions that exceeds 64

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

Re: SQL to query running transactions with subtransactions that exceeds 64

От
Laurenz Albe
Дата:
On Wed, 2021-01-06 at 11:14 +0000, Li EF Zhang wrote:
> When I restart secondary node, it reported
>  "DEBUG:  recovery snapshot waiting for non-overflowed snapshot or until oldest active xid on standby is at least
4739126(now 1422751)
 
> CONTEXT:  WAL redo at 4/741941F8 for Standby/RUNNING_XACTS: nextXid 5137417 latestCompletedXid 5137409
oldestRunningXid1422751; 17 xacts: 2716862 2721890 4665244 2495592 2289138 5137416 2288820
 
> 2287653 1422751 4280517 2288510 2287620 3297674 1757103 5137219 3320989 2259670; subxid ovf"
> I want to find the oldest running transaction(1422751) using the following SQL.
>  But it showed that there was no transactions that running more than 5 minutes. 
> How can I find the oldest running transaction?
> 
> SELECT
>   pid,
>   now() - pg_stat_activity.query_start AS duration,
>   query,
>   state
> FROM pg_stat_activity
> WHERE (now() - pg_stat_activity.query_start) > interval '5 minutes';

Use xact_start rather than query_start.

Yours,
Laurenz Albe
-- 
Cybertec | https://www.cybertec-postgresql.com