Thread: pgsql: Repair very-low-probability race condition between relation
pgsql: Repair very-low-probability race condition between relation
From
tgl@svr1.postgresql.org (Tom Lane)
Date:
Log Message: ----------- Repair very-low-probability race condition between relation extension and VACUUM: in the interval between adding a new page to the relation and formatting it, it was possible for VACUUM to come along and decide it should format the page too. Though not harmful in itself, this would cause data loss if a third transaction were able to insert tuples into the vacuumed page before the original extender got control back. Modified Files: -------------- pgsql/src/backend/access/heap: hio.c (r1.55 -> r1.56) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/heap/hio.c.diff?r1=1.55&r2=1.56) pgsql/src/backend/access/nbtree: nbtpage.c (r1.83 -> r1.84) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/nbtree/nbtpage.c.diff?r1=1.83&r2=1.84) nbtree.c (r1.128 -> r1.129) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/nbtree/nbtree.c.diff?r1=1.128&r2=1.129) pgsql/src/backend/commands: vacuumlazy.c (r1.52 -> r1.53) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/vacuumlazy.c.diff?r1=1.52&r2=1.53)