Re: CheckpointStartLock starvation - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Re: CheckpointStartLock starvation
Date
Msg-id 461216A0.1090700@enterprisedb.com
Whole thread Raw
In response to Re: CheckpointStartLock starvation  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: CheckpointStartLock starvation  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Tom Lane wrote:
> Heikki Linnakangas <heikki@enterprisedb.com> writes:
>> Tom Lane wrote:
>>> What sort of "wait for finish" mechanism do you have in mind?
> 
>> I was thinking of XactLockTableWait.
> 
> Ugh.  I don't think the bgwriter can participate in heavyweight-lockmgr
> operations, or should become able to.

Oh, good point.

I suppose we could just poll and sleep, checkpoint is a heavy operation 
anyway so a little delay wouldn't hurt.

> Nor will that work for prepared xacts --- you don't want to wait for the
> eventual commit, only for PREPARE TRANSACTION to exit its critical
> section.

PREPARE TRANSACTION wouldn't set the flag in MyProc; there's no clog 
changes to protect from at that point. It would be set in 
RecordTransactionCommitPrepared when we're really committing. Just like 
we use the CheckpointStartLock today.

--   Heikki Linnakangas  EnterpriseDB   http://www.enterprisedb.com


pgsql-hackers by date:

Previous
From: "Zeugswetter Andreas ADI SD"
Date:
Subject: Re: Modifying TOAST thresholds
Next
From: "Marko Kreen"
Date:
Subject: Re: PL/Python warnings in CVS HEAD