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: | Raw Message | Whole Thread | 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 |