RE: libpq debug log

From: "tsunakawa(dot)takay(at)fujitsu(dot)com" <tsunakawa(dot)takay(at)fujitsu(dot)com>
To: "iwata(dot)aya(at)fujitsu(dot)com" <iwata(dot)aya(at)fujitsu(dot)com>
Cc: 'Kyotaro Horiguchi' <horikyota(dot)ntt(at)gmail(dot)com>, "k(dot)jamison(at)fujitsu(dot)com" <k(dot)jamison(at)fujitsu(dot)com>, "alvherre(at)alvh(dot)no-ip(dot)org" <alvherre(at)alvh(dot)no-ip(dot)org>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: RE: libpq debug log
Date: 2021-02-12 04:52:52
Message-ID: TYAPR01MB2990ED8D66CAB2CC0CCD25C4FE8B9@TYAPR01MB2990.jpnprd01.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

(48)
<synopsis>
void PQtrace(PGconn *conn, FILE *stream);
</synopsis>
</para>

+ <para>
+ Calls <function>PQtraceSetFlags</function> to output with or without a timestamp.
+ </para>
+
<note>

Why is this necessary? Even if you decide to remove this change, can you share your idea on why you added this just in case?

(49)
+ Determine to output tracing with or without a timestamp to a debugging file stream.

The description should be the overall functionality of this function considering the future additions of flags. Something like:

Controls the tracing behavior of client/server communication.

+ then timestamp is not printed with each message. The default is output with timestamp.

The default value for flags argument (0) should be described here.

Also, it should be added that PQsetTraceFlags() can be called before or after the PQtrace() call.

(50)
I'd like you to consider skipLogging again, because it seems that such a variable is for the logging machinery to control state transitions internally in fe-logging.c.
What I'm concerned is that those who modify libpq have to be aware of skipLogging and would fail to handle it.

(51)
>> +typedef enum PGLogState
>> +{
>>
>> This is libpq-logging.c internal type. It is not needed to be exposed.

> I fixed it.

How did you fix it? The typedef is still in .h file. It should be in .h, shouldn't it? Houw about the other typedefs?

I won't comment on the other stuff on function naming.

Regards
Takayuki Tsunakawa

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Greg Nancarrow 2021-02-12 05:42:51 Re: Parallel INSERT (INTO ... SELECT ...)
Previous Message Andres Freund 2021-02-12 04:46:14 Re: WIP: WAL prefetch (another approach)