On Fri, 2024-03-22 at 12:43 +0530, arun chirappurath wrote: > I am running below query on a database. why is it creating a exclusive lock > on a virtualxid? > I am running some SELECT queries and its creating an ExclusiveLock in > virtualxid? is this normal? > > SELECT datname, pid, state, query, age(clock_timestamp(), query_start) AS age > FROM pg_stat_activity > WHERE state <> 'idle' > --AND query NOT LIKE '% FROM pg_stat_activity %' > ORDER BY age; > > |locktype > |database|relation|page|tuple|virtualxid|transactionid|classid|objid|objsubid|virtualtransaction|pid > |mode |granted|fastpath|waitstart| > |----------|--------|--------|----|-----|----------|-------------|-------|-----|--------|------------------|------|---------------|-------|--------|---------| > |relation |58,007 |12,073 | | | | | | > | |5/165 |21,912|AccessShareLock|true |true | > | > |virtualxid| | | | |5/165 | | | > | |5/165 |21,912|ExclusiveLock |true |true | > |
That's normal. Every transaction has an exclusive lock on its own transaction ID. Yours, Laurenz Albe