pgsql: Remove catalog function currtid()

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Remove catalog function currtid()
Date: 2020-11-25 03:19:14
Message-ID: E1khlKs-0007PW-Di@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Remove catalog function currtid()

currtid() and currtid2() are an undocumented set of functions whose sole
known user is the Postgres ODBC driver, able to retrieve the latest TID
version for a tuple given by the caller of those functions.

As used by Postgres ODBC, currtid() is a shortcut able to retrieve the
last TID loaded into a backend by passing an OID of 0 (magic value)
after a tuple insertion. This is removed in this commit, as it became
obsolete after the driver began using "RETURNING ctid" with inserts, a
clause supported since Postgres 8.2 (using RETURNING is better for
performance anyway as it reduces the number of round-trips to the
backend).

currtid2() is still used by the driver, so this remains around for now.
Note that this function is kept in its original shape for backward
compatibility reasons.

Per discussion with many people, including Andres Freund, Peter
Eisentraut, Álvaro Herrera, Hiroshi Inoue, Tom Lane and myself.

Bump catalog version.

Discussion: https://postgr.es/m/20200603021448.GB89559@paquier.xyz

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/7b94e999606e2e2e10d68d544d49fc5a5d5785ac

Modified Files
--------------
src/backend/executor/nodeModifyTable.c | 3 -
src/backend/utils/adt/tid.c | 137 +++++++++++++--------------------
src/include/access/heapam.h | 1 -
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_proc.dat | 3 -
src/test/regress/expected/tid.out | 32 +-------
src/test/regress/sql/tid.sql | 11 +--
7 files changed, 56 insertions(+), 133 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message David Rowley 2020-11-25 03:34:50 pgsql: Stop gap fix for __attribute__((cold)) compiler bug in MinGW 8.1
Previous Message Andrew Gierth 2020-11-24 22:03:08 pgsql: Properly check index mark/restore in ExecSupportsMarkRestore.