Fix handling of empty uncompressed posting list pages in GIN
Alexander Korotkov <akorotkov@postgresql.org>
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
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/access/gin/gindatapage.c | modified | +12 −8 |
| src/backend/access/gin/ginxlog.c | modified | +21 −6 |
Discussion
- Bug in gin insert redo code path during re-compression of empty gin data leaf pages 8 messages · 2018-07-17 → 2018-07-19