Re: FOR SHARE vs FOR UPDATE locks

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Cc: Simon Riggs <simon(at)2ndquadrant(dot)com>, pgsql-hackers(at)postgreSQL(dot)org
Subject: Re: FOR SHARE vs FOR UPDATE locks
Date: 2006-12-01 15:12:06
Message-ID: 15834.1164985926@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-docs pgsql-hackers

Alvaro Herrera <alvherre(at)commandprompt(dot)com> writes:
> I'm not sure we can use the simple "raise an ERROR" answer though,
> because for users that would be a regression.

I've reconsidered the idea of upgrading the outer xact's shared lock to
exclusive: at first I thought that would be hard to implement correctly,
but now I realize it's easy. Just re-use the XID that's in the multixact
as the one to store as the exclusive locker, instead of storing our
current subxact XID. In some cases this will be a subcommitted XID of
the current subxact or a parent, but the locking semantics are the same,
and even though we think such an XID is finished everyone else will see
it as still live so the appearance of its XID in an XMAX field shouldn't
be an issue.

So that's what I propose doing.

regards, tom lane

In response to

Responses

Browse pgsql-docs by date

  From Date Subject
Next Message Zeugswetter Andreas ADI SD 2006-12-01 15:45:00 Re: FOR SHARE vs FOR UPDATE locks
Previous Message Heikki Linnakangas 2006-12-01 12:02:12 Re: FOR SHARE vs FOR UPDATE locks

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2006-12-01 15:37:07 Re: small pg_dump RFE: new --no-prompt (password) option
Previous Message Csaba Nagy 2006-12-01 14:07:01 Re: small pg_dump RFE: new --no-prompt (password) option