regression=# UPDATE foo SET f2=now() WHERE f1=1;
ERROR: deadlock detected
DETAIL: Process 18122 waits for AccessExclusiveLock on relation 154635 of database
17139; blocked by process 18133.
Process 18133 waits for ShareLock on transaction 6330; blocked by process 18122.
The trouble here is that
On Fri, 3 Oct 2003, Tom Lane wrote:
> Christopher Kings-Lynne <[EMAIL PROTECTED]> writes:
> > OK, I tried it again and it still seems buggy to me...
>
> > I wonder if it's something to do with the tsearch trigger on food_foods?
>
> I tried a table with a simple BEFORE trigger and it didn't fail.
>
Christopher Kings-Lynne <[EMAIL PROTECTED]> writes:
> OK, I tried it again and it still seems buggy to me...
> I wonder if it's something to do with the tsearch trigger on food_foods?
I tried a table with a simple BEFORE trigger and it didn't fail.
But when I added a GIST index, it did:
[ instal
I wonder if it's something to do with the tsearch trigger on food_foods?
Actually, it definitely seems to be the tsearch trigger. The deadlock
occurs on every table that uses tsearch trigger, and no table that doesn't.
It's probably not the tsearch trigger itself even, it's probably the
fact t
OK, I tried it again and it still seems buggy to me...
australia= begin;
BEGIN
australia=# select * from food_foods where food_id = 21 for update;
food_id | category_id | brand_id | source_id |description
| base | type | created | modified | water | kilojoules |
calories | pr
Tom Lane kirjutas N, 02.10.2003 kell 17:30:
> Christopher Kings-Lynne <[EMAIL PROTECTED]> writes:
> > What is going on here? Surely getting a FOR UPDATE row lock should
> > prevent another process getting an update lock?
> The behavior you describe would certainly be a bug, but you'll have to
>
Christopher Kings-Lynne <[EMAIL PROTECTED]> writes:
> What is going on here? Surely getting a FOR UPDATE row lock should
> prevent another process getting an update lock?
I could not duplicate your results. I did
regression=# create table tab(id int , blah int);
CREATE TABLE
regression=# inser
Hi guys,
I'm just trying to understand this situation:
Session 1
-
BEGIN;
SELECT * FROM tab WHERE id=1 FOR UPDATE;
Session 2
-
UPDATE tab SET blah=1 WHERE id=1;
Session 1
-
UPDATE tab SET blah=1 WHERE id=1;
ERROR: deadlock detected
Session 2
-
...update has gone t