pgsql: Remove the new UPSERT command tag and use INSERT instead.

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Remove the new UPSERT command tag and use INSERT instead.
Date: 2015-05-22 23:34:20
Message-ID: E1YvwSK-0004FW-6u@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Remove the new UPSERT command tag and use INSERT instead.

Previously, INSERT with ON CONFLICT DO UPDATE specified used a new
command tag -- UPSERT. It was introduced out of concern that INSERT as
a command tag would be a misrepresentation for ON CONFLICT DO UPDATE, as
some affected rows may actually have been updated.

Alvaro Herrera noticed that the implementation of that new command tag
was incomplete; in subsequent discussion we concluded that having it
doesn't provide benefits that are in line with the compatibility breaks
it requires.

Catversion bump due to the removal of PlannedStmt->isUpsert.

Author: Peter Geoghegan
Discussion: 20150520215816(dot)GI5885(at)postgresql(dot)org

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/631d7490074cdaef8026db57a5f2772b8730f600

Modified Files
--------------
doc/src/sgml/protocol.sgml | 13 +++----------
doc/src/sgml/ref/insert.sgml | 21 +++++++--------------
src/backend/nodes/copyfuncs.c | 1 -
src/backend/nodes/outfuncs.c | 1 -
src/backend/optimizer/plan/planner.c | 2 --
src/backend/tcop/pquery.c | 17 +++--------------
src/bin/psql/common.c | 5 +----
src/include/catalog/catversion.h | 2 +-
src/include/nodes/plannodes.h | 2 --
9 files changed, 15 insertions(+), 49 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Andres Freund 2015-05-23 00:20:10 pgsql: Fix yet another bug in ON CONFLICT rule deparsing.
Previous Message Tom Lane 2015-05-22 22:36:52 pgsql: Fix recently-introduced crash in array_contain_compare().