diff options
author | Tomas Vondra <tomas.vondra@postgresql.org> | 2019-08-04 20:19:54 +0200 |
---|---|---|
committer | Tomas Vondra <tomas.vondra@postgresql.org> | 2019-08-04 23:38:19 +0200 |
commit | 4f9ed8f3c5ef0034c98dd34549f85d8c72aab9ad (patch) | |
tree | 0709c6431ea9b132cb9a4f6f9445ff46f7255526 /src/backend/tcop/postgres.c | |
parent | e0f5048851ff88a53630a0c121a1cd15f6a2f1cd (diff) | |
download | postgresql-4f9ed8f3c5ef0034c98dd34549f85d8c72aab9ad.tar.gz postgresql-4f9ed8f3c5ef0034c98dd34549f85d8c72aab9ad.zip |
Revert "Silence compiler warning"
This reverts commit 9dc122585551516309c9362e673effdbf3bd79bd.
As committed, statement sampling used the existing duration threshold
(log_min_duration_statement) when decide which statements to sample.
The issue is that even the longest statements are subject to sampling,
and so may not end up logged. An improvement was proposed, introducing
a second duration threshold, but it would not be backwards compatible.
So we've decided to revert this feature - the separate threshold should
be part of the feature itself.
Discussion: https://postgr.es/m/CAFj8pRDS8tQ3Wviw9%3DAvODyUciPSrGeMhJi_WPE%2BEB8%2B4gLL-Q%40mail.gmail.com
Diffstat (limited to 'src/backend/tcop/postgres.c')
-rw-r--r-- | src/backend/tcop/postgres.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/backend/tcop/postgres.c b/src/backend/tcop/postgres.c index a6505c7335b..1679cce1f17 100644 --- a/src/backend/tcop/postgres.c +++ b/src/backend/tcop/postgres.c @@ -2256,14 +2256,13 @@ check_log_duration(char *msec_str, bool was_logged) /* * Do not log if log_statement_sample_rate = 0. Log a sample if - * log_statement_sample_rate <= 1 and avoid unnecessary random() call - * if log_statement_sample_rate = 1. But don't compute any of this - * unless needed. + * log_statement_sample_rate <= 1 and avoid unecessary random() call + * if log_statement_sample_rate = 1. */ - in_sample = exceeded && - log_statement_sample_rate != 0 && - (log_statement_sample_rate == 1 || - random() <= log_statement_sample_rate * MAX_RANDOM_VALUE); + if (exceeded) + in_sample = log_statement_sample_rate != 0 && + (log_statement_sample_rate == 1 || + random() <= log_statement_sample_rate * MAX_RANDOM_VALUE); if ((exceeded && in_sample) || log_duration || xact_is_sampled) { |