8.0.0beta3 duration logging patch

From: "Ed L(dot)" <pgsql(at)bluepolka(dot)net>
To: PostgreSQL Patches <pgsql-patches(at)postgresql(dot)org>
Subject: 8.0.0beta3 duration logging patch
Date: 2004-09-28 02:29:03
Message-ID: 200409272029.03301.pgsql@bluepolka.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

The attached patch forces queryless duration log statements to be turned off
in step with the log_statement directive. Without this patch, and with
log_statement = 'mod' and log_duration = true, there is no way to silence
SELECT query duration logging when quieting the logging of SELECT queries.

Note this patch changes the semantics of log_duration from logging the
duration of "every completed statement" to "every completed statement that
satisfies log_statement directive". I argue this semantic change is
justified given 1) the docs themselves recommend turning log_statement
sufficiently up to be able to make this mapping, and 2) I can see it being
quite common that folks only want to log queries (and durations) that
change the database, while I fail to see the usefulness of queryless
durations (and I'm trying to scratch my own itch with a small effort).
It's possible someone else feels strongly about their queryless durations
for reasons I cannot imagine. If so, then another more conservative
approach may be in order.

Note also this patch is independent of queries and durations logged due to
the log_min_duration_statement directive. If, for example, log_statement =
'all', log_min_duration_statement = 1 (ms), and a SELECT query takes longer
than 1ms, it's duration will be logged twice, with the 2nd log entry
including the statement with the duration.

Ed

Attachment Content-Type Size
duration_patch.diff text/x-diff 3.1 KB

Responses

Browse pgsql-patches by date

  From Date Subject
Next Message Bruce Momjian 2004-09-28 03:28:41 Re: 8.0.0beta3 duration logging patch
Previous Message Tom Lane 2004-09-28 00:13:16 Re: [HACKERS] Win32 Version numbering patch