Skip site navigation (1) Skip section navigation (2)

pgsql: Repair bufmgr deadlock problem reported by Michael Wildpaner.

From: tgl(at)svr1(dot)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Repair bufmgr deadlock problem reported by Michael Wildpaner.
Date: 2005-01-03 18:49:44
Message-ID: 20050103184944.2EDC53A3D2D@svr1.postgresql.org (view raw or flat)
Thread:
Lists: pgsql-committers
Log Message:
-----------
Repair bufmgr deadlock problem reported by Michael Wildpaner.  Must take
share lock on a buffer being written out before releasing BufMgrLock in
the BufferAlloc code path; if we do it later we might block on someone
who's re-pinned the buffer.  I believe this is only an issue for BufferAlloc
and not the other places that call FlushBuffer.  BufferSync must continue
to do it the old way since it may well be trying to write buffers that
other backends have pinned; but it should not be holding any conflicting
locks.  FlushRelationBuffers is okay since it's got exclusive lock at the
relation level.

Modified Files:
--------------
    pgsql/src/backend/storage/buffer:
        bufmgr.c (r1.183 -> r1.184)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/buffer/bufmgr.c.diff?r1=1.183&r2=1.184)

pgsql-committers by date

Next:From: User DfetterDate: 2005-01-03 18:55:20
Subject: dbi-link - dbi-link: Updated to read 2004-2005
Previous:From: Bruce MomjianDate: 2005-01-03 16:56:56
Subject: Re: pgsql: Some more missed copyright notices.

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group