mirror of
https://github.com/postgres/postgres.git
synced 2025-07-28 23:42:10 +03:00
Change default of pg_stat_statements.track_planning to off.
Since v13 pg_stat_statements is allowed to track the planning time of statements when track_planning option is enabled. Its default was on. But this feature could cause more terrible spinlock contentions in pg_stat_statements. As a result of this, Robins Tharakan reported that v13 beta1 showed ~45% performance drop at high DB connection counts (when compared with v12.3) during fully-cached SELECT-only test using pgbench. To avoid this performance regression by the default setting, this commit changes default of pg_stat_statements.track_planning to off. Back-patch to v13 where pg_stat_statements.track_planning was introduced. Reported-by: Robins Tharakan Author: Fujii Masao Reviewed-by: Julien Rouhaud Discussion: https://postgr.es/m/2895b53b033c47ccb22972b589050dd9@EX13D05UWC001.ant.amazon.com
This commit is contained in:
@ -101,6 +101,8 @@
|
||||
</para>
|
||||
<para>
|
||||
Number of times the statement was planned
|
||||
(if <varname>pg_stat_statements.track_planning</varname> is enabled,
|
||||
otherwise zero)
|
||||
</para></entry>
|
||||
</row>
|
||||
|
||||
@ -110,6 +112,8 @@
|
||||
</para>
|
||||
<para>
|
||||
Total time spent planning the statement, in milliseconds
|
||||
(if <varname>pg_stat_statements.track_planning</varname> is enabled,
|
||||
otherwise zero)
|
||||
</para></entry>
|
||||
</row>
|
||||
|
||||
@ -119,6 +123,8 @@
|
||||
</para>
|
||||
<para>
|
||||
Minimum time spent planning the statement, in milliseconds
|
||||
(if <varname>pg_stat_statements.track_planning</varname> is enabled,
|
||||
otherwise zero)
|
||||
</para></entry>
|
||||
</row>
|
||||
|
||||
@ -128,6 +134,8 @@
|
||||
</para>
|
||||
<para>
|
||||
Maximum time spent planning the statement, in milliseconds
|
||||
(if <varname>pg_stat_statements.track_planning</varname> is enabled,
|
||||
otherwise zero)
|
||||
</para></entry>
|
||||
</row>
|
||||
|
||||
@ -137,6 +145,8 @@
|
||||
</para>
|
||||
<para>
|
||||
Mean time spent planning the statement, in milliseconds
|
||||
(if <varname>pg_stat_statements.track_planning</varname> is enabled,
|
||||
otherwise zero)
|
||||
</para></entry>
|
||||
</row>
|
||||
|
||||
@ -145,7 +155,10 @@
|
||||
<structfield>stddev_plan_time</structfield> <type>double precision</type>
|
||||
</para>
|
||||
<para>
|
||||
Population standard deviation of time spent planning the statement, in milliseconds
|
||||
Population standard deviation of time spent planning the statement,
|
||||
in milliseconds
|
||||
(if <varname>pg_stat_statements.track_planning</varname> is enabled,
|
||||
otherwise zero)
|
||||
</para></entry>
|
||||
</row>
|
||||
|
||||
@ -594,7 +607,7 @@
|
||||
<para>
|
||||
<varname>pg_stat_statements.track_planning</varname> controls whether
|
||||
planning operations and duration are tracked by the module.
|
||||
The default value is <literal>on</literal>.
|
||||
The default value is <literal>off</literal>.
|
||||
Only superusers can change this setting.
|
||||
</para>
|
||||
</listitem>
|
||||
|
Reference in New Issue
Block a user