Skip site navigation (1) Skip section navigation (2)

Re: Repeated PredicateLockRelation calls during seqscan

From: "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
To: <drkp(at)csail(dot)mit(dot)edu>,<heikki(dot)linnakangas(at)enterprisedb(dot)com>
Cc: <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Repeated PredicateLockRelation calls during seqscan
Date: 2011-06-25 19:29:38
Message-ID: 4E05F0D2020000250003EC1D@gw.wicourts.gov (view raw or flat)
Thread:
Lists: pgsql-hackers
Heikki Linnakangas  wrote:
 
> BTW, isn't bitgetpage() in nodeBitmapHeapscan.c missing
> PredicateLockTuple() and CheckForSerializableConflictOut() calls in
> the codepath for a lossy bitmap? In the non-lossy case,
> heap_hot_search_buffer() takes care of it, but not in the lossy
> case.
 
I think the attached addresses that.
 
In looking this over I noticed something else that doesn't seem quite
right.  In heapam.c there are two places where the execution of
PredicateLockTuple() is conditioned not just on MVCC visibility, but
also on HeapKeyTest().  I think those calls should be moved to not be
conditioned on that.  Otherwise we have a predicate condition being
tested without "locking the gaps", don't we?
 
-Kevin



Attachment: ssi-lossy-bitmap.patch
Description: application/octet-stream (1.4 KB)

Responses

pgsql-hackers by date

Next:From: Joe ConwayDate: 2011-06-25 20:36:33
Subject: Re: possible connection leak in dblink?
Previous:From: Jeff DavisDate: 2011-06-25 10:24:45
Subject: Re: heap_hot_search_buffer refactoring

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group