Thread: determining which operation is blocking another query

determining which operation is blocking another query

From
"Sriram Dandapani"
Date:

Hi

 

Is there a system view that can be used to determine which INSERT/UPDATE/DELETE/Other Operation is blocking a SELECT statement.

 

Re: determining which operation is blocking another query

From
Michael Fuhr
Date:
On Wed, May 24, 2006 at 11:49:37PM -0700, Sriram Dandapani wrote:
> Is there a system view that can be used to determine which
> INSERT/UPDATE/DELETE/Other Operation is blocking a SELECT statement.

Query pg_locks to see what locks transactions have acquired or are
waiting to acquire.  If you have stats_command_string enabled then
querying pg_stat_activity should show sessions' current queries.

Are you sure SELECT is blocked, or could it just be taking a long
time?  MVCC allows SELECT to run concurrently with INSERT, UPDATE,
and DELETE without blocking; only a few operations like VACUUM FULL
block an ordinary SELECT (without FOR SHARE or FOR UPDATE).

--
Michael Fuhr