Re: released savepoint blocking further statements

From: Jeff Janes <jeff(dot)janes(at)gmail(dot)com>
To: Miklós Fazekas <mfazekas(at)szemafor(dot)com>
Cc: Pg Bugs <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: released savepoint blocking further statements
Date: 2016-04-08 18:00:04
Message-ID: CAMkU=1xA+9izwMjVzFVs9modUY5PmoJQdUEpL89DTbayyRAcAw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Thu, Apr 7, 2016 at 1:26 AM, Miklós Fazekas <mfazekas(at)szemafor(dot)com> wrote:

> [2.] I've tried to use the query Lock Monitoring wiki from to find out what
> is blocking:
>
> it shows that 79469 | RELEASE SAVEPOINT active_record_2_47 is the
> current_statement_in_blocking_process.
>
> https://wiki.postgresql.org/wiki/Lock_Monitoring
>
> SELECT bl.pid AS blocked_pid,
>
> a.usename AS blocked_user,
> ka.query AS current_statement_in_blocking_process,
> now() - ka.query_start AS blocking_duration,
> kl.pid AS blocking_pid,
> ka.usename AS blocking_user,
> a.query AS blocked_statement,
> now() - a.query_start AS blocked_duration
> FROM pg_catalog.pg_locks bl
> JOIN pg_catalog.pg_stat_activity a ON a.pid = bl.pid
> JOIN pg_catalog.pg_locks kl ON kl.transactionid =
> bl.transactionid AND kl.pid != bl.pid
> JOIN pg_catalog.pg_stat_activity ka ON ka.pid = kl.pid
> WHERE NOT bl.GRANTED;

That is probably not the current statement in the blocking process.
It is likely that the blocking process is in the state "idle in
transaction", and the RELEASE SAVEPOINT is actually the most recent
statement, not the current statement.

I've updated the wiki to clarify that, but it could use some more polishing.

So your savepoint release has executed successfully, but the outer
transaction is still holding on to locks which block the other
process. You have to convince that outer transaction to either commit
or rollback.

Cheers,

Jeff

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Magnus Hagander 2016-04-08 18:29:46 Re: [HACKERS] BUG #13854: SSPI authentication failure: wrong realm name used
Previous Message psuderevsky 2016-04-08 16:37:36 BUG #14078: Excessive memory growth during nested loop in select