pgsql-server/src backend/access/nbtree/nbtpage ...

From: tgl(at)svr1(dot)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql-server/src backend/access/nbtree/nbtpage ...
Date: 2003-08-10 19:48:08
Message-ID: 20030810194808.CBC5ED1C4E1@svr1.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

CVSROOT: /cvsroot
Module name: pgsql-server
Changes by: tgl(at)svr1(dot)postgresql(dot)org 03/08/10 16:48:08

Modified files:
src/backend/access/nbtree: nbtpage.c
src/backend/storage/buffer: bufmgr.c
src/include/storage: bufmgr.h

Log message:
Repair potential deadlock created by recent changes to recycle btree
index pages: when _bt_getbuf asks the FSM for a free index page, it is
possible (and, in some cases, even moderately likely) that the answer
will be the same page that _bt_split is trying to split. _bt_getbuf
already knew that the returned page might not be free, but it wasn't
prepared for the possibility that even trying to lock the page could
be problematic. Fix by doing a conditional rather than unconditional
grab of the page lock.

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut - PostgreSQL 2003-08-11 15:19:59 pgsql-server/src backend/po/sv.po bin/pg_contr ...
Previous Message Tom Lane 2003-08-10 01:20:34 pgsql-server/doc/src/sgml ddl.sgml dml.sgml fu ...