| From: | yuzuko <yuzukohosoya(at)gmail(dot)com> | 
|---|---|
| To: | Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> | 
| Cc: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Greg Stark <stark(at)mit(dot)edu> | 
| Subject: | Re: Autovacuum on partitioned table | 
| Date: | 2019-12-02 09:42:22 | 
| Message-ID: | CAKkQ508KFkrrEKSX52zmKJ9WfnpygCBXdi5yJrRO7JtE+EfuXQ@mail.gmail.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Hi Laurenz,
Thanks for the comments.
On Mon, Dec 2, 2019 at 6:19 PM Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> wrote:
>
> On Mon, 2019-12-02 at 18:02 +0900, yuzuko wrote:
> > Greg reported in [1] before, autovacuum ignores partitioned tables.
> > That is, even if individual partitions’ statistics are updated, its parent's
> > statistics are not updated.  This is TODO for declarative partitioning.
> > As Amit mentioned in [2], a way to make parent's statistics from
> > partitions' statistics without scanning the partitions would be nice,
> > but it will need a lot of modifications.  So I tried to fix that using the
> > current analyze method.
> >
> > The summary of the attached patch is as follows:
> > * If the relation is a partitioned table, check its children if they need
> >   vacuum or analyze.  Children need to do that are added to
> >   a table list for autovacuuum.  At least one child is added to the list,
> >   the partitioned table is also added to the list.  Then, autovacuum
> >   runs on all the tables in the list.
>
> That means that all partitions are vacuumed if only one of them needs it,
> right?  This will result in way more vacuuming than necessary.
>
Autovacuum runs only partitions need vacuum/analyze, so unnecessary
partitions stats are not updated.  However, to make parent's stats,
all children are scanned.  It might be a waste of time.
> Wouldn't it be an option to update the partitioned table's statistics
> whenever one of the partitions is vacuumed?
>
> Yours,
> Laurenz Albe
>
-- 
Best regards,
Yuzuko Hosoya
NTT Open Source Software Center
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Konstantin Knizhnik | 2019-12-02 09:55:57 | Re: Global temporary tables | 
| Previous Message | Alexey Kondratov | 2019-12-02 09:41:03 | Re: Allow CLUSTER, VACUUM FULL and REINDEX to change tablespace on the fly |