pgsql: Fix broken cleanup interlock for GIN pending list.

From: Robert Haas <rhaas(at)postgresql(dot)org>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Fix broken cleanup interlock for GIN pending list.
Date: 2017-11-16 20:29:07
Message-ID: E1eFQmZ-0001na-6G@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix broken cleanup interlock for GIN pending list.

The pending list must (for correctness) always be cleaned up by vacuum, and
should (for the avoidance of surprising behavior) always be cleaned up
by an explicit call to gin_clean_pending_list, but cleanup is optional
when inserting. The old logic got this backward: cleanup was forced
if (stats == NULL), but that's going to be *false* when vacuuming and
*true* for inserts.

Masahiko Sawada, reviewed by me.

Discussion: http://postgr.es/m/CAD21AoBLUSyiYKnTYtSAbC+F=XDjiaBrOUEGK+zUXdQ8owfPKw@mail.gmail.com

Branch
------
REL_10_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/c8df4831ef212b9028824d1b5de558973c110c77

Modified Files
--------------
src/backend/access/gin/ginfast.c | 14 +++++++++-----
src/backend/access/gin/ginvacuum.c | 6 +++---
src/include/access/gin_private.h | 2 +-
3 files changed, 13 insertions(+), 9 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Robert Haas 2017-11-16 20:36:26 pgsql: Remove redundant line from Makefile.
Previous Message Robert Haas 2017-11-16 19:18:00 pgsql: Fix typo in comment.