pgsql: Rethink recently-added SPI interfaces.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Rethink recently-added SPI interfaces.
Date: 2021-01-26 21:37:31
Message-ID: E1l4W1j-0007Y2-Ne@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Rethink recently-added SPI interfaces.

SPI_execute_with_receiver and SPI_cursor_parse_open_with_paramlist are
new in v14 (cf. commit 2f48ede08). Before they can get out the door,
let's change their APIs to follow the practice recently established by
SPI_prepare_extended etc: shove all optional arguments into a struct
that callers are supposed to pre-zero. The hope is to allow future
addition of more options without either API breakage or a continuing
proliferation of new SPI entry points. With that in mind, choose
slightly more generic names for them: SPI_execute_extended and
SPI_cursor_parse_open respectively.

Discussion: https://postgr.es/m/CAFj8pRCLPdDAETvR7Po7gC5y_ibkn_-bOzbeJb39WHms01194Q@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/d5a83d79c9f9b660a6a5a77afafe146d3c8c6f46

Modified Files
--------------
doc/src/sgml/spi.sgml | 306 ++++++++++++++++++++++++++-----------------
src/backend/executor/spi.c | 114 +++++++---------
src/include/executor/spi.h | 24 ++--
src/pl/plpgsql/src/pl_exec.c | 46 ++++---
4 files changed, 280 insertions(+), 210 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Michael Paquier 2021-01-27 02:55:02 pgsql: Refactor code in tablecmds.c to check and process tablespace mov
Previous Message Alvaro Herrera 2021-01-26 19:43:13 pgsql: Report the true database name on connection errors