Neil Conway <neilc@samurai.com> writes:
> Tom Lane wrote:
>> The code beginning at freelist.c line 645 is intended to deal with this.
> Ah, good point -- sorry, I missed that. The code as-is should be fine, then.
Well, one point is that the flag bit is checked elsewhere in the same
file without similar code to see if it's stale. I'm not sure if the
other places can be reached without having reached line 645 first.
I tend to agree with Alvaro that a cleaner approach would be to PG_TRY
around the places that can set the flag, and get rid of the cleanup
logic at line 645. We didn't have PG_TRY when that code was written,
but we do now ...
regards, tom lane