Thread: Exclusive Locks Taken on User Tables?

Exclusive Locks Taken on User Tables?

From
"Marc Breslow"
Date:
Hi,

I'm seeing an "EXCLUSIVE" lock being taken on a table even though the documentation says that "This lock mode is not automatically acquired on user tables by any PostgreSQL command."

My SQL is
UPDATE users SET online = $1 where username = $2

username is the PK on the users table.

Other locks taken by the transaction are 1 RowExclusiveLock for the users table and 1 RowExclusiveLock on each of the 6 explict indexes on that table and another for the implicity users_pkey index.

The result of these locks is that concurrent calls for the same statement are being serialized because the ExclusiveLock being requested is not being granted.

Any thoughts on why this might be happening and what I could do to resolve it?

Thanks,
---Marc