Re: Questions/Observations related to Gist vacuum
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: Dilip Kumar <dilipbalaut@gmail.com>
Cc: Heikki Linnakangas <hlinnaka@iki.fi>,
Andrey Borodin <x4mmm@yandex-team.ru>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2019-10-22T05:23:45Z
Lists: pgsql-hackers
On Tue, Oct 22, 2019 at 10:50 AM Dilip Kumar <dilipbalaut@gmail.com> wrote:
>
> On Tue, Oct 22, 2019 at 9:10 AM Amit Kapila <amit.kapila16@gmail.com> wrote:
> >
> > On Fri, Oct 18, 2019 at 4:51 PM Dilip Kumar <dilipbalaut@gmail.com> wrote:
> > >
> > > I have prepared a first version of the patch. Currently, I am
> > > performing an empty page deletion for all the cases.
> > >
> >
> > Few comments:
> > ----------------------
> > 1.
> > -/*
> > - * State kept across vacuum stages.
> > - */
> > typedef struct
> > {
> > - IndexBulkDeleteResult stats; /* must be first */
> > + IndexBulkDeleteResult *stats; /* kept across vacuum stages. */
> >
> > /*
> > - * These are used to memorize all internal and empty leaf pages in the 1st
> > - * vacuum stage. They are used in the 2nd stage, to delete all the empty
> > - * pages.
> > + * These are used to memorize all internal and empty leaf pages. They are
> > + * used for deleting all the empty pages.
> > */
> > IntegerSet *internal_page_set;
> > IntegerSet *empty_leaf_set;
> >
> > Now, if we don't want to share the remaining stats across
> > gistbulkdelete and gistvacuumcleanup, isn't it better to keep the
> > information of internal and empty leaf pages as part of GistVacState?
>
> Basically, only IndexBulkDeleteResult is now shared across the stage
> so we can move all members to GistVacState and completely get rid of
> GistBulkDeleteResult?
>
Yes, something like that would be better. Let's try and see how it comes out.
--
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com
Commits
-
Delete empty pages in each pass during GIST VACUUM.
- 4e514c6180fb 13.0 landed
-
Fix memory leak introduced in commit 7df159a620.
- 62f4dd3796da 12.1 landed
- 70a6c37d524c 13.0 landed
-
Delete empty pages during GiST VACUUM.
- 7df159a620b7 12.0 cited