Re: CheckpointStartLock starvation

From: Heikki Linnakangas <heikki(at)enterprisedb(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: CheckpointStartLock starvation
Date: 2007-04-03 08:56:00
Message-ID: 461216A0.1090700@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Tom Lane wrote:
> Heikki Linnakangas <heikki(at)enterprisedb(dot)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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Marko Kreen 2007-04-03 08:56:16 Re: PL/Python warnings in CVS HEAD
Previous Message Zeugswetter Andreas ADI SD 2007-04-03 08:21:11 Re: Modifying TOAST thresholds