On Wed, Dec 16, 2009 at 1:14 PM, Alvaro Herrera <alvhe...@commandprompt.com> wrote: > Robert Haas escribió: >> On Wed, Dec 16, 2009 at 10:29 AM, Andres Freund <and...@anarazel.de> wrote: >> > On Wednesday 16 December 2009 16:24:42 Robert Haas wrote: >> >> > Inserts and deletes follow the same protocol, obtaining an exclusive >> >> > lock on the row after the one being inserted or deleted. The result >> >> > of this locking protocol is that a range scan prevents concurrent >> >> > inserts or delete within the range of the scan, and vice versa. >> >> > >> >> > That sounds like it should actually work. >> >> >> >> Only if you can guarantee that the database will access the rows using >> >> some particular index. If it gets to the data some other way it might >> >> accidentally circumvent the lock. That's kind of a killer in terms of >> >> making this work for PostgreSQL. >> > Isnt the whole topic only relevant for writing access? There you have to >> > access the index anyway. >> >> Yeah, I guess you have to insert the new tuple. I guess while you >> were at it you might check whether the next tuple is locked... > > So you'd have to disable HOT updates when true serializability was > active?
I thought about that, but I don't think so. HOT only applies to updates, and predicate locking only applies to inserts. Unless I have my head in the sand? ...Robert -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers