aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/gist/gistproc.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2009-09-15 20:31:30 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2009-09-15 20:31:30 +0000
commit384cad5c7b773da29c26fc08a7c969b35c94cb54 (patch)
treed00eb0a076f6b1d74571f8e04b3c1df8a33ea18d /src/backend/access/gist/gistproc.c
parentf3ef948592694f0015bc7f056bcdd687d6c67bfe (diff)
downloadpostgresql-384cad5c7b773da29c26fc08a7c969b35c94cb54.tar.gz
postgresql-384cad5c7b773da29c26fc08a7c969b35c94cb54.zip
Fix two distinct errors in creation of GIN_INSERT_LISTPAGE xlog records.
In practice these mistakes were always masked when full_page_writes was on, because XLogInsert would always choose to log the full page, and then ginRedoInsertListPage wouldn't try to do anything. But with full_page_writes off a WAL replay failure was certain. The GIN_INSERT_LISTPAGE record type could probably be eliminated entirely in favor of using XLOG_HEAP_NEWPAGE, but I refrained from doing that now since it would have required a significantly more invasive patch. In passing do a little bit of code cleanup, including making the accounting for free space on GIN list pages more precise. (This wasn't a bug as the errors were always in the conservative direction.) Per report from Simon. Back-patch to 8.4 which contains the identical code.
Diffstat (limited to 'src/backend/access/gist/gistproc.c')
0 files changed, 0 insertions, 0 deletions