pgsql: Repair two related errors in heap_lock_tuple: it was failing to

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Repair two related errors in heap_lock_tuple: it was failing to
Date: 2006-11-17 18:00:25
Message-ID: 20061117180025.A41F89F9EC9@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Repair two related errors in heap_lock_tuple: it was failing to recognize
cases where we already hold the desired lock "indirectly", either via
membership in a MultiXact or because the lock was originally taken by a
different subtransaction of the current transaction. These cases must be
accounted for to avoid needless deadlocks and/or inappropriate replacement of
an exclusive lock with a shared lock. Per report from Clarence Gardner and
subsequent investigation.

Tags:
----
REL8_1_STABLE

Modified Files:
--------------
pgsql/src/backend/access/heap:
heapam.c (r1.200.2.2 -> r1.200.2.3)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/heap/heapam.c.diff?r1=1.200.2.2&r2=1.200.2.3)
pgsql/src/backend/access/transam:
multixact.c (r1.11.2.2 -> r1.11.2.3)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/multixact.c.diff?r1=1.11.2.2&r2=1.11.2.3)
pgsql/src/backend/utils/time:
tqual.c (r1.91.2.1 -> r1.91.2.2)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/time/tqual.c.diff?r1=1.91.2.1&r2=1.91.2.2)
pgsql/src/include/access:
multixact.h (r1.7 -> r1.7.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/multixact.h.diff?r1=1.7&r2=1.7.2.1)

Browse pgsql-committers by date

  From Date Subject
Next Message User Dim 2006-11-17 18:14:00 pgimport - pgimport: * some more examples, one containing failures *
Previous Message Tom Lane 2006-11-17 18:00:15 pgsql: Repair two related errors in heap_lock_tuple: it was failing to