pgsql: libpq: Trace all messages received from the server

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: libpq: Trace all messages received from the server
Date: 2024-08-16 17:24:02
Message-ID: E1sf0gE-0000dZ-6N@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

libpq: Trace all messages received from the server

Not all messages that libpq received from the server would be sent
through our message tracing logic. This commit tries to fix that by
introducing a new function pqParseDone which make it harder to forget
about doing so.

The messages that we now newly send through our tracing logic are:

- CopyData (received by COPY TO STDOUT)
- Authentication requests
- NegotiateProtocolVersion
- Some ErrorResponse messages during connection startup
- ReadyForQuery when received after a FunctionCall message

Author: Jelte Fennema-Nio <postgres(at)jeltef(dot)nl>
Discussion: https://postgr.es/m/CAGECzQSoPHtZ4xe0raJ6FYSEiPPS+YWXBhOGo+Y1YecLgknF3g@mail.gmail.com

Branch
------
master

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

Modified Files
--------------
src/interfaces/libpq/fe-auth.c | 21 ++++++++++++
src/interfaces/libpq/fe-connect.c | 12 ++++---
src/interfaces/libpq/fe-misc.c | 15 ++++++++
src/interfaces/libpq/fe-protocol3.c | 38 +++++++++------------
src/interfaces/libpq/fe-trace.c | 68 ++++++++++++++++++++++++++++++++++---
src/interfaces/libpq/libpq-int.h | 1 +
6 files changed, 124 insertions(+), 31 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Robert Haas 2024-08-16 17:45:35 pgsql: Improve more comments in astreamer_gzip.c.
Previous Message Bruce Momjian 2024-08-16 17:11:47 pgsql: doc PG 17 relnotes: fix incorrect reference to huge_page_status