diff options
author | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2013-10-23 14:03:54 +0300 |
---|---|---|
committer | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2013-10-23 14:25:43 +0300 |
commit | f90d7426ed3605ab925910a387783163763833fa (patch) | |
tree | b6ef0e0f6271562f33a474ab55d98b03e09dc216 /src/backend/access/spgist/spginsert.c | |
parent | 627f2165666cf30d011a8702750659c0cf9ca312 (diff) | |
download | postgresql-f90d7426ed3605ab925910a387783163763833fa.tar.gz postgresql-f90d7426ed3605ab925910a387783163763833fa.zip |
Fix two bugs in setting the vm bit of empty pages.
Use a critical section when setting the all-visible flag on an empty page,
and WAL-logging it. log_newpage_buffer() contains an assertion that it
must be called inside a critical section, and it's the right thing to do
when modifying a buffer anyway.
Also, the page should be marked dirty before calling log_newpage_buffer(),
per the comment in log_newpage_buffer() and src/backend/access/transam/README.
Patch by Andres Freund, in response to my report. Backpatch to 9.2, like
the patch that introduced these bugs (a6370fd9).
Diffstat (limited to 'src/backend/access/spgist/spginsert.c')
0 files changed, 0 insertions, 0 deletions