Commit 7e4911b2 authored by Robert Haas's avatar Robert Haas

Fix variable confusion in BufferSync().

As noted by Heikki Linnakangas, the previous coding confused the "flags"
variable with the "mask" variable.  The affect of this appears to be that
unlogged buffers would get written out at every checkpoint rather than
only at shutdown time.  Although that's arguably an acceptable failure
mode, I'm back-patching this change, since it seems like a poor idea to
rely on this happening to work.
parent bd0e74a9
......@@ -1191,7 +1191,7 @@ BufferSync(int flags)
* buffers. But at shutdown time, we write all dirty buffers.
*/
if (!(flags & CHECKPOINT_IS_SHUTDOWN))
flags |= BM_PERMANENT;
mask |= BM_PERMANENT;
/*
* Loop over all buffers, and mark the ones that need to be written with
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment