On Mon, Oct 2, 2023 at 04:48:20AM +0200, Laurenz Albe wrote: > On Fri, 2023-09-29 at 22:34 -0400, Bruce Momjian wrote: > > Very good point! Updated patch attached. > > Thanks! Some small corrections: > > > diff --git a/doc/src/sgml/maintenance.sgml b/doc/src/sgml/maintenance.sgml > > index 9cf9d030a8..be1c522575 100644 > > --- a/doc/src/sgml/maintenance.sgml > > +++ b/doc/src/sgml/maintenance.sgml > > @@ -861,10 +861,16 @@ analyze threshold = analyze base threshold + analyze > > scale factor * number of tu > > </para> > > > > <para> > > - Partitioned tables are not processed by autovacuum. Statistics > > - should be collected by running a manual <command>ANALYZE</command> > > when it is > > - first populated, and again whenever the distribution of data in its > > - partitions changes significantly. > > + Partitioned tables do not directly store tuples and consequently > > + autovacuum does not <command>VACUUM</command> them. (Autovacuum does > > ... does not <command>VACUUM</command> or <command>ANALYZE</command> them. > > Perhaps it would be shorter to say "does not process them" like the > original wording. > > > + perform <command>VACUUM</command> on table partitions just like other > > Just like *on* other tables, right?
Good points, updated patch attached. -- Bruce Momjian <br...@momjian.us> https://momjian.us EDB https://enterprisedb.com Only you can decide what is important to you.
diff --git a/doc/src/sgml/maintenance.sgml b/doc/src/sgml/maintenance.sgml index 9cf9d030a8..3018d8f64c 100644 --- a/doc/src/sgml/maintenance.sgml +++ b/doc/src/sgml/maintenance.sgml @@ -861,10 +861,15 @@ analyze threshold = analyze base threshold + analyze scale factor * number of tu </para> <para> - Partitioned tables are not processed by autovacuum. Statistics - should be collected by running a manual <command>ANALYZE</command> when it is - first populated, and again whenever the distribution of data in its - partitions changes significantly. + Partitioned tables do not directly store tuples and consequently + are not processed by autovacuum. (Autovacuum does process table + partitions just like other tables.) Unfortunately, this means that + autovacuum does not run <command>ANALYZE</command> on partitioned + tables, and this can cause suboptimal plans for queries that reference + partitioned table statistics. You can work around this problem by + manually running <command>ANALYZE</command> on partitioned tables + when they are first populated, and again whenever the distribution + of data in their partitions changes significantly. </para> <para>