pgsql: Fix handling of empty uncompressed posting list pages in GIN - Mailing list pgsql-committers

From Alexander Korotkov
Subject pgsql: Fix handling of empty uncompressed posting list pages in GIN
Date
Msg-id E1fgFXY-0007Rb-Hf@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix handling of empty uncompressed posting list pages in GIN

PostgreSQL 9.4 introduces posting list compression in GIN.  This feature
supports online upgrade, so that after pg_upgrade uncompressed posting
lists are compressed on-the-fly.  Underlying code appears to always
expect at least one item on uncompressed posting list page.  But there
could be completely empty pages, because VACUUM never deletes leftmost
and rightmost pages from posting trees.  This commit fixes that.

Reported-by: Sivasubramanian Ramasubramanian
Discussion: https://postgr.es/m/1531867212836.63354%40amazon.com
Author: Sivasubramanian Ramasubramanian, Alexander Korotkov
Backpatch-through: 9.4

Branch
------
REL_11_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/608793266dbbc4f9064e6737ab3363adf9584892

Modified Files
--------------
src/backend/access/gin/gindatapage.c | 20 ++++++++++++--------
src/backend/access/gin/ginxlog.c     | 27 +++++++++++++++++++++------
2 files changed, 33 insertions(+), 14 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Remove undocumented restriction against duplicate partitionkey
Next
From: Michael Paquier
Date:
Subject: pgsql: Add toast tables to most system catalogs