From: | Itagaki Takahiro <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Deadlock on the same object? |
Date: | 2009-11-12 00:10:22 |
Message-ID: | 20091112091022.A945.52131E4D@oss.ntt.co.jp |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> I think this is an artifact of the fact that SQL functions parse the
> whole querystring before executing any of it. Parsing of "DELETE FROM
> a" will result in acquiring ROW EXCLUSIVE lock on a, and then when the
> LOCK commands are executed, you have a lock-upgrade scenario and the
> deadlock is unsurprising.
Thanks. It's a surprise for me :-).
> There was some discussion of changing that awhile ago, but I forget
> what the conclusion was. In any case nothing's been done about it.
We cannot make a package of locking controls in a function under
the current behavior. It would be good to improve this area.
Regards,
---
ITAGAKI Takahiro
NTT Open Source Software Center
From | Date | Subject | |
---|---|---|---|
Next Message | Joachim Wieland | 2009-11-12 00:25:00 | Re: Listen / Notify rewrite |
Previous Message | Andrew Chernow | 2009-11-12 00:04:28 | Re: Listen / Notify rewrite |