pgsql: libpq: Add support for Close on portals and statements

Поиск
Список
Период
Сортировка
От Michael Paquier
Тема pgsql: libpq: Add support for Close on portals and statements
Дата
Msg-id E1qGYtk-001pM8-6G@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
libpq: Add support for Close on portals and statements

The following routines are added to libpq:
PGresult *PQclosePrepared(PGconn *conn, const char *stmt);
PGresult *PQclosePortal(PGconn *conn, const char *portal);
int PQsendClosePrepared(PGconn *conn, const char *stmt);
int PQsendClosePortal(PGconn *conn, const char *portal);

The "send" routines are non-blocking versions of the two others.

Close messages are part of the protocol but they did not have a libpq
implementation.  And, having these routines is for instance useful with
connection poolers as these can detect more easily Close messages
than DEALLOCATE queries.

The implementation takes advantage of what the Describe routines rely on
for portals and statements.  Some regression tests are added in
libpq_pipeline, for the four new routines, by closing portals and
statements created already by the tests.

Author: Jelte Fennema
Reviewed-by: Jian He, Michael Paquier
Discussion: https://postgr.es/m/CAGECzQTb4xFAopAVokudB+L62Kt44mNAL4Z9zZ7UTrs1TRFvWA@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/28b5726561841556dc3e00ffe26b01a8107ee654

Modified Files
--------------
doc/src/sgml/libpq.sgml                            | 125 +++++++++++++++++++--
src/interfaces/libpq/exports.txt                   |   4 +
src/interfaces/libpq/fe-exec.c                     | 124 ++++++++++++++++----
src/interfaces/libpq/fe-protocol3.c                |  19 +++-
src/interfaces/libpq/libpq-fe.h                    |   6 +
src/interfaces/libpq/libpq-int.h                   |   2 +-
src/test/modules/libpq_pipeline/libpq_pipeline.c   |  65 +++++++++++
.../modules/libpq_pipeline/traces/prepared.trace   |  24 ++++
8 files changed, 337 insertions(+), 32 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Thomas Munro
Дата:
Сообщение: pgsql: Re-bin segment when memory pages are freed.
Следующее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: Adjust kerberos and ldap tests for Homebrew on ARM