Re: WalSndWakeup() and synchronous_commit=off - Mailing list pgsql-hackers

From Tom Lane
Subject Re: WalSndWakeup() and synchronous_commit=off
Date
Msg-id 10124.1336761384@sss.pgh.pa.us
Whole thread Raw
In response to Re: WalSndWakeup() and synchronous_commit=off  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: WalSndWakeup() and synchronous_commit=off
List pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes:
> That definitely doesn't seem ideal - a lot of things can pile up
> behind WALWriteLock.  I'm not sure how big a problem it would be in
> practice, but we generally make a practice of avoiding sending signals
> while holding LWLocks whenever possible...

There's a good reason for that, which is that the scheduler might well
decide to go run the wakened process instead of you.  Admittedly this
tends to not be a problem on machines with $bignum CPUs, but on
single-CPU machines I've seen it happen a lot.

Refactoring so that the signal is sent only after lock release seems
like a good idea to me.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Josh Berkus
Date:
Subject: Agenda For 3rd Cluster Hackers Summit, May 15th in Ottawa
Next
From: Andres Freund
Date:
Subject: Re: WalSndWakeup() and synchronous_commit=off