Re: pgsql: Add gin_clean_pending_list function to clean up GIN pending list

From: Fujii Masao <masao(dot)fujii(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Fujii Masao <fujii(at)postgresql(dot)org>, pgsql-committers <pgsql-committers(at)postgresql(dot)org>
Subject: Re: pgsql: Add gin_clean_pending_list function to clean up GIN pending list
Date: 2016-02-07 17:19:21
Message-ID: CAHGQGwFsWXyUJrQQ7KH59b7o+271SA3GFuzb9kzBkeVTQW-AgQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

On Sat, Feb 6, 2016 at 1:09 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> Fujii Masao <fujii(at)postgresql(dot)org> writes:
>> Add gin_clean_pending_list function to clean up GIN pending list
>
> The regression test case added by this commit is unstable, as per
> http://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=spoonbill&dt=2016-02-06%2000%3A00%3A06
>
> I imagine what happened there is that autovacuum came along and cleared
> the pending-list before the test query could.

Thanks for the report! Yes, that's possible. I'm thinking to disable
autovacuum for the index which pg_clean_pending_list() is working on
by setting autovacuum_enabled reloption when creating the table.
Patch attached. This patch also sets gin_pending_list_limit reloption
to 4MB, just to be safe, so that "make installcheck" will not fail
even when gin_pending_list_limit GUC is very small.

Barring objection, I'll push this patch.

Regards,

--
Fujii Masao

Attachment Content-Type Size
improve_gin_regression_test.patch application/octet-stream 1.6 KB

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2016-02-07 17:29:46 pgsql: ExecHashRemoveNextSkewBucket must physically copy tuples to main
Previous Message Robert Haas 2016-02-07 16:46:17 pgsql: Fix parallel-safety markings for pg_upgrade functions.