Thread

  1. Re: [COMMITTERS] pgsql: Make the visibility map crash-safe.

    Robert Haas <robertmhaas@gmail.com> — 2011-06-23T13:22:40Z

    On Wed, Jun 22, 2011 at 10:23 PM, Robert Haas <robertmhaas@gmail.com> wrote:
    > Well, it seems I didn't put nearly enough thought into heap_update().
    > The fix for the immediate problem looks simple enough - all the code
    > has been refactored to use the new API, so the calls can be easily be
    > moved into the critical section (see attached).  But looking at this a
    > little more, I see that heap_update() is many bricks short of a load,
    > because there are several places where the buffer can be unlocked and
    > relocked, and we don't recheck whether the page is all-visible after
    > reacquiring the lock.  So I've got some more work to do here.
    
    See what you think of the attached.  I *think* this covers all bases.
    It's a little more complicated than I would like, but I don't think
    fatally so.
    
    -- 
    Robert Haas
    EnterpriseDB: http://www.enterprisedb.com
    The Enterprise PostgreSQL Company