Re: Checkpoint gets stuck in mdsync - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Checkpoint gets stuck in mdsync
Date
Msg-id 27041.1175783978@sss.pgh.pa.us
Whole thread Raw
In response to Checkpoint gets stuck in mdsync  (Heikki Linnakangas <heikki@enterprisedb.com>)
List pgsql-hackers
Heikki Linnakangas <heikki@enterprisedb.com> writes:
> My proposed fix is to make a copy of pendingOpsTable before entering the 
> loop. AbsorbFsyncRequest will put new requests to a fresh new 
> pendingOpsTable, while the mdsync loop will drain the copy. I'll write a 
> patch along those lines if there's no better ideas.

That sounds pretty ugly.  Perhaps better is a "cycle ID" field added to
the table entries, assigned from a counter that's bumped before entering
the fsync loop.  Then you could distinguish entries made before starting
the loop from those made after.  One fine point is to not let
AbsorbFsyncRequest change the cycle ID on a pre-existing entry ...
        regards, tom lane


pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Interaction of PITR backups andBulkoperationsavoiding WAL
Next
From: Tom Lane
Date:
Subject: Re: Bug in UTF8-Validation Code?