The current approach to "value locking" remains a controversial aspect of my INSERT ... ON CONFLICT UPDATE patch. I must admit that this is a very complicated area, and it's difficult to keep things straight, particularly with the relevant discussion scattered all over the place.
In the hope of unblocking things, I have created this Wiki page, which details the advantages and disadvantages of all 3 approaches that have been discussed, as suggested by myself and others: https://wiki.postgresql.org/wiki/Value_locking I actually think that we're only in disagreement on the extent to which the stated advantages and disadvantages are useful or harmful. So I think that at the moment this description is a reasonably balanced handling of the issues. Please add any points that I missed. This is by no means complete yet. There is pretty limited handling of what I call "#3. "Promise" index tuples", because there was no prototype version of that design, and there are many open questions about how it would be implemented relative to the other 2 approaches. Perhaps Andres or Simon would care to improve it. I think I've done a better job of describing #2, Heikki's design - hardly surprising, since there was a prototype that we discussed at length - but I'd appreciate it if other people would make sure that I have everything right there. This is hopefully the beginning of working the issues out. I have of course also described my own proposed design alongside the others. Please edit and add to my words as you see fit. -- Peter Geoghegan -- Sent via pgsql-hackers mailing list (firstname.lastname@example.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers