Re: New GUC to sample log queries

Vik Fearing <vik.fearing@2ndquadrant.com>

From: Vik Fearing <vik.fearing@2ndquadrant.com>
To: Adrien Nayrat <adrien.nayrat@anayrat.info>, Dmitry Dolgov <9erthalion6@gmail.com>, Tomas Vondra <tomas.vondra@2ndquadrant.com>
Cc: Robert Haas <robertmhaas@gmail.com>, Michael Paquier <michael@paquier.xyz>, david.rowley@2ndquadrant.com, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2018-11-22T17:27:19Z
Lists: pgsql-hackers
On 21/11/2018 09:06, Adrien Nayrat wrote:
> On 11/19/18 2:52 PM, Dmitry Dolgov wrote:
>>> On Mon, Nov 19, 2018 at 2:40 PM Tomas Vondra <tomas.vondra@2ndquadrant.com> wrote:
>>>
>>> On 11/19/18 2:57 AM, Michael Paquier wrote:
>>>> On Sun, Nov 18, 2018 at 12:18:33PM +0100, Dmitry Dolgov wrote:
>>>>> Since it's hard to come up with a concise name that will mention sampling rate
>>>>> in the context of min_duration_statement, I think it's fine to name this
>>>>> configuration "log_sample_rate", as long as it's dependency from
>>>>> log_min_duration_statements is clearly explained in the documentation.
>>>>
>>>> log_sample_rate looks fine to me as a name.
>>>
>>> That seems far too short to me - the name should indicate it applies to
>>> statement logging. I'd say log_statement_sample_rate is better.
>>
>> I agree, sounds reasonable.
>>
> 
> Thanks for your comments. Here is the updated patch. I fixed a warning for
> missing parentheses in this expression:
> if ((exceeded && in_sample) || log_duration)
> 
> It passed make check_world and make docs

I am happy with this version.  I've marked it ready for committer.

Thanks!
-- 
Vik Fearing                                          +33 6 46 75 15 36
http://2ndQuadrant.fr     PostgreSQL : Expertise, Formation et Support


Commits

  1. Use pg_strong_random() to select each server process's random seed.

  2. Use a separate random seed for SQL random()/setseed() functions.

  3. Marginal performance hacking in erand48.c.

  4. Fix latent problem with pg_jrand48().

  5. Silence compiler warning

  6. Add log_statement_sample_rate parameter