Re: recovering from "found xmin ... from before relfrozenxid ..."
| От | Tom Lane |
|---|---|
| Тема | Re: recovering from "found xmin ... from before relfrozenxid ..." |
| Дата | |
| Msg-id | 686987.1600527170@sss.pgh.pa.us обсуждение |
| Ответ на | Re: recovering from "found xmin ... from before relfrozenxid ..." (Amit Kapila <amit.kapila16@gmail.com>) |
| Ответы |
Re: recovering from "found xmin ... from before relfrozenxid ..."
|
| Список | pgsql-hackers |
Amit Kapila <amit.kapila16@gmail.com> writes:
> I think our assumption that changing the tests to have temp tables
> will make them safe w.r.t concurrent activity doesn't seem to be
> correct. We do set OldestXmin for temp tables aggressive enough that
> it allows us to remove all dead tuples but the test case behavior lies
> on whether we are able to prune the chain. AFAICS, we are using
> different cut-offs in heap_page_prune when it is called via
> lazy_scan_heap. So that seems to be causing both the failures.
Hm, reasonable theory.
I was able to partially reproduce whelk's failure here. I got a
couple of cases of "cannot freeze committed xmax", which then leads
to the second NOTICE diff; but I couldn't reproduce the first
NOTICE diff. That was out of about a thousand tries :-( so it's not
looking like a promising thing to reproduce without modifying the test.
I wonder whether "cannot freeze committed xmax" doesn't represent an
actual bug, ie is a7212be8b setting the cutoff *too* aggressively?
But if so, why's it so hard to reproduce?
regards, tom lane
В списке pgsql-hackers по дате отправления: