Having been surprisingly successful at advancing our understanding of arguments for and against various approaches to "value locking", I decided to try the same thing out elsewhere. I have created a general-purpose UPSERT wiki page.
The page is: https://wiki.postgresql.org/wiki/UPSERT Right now, I would like to address the less contentious but still unresolved question of whether or not we should use the SQL-standard MERGE syntax instead of the non-standard INSERT ... ON CONFLICT UPDATE syntax that my patch proposes. Note that I'm trying to direct the conversation along certain lines: Is MERGE the right syntax for this particular effort ("UPSERT")? And, in particular, not: Is SQL MERGE useful? I think that it is useful, but is a largely unrelated feature. Please correct the Wiki page if I have failed to credit SQL MERGE with some advantage that someone stated at some point. I don't recall any arguments for it, other than that it is in the SQL standard, but maybe I missed one. In general, add to this page, and edit it as you see fit. It'll be useful to centralize the references, discussion and state of the patch in one agreed upon place, as the patch continues to evolve. -- Peter Geoghegan -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers