Re: WAL fsync scheduling - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: WAL fsync scheduling
Date
Msg-id 200011180558.AAA21746@candle.pha.pa.us
Whole thread Raw
In response to Re: WAL fsync scheduling  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: WAL fsync scheduling  (Bruce Momjian <pgman@candle.pha.pa.us>)
List pgsql-hackers
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > Other backend will see they are not the lowest
> > WAIT_ON_FSYNC and will wait for their byte to be set to NOT_IN_COMMIT
> > so they can then continue, knowing their data was synced.
> 
> How will they wait?  Without a semaphore involved, your answer must
> be either "timed sleep" or "busy-wait loop", neither of which is
> attractive ...

Yes, either timed sleep or busy-wait.  One nifty trick would be for each
backend that is not going to do the fsync to just sleep with signals
enabled, and for the fsyncing backend to signal the other backends to
exit their sleep.  That way, only one backend does the checking.

This sleep thing was going to be a problem anyway with the old system. 
At least this way, they sleep/check only in cases where it is valuable.

Can we use a semaphore for this system?

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: AW: AW: Could turn on -O2 in AIX
Next
From: Peter Eisentraut
Date:
Subject: Re: location of Unix socket