"Justin Pasher" <justinp@newmediagateway.com> writes:
>> From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
>> Anyway, it happens consistently on my HP box. I find that your proposed
>> patch fixes it, but makes the "normal" path crash :-( --- the loop in
>> do_autovacuum has to be executed in AutovacMemCxt, because it creates an
>> Oid List that gets passed to vacuum() and had better not be in a
>> transaction-lifetime context. The attached modified patch works for me.
> I tried both Alvaro's patch and your patch, and I actually got the same
> results from both.
Alvaro's patch would most likely not crash in a non-assert-enabled
build, since the list wouldn't be physically damaged when the containing
context got freed. But obviously that's a risky thing ...
regards, tom lane