Re: SSI work for 9.1

From: Dan Ports <drkp(at)csail(dot)mit(dot)edu>
To: Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: SSI work for 9.1
Date: 2011-06-09 00:04:52
Message-ID: 20110609000452.GH26076@csail.mit.edu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Jun 08, 2011 at 05:48:26PM -0500, Kevin Grittner wrote:
> (1) Pass snapshot in to some predicate.c functions. The particular
> functions have yet to be determined, but certainly any which acquire
> predicate locks, and probably all which are guarded by the
> SkipSerialization() macro. Skip processing for non-MVCC snapshots.
> The goal here is to reduce false positive serialization failures and
> avoid confusion about locks showing in the pg_locks view which are
> hard to explain.

I assume you've already started on this one; let me know if you have a
patch I should take a look at or hit any snags.

> (2) Check on heap truncation from vacuum. On the face of it this
> seems unlikely to be a problem since we make every effort to clean
> up predicate locks as soon as there is no transaction which can
> update what a transaction has read, but it merits a re-check. Once
> confirmed, add a note to lazy_truncate_heap about why it's not an
> issue.

I assume you are worried here that there may be SIREAD locks remaining
on truncated pages/tuples, and these would cause false positives if
those pages are reused?

I don't believe this can happen, because a vacuum will only delete a
formerly-visible dead tuple if its xmax is earlier than OldestXmin. We
remove all SIREAD locks on anything older than GlobalSxactXmin, which
won't be less than OldestXmin.

> (4) Add a comment to the docs about how querying tuples by TID
> doesn't lock not-found "gaps" the way an indexed access would.

I can take care of this one and some other README-SSI changes.

Dan

--
Dan R. K. Ports MIT CSAIL http://drkp.net/

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Creager 2011-06-09 00:41:08 Re: [Pgbuildfarm-members] CREATE FUNCTION hang on test machine polecat on HEAD
Previous Message Robert Haas 2011-06-08 23:52:41 Re: Proposal: Another attempt at vacuum improvements