On 2020/07/03 16:02, Pavel Stehule wrote:
pá 3. 7. 2020 v 8:57 odesílatel Fujii Masao <masao.fu...@oss.nttdata.com <mailto:masao.fu...@oss.nttdata.com>> napsal: On 2020/07/03 13:05, Pavel Stehule wrote: > Hi > > pá 3. 7. 2020 v 4:39 odesílatel Fujii Masao <masao.fu...@oss.nttdata.com <mailto:masao.fu...@oss.nttdata.com> <mailto:masao.fu...@oss.nttdata.com <mailto:masao.fu...@oss.nttdata.com>>> napsal: > > > > On 2020/07/01 7:37, Peter Geoghegan wrote: > > On Tue, Jun 30, 2020 at 6:40 AM Fujii Masao <masao.fu...@oss.nttdata.com <mailto:masao.fu...@oss.nttdata.com> <mailto:masao.fu...@oss.nttdata.com <mailto:masao.fu...@oss.nttdata.com>>> wrote: > >> Ants and Andres suggested to replace the spinlock used in pgss_store() with > >> LWLock. I agreed with them and posted the POC patch doing that. But I think > >> the patch is an item for v14. The patch may address the reported performance > >> issue, but may cause other performance issues in other workloads. We would > >> need to measure how the patch affects the performance in various workloads. > >> It seems too late to do that at this stage of v13. Thought? > > > > I agree that it's too late for v13. > > Thanks for the comment! > > So I pushed the patch and changed default of track_planning to off. > > > Maybe there can be documented so enabling this option can have a negative impact on performance. Yes. What about adding either of the followings into the doc? Enabling this parameter may incur a noticeable performance penalty. or Enabling this parameter may incur a noticeable performance penalty, especially when a fewer kinds of queries are executed on many concurrent connections. This second variant looks perfect for this case.
Ok, so patch attached. Regards, -- Fujii Masao Advanced Computing Technology Center Research and Development Headquarters NTT DATA CORPORATION
diff --git a/doc/src/sgml/pgstatstatements.sgml b/doc/src/sgml/pgstatstatements.sgml index 430d8bf07c..cf2d25b7b2 100644 --- a/doc/src/sgml/pgstatstatements.sgml +++ b/doc/src/sgml/pgstatstatements.sgml @@ -607,6 +607,9 @@ <para> <varname>pg_stat_statements.track_planning</varname> controls whether planning operations and duration are tracked by the module. + Enabling this parameter may incur a noticeable performance penalty, + especially when a fewer kinds of queries are executed on many + concurrent connections. The default value is <literal>off</literal>. Only superusers can change this setting. </para>