Re: INSERT ... ON CONFLICT {UPDATE | IGNORE}

Craig Ringer <craig@2ndquadrant.com>

From: Craig Ringer <craig@2ndquadrant.com>
To: Peter Geoghegan <pg@heroku.com>, Simon Riggs <simon@2ndquadrant.com>
Cc: Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2014-09-30T02:28:56Z
Lists: pgsql-hackers
On 09/30/2014 01:59 AM, Peter Geoghegan wrote:
> On Mon, Sep 29, 2014 at 7:21 AM, Simon Riggs <simon@2ndquadrant.com> wrote:
>> If you were an ORM developer reading the PostgreSQL Release Notes for
>> 9.5, which URL would you visit to see a complete description of the
>> new feature, including how it works concurrently, locking and other
>> aspects. How would you check whether some strange behaviour was a bug,
>> or intentional?
> 
> We don't do that with UPDATE, so why would we do it with this? There
> is an existing structure to the documentation that needs to be
> respected. 

I tend to agree, so long as there are appropriate cross-references.

See, for example, how window function information was added.

>This is the case even though the EvalPlanQual() mechanism
> is a total Postgres-ism, which can potentially violate snapshot
> isolation (this is not true of Oracle's READ COMMITTED, for example).

That's useful to know, and certainly worth covering in the isolation
portion of the docs.

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


Commits

  1. Change the way we mark tuples as frozen.

  2. Add documentation for data-modifying statements in WITH clauses.