Re: libpq debug log

Kyotaro Horiguchi <horikyota.ntt@gmail.com>

From: Kyotaro Horiguchi <horikyota.ntt@gmail.com>
To: alvherre@alvh.no-ip.org
Cc: iwata.aya@fujitsu.com, k.jamison@fujitsu.com, tsunakawa.takay@fujitsu.com, pgsql-hackers@lists.postgresql.org
Date: 2021-02-26T04:35:26Z
Lists: pgsql-hackers
At Thu, 25 Feb 2021 21:04:00 -0300, Álvaro Herrera <alvherre@alvh.no-ip.org> wrote in 
> This assert I added?
> 
> > +static bool
> > +pqTraceMaybeBreakLine(int size, PGconn *conn)
> > +{
> > +	Assert(conn->be_msg->length > 0);
> 
> It breaks.  Maybe there's a good reason, maybe there ain't, but in the
> meantime I just removed it.

The assertion contradicts the condition just below.

|	Assert(conn->be_msg->length > 0);
|
|	conn->be_msg->length -= size;
|	if (conn->be_msg->length <= 0)

It seems to me that the assertion was inteded to be placed after
subtracting size, and the operator > is inteded to be >=.

regards.

-- 
Kyotaro Horiguchi
NTT Open Source Software Center



Commits

  1. Rename PQtraceSetFlags() to PQsetTraceFlags().

  2. Suppress length of Notice/Error msgs in PQtrace regress mode

  3. Strip file names reported in error messages on Windows, too.

  4. Fix setvbuf()-induced crash in libpq_pipeline

  5. libpq_pipeline: Must strdup(optarg) to avoid crash

  6. Remove setvbuf() call from PQtrace()

  7. Initialize conn->Pfdebug to NULL when creating a connection

  8. Disable force_parallel_mode in libpq_pipeline

  9. libpq_pipeline: add PQtrace() support and tests

  10. Improve PQtrace() output format

  11. Re-simplify management of inStart in pqParseInput3's subroutines.