On 2013-10-01 07:41:46 -0700, Kevin Grittner wrote:
> Andres Freund <and...@2ndquadrant.com> wrote:
> 
> > A better solution probably is to promote tuple-level locks if
> > they exist to a relation level one upon freezing I guess?
> 
> It would be sufficient to promote the tuple lock to a page lock.
> It would be pretty easy to add a function to predicate.c which
> would accept a Relation and HeapTuple, check for a predicate lock
> for the tuple, and add a page lock if found (which will
> automatically clear the tuple lock).  This new function would be
> called when a tuple was chosen for freezing.  Since freezing always
> causes WAL-logging and disk I/O, the cost of a couple hash table
> operations should not be noticeable.

Yea, not sure why I was thinking of table level locks.

> This seems like a bug fix which should be back-patched to 9.1, yes?

Yes.

Greetings,

Andres Freund

-- 
 Andres Freund                     http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to