Re: idea: log_statement_sample_rate - bottom limit for sampling - Mailing list pgsql-hackers

From Adrien Nayrat
Subject Re: idea: log_statement_sample_rate - bottom limit for sampling
Date
Msg-id 4540bafe-1b23-a6ce-a313-f3b03bb418df@anayrat.info
Whole thread Raw
In response to Re: idea: log_statement_sample_rate - bottom limit for sampling  (Tomas Vondra <tomas.vondra@2ndquadrant.com>)
Responses Re: idea: log_statement_sample_rate - bottom limit for sampling  (Adrien Nayrat <adrien.nayrat@anayrat.info>)
List pgsql-hackers
On 7/28/19 12:19 AM, Tomas Vondra wrote:
> Hi,
>
> I've started reviewing this patch, thinking that maybe I could get it
> committed as it's marked as RFC. In general I agree with having this
> fuature, but I think we need to rethink the GUC because the current
> approach is just confusing.
>
> The way the current patch works is that we have three GUCs:
>
>  log_min_duration_statement
>  log_statement_sample_limit
>  log_statement_sample_rate
>
> and it essentially works like this:
>
> - If the duration exceeds log_min_duration_statement, we start sampling
>  the commands with log_statement_sample rate.
>
> - If the duration exceeds log_statement_sample_limit, we just log the
>  command every time (i.e. we disable sampling, using sample rate 1.0).
>
> IMO that's bound to be confusing for users, because one threshold
> behaves as minimum while the other behaves as maximum.

I agree, it took me a while to understand how it behave with the three GUC. That
why I tried to enrich documentation, but it may mean that the functionality is
not properly implemented.

>
>
> What I think we should do instead is to use two minimum thresholds.
>
> 1) log_min_duration_sample - enables sampling of commands, using the
> existing GUC log_statement_sample_rate
>
> 2) log_min_duration_statement - logs all commands exceeding this
>
>
> I think this is going to be much easier for users to understand.

+1, I like this idea.

I don't really have an opinion if we have to revert the whole feature or try to
fix it for v12. But it is true it is a late to fix it.

Furthermore, users who really want this feature in v12 can use an extension for
that purpose [1].

1: I made this extension with same kind of features :
https://github.com/anayrat/pg_sampletolog


Attachment

pgsql-hackers by date:

Previous
From: Yugo Nagata
Date:
Subject: Re: Implementing Incremental View Maintenance
Next
From: Peter Eisentraut
Date:
Subject: Re: how to run encoding-dependent tests by default