Re: pgsql: pg_surgery: Try to stabilize regression tests.
От | Michael Paquier |
---|---|
Тема | Re: pgsql: pg_surgery: Try to stabilize regression tests. |
Дата | |
Msg-id | 20200920133905.GA18931@paquier.xyz обсуждение исходный текст |
Ответ на | pgsql: pg_surgery: Try to stabilize regression tests. (Robert Haas <rhaas@postgresql.org>) |
Ответы |
Re: pgsql: pg_surgery: Try to stabilize regression tests.
|
Список | pgsql-committers |
On Fri, Sep 18, 2020 at 05:27:06PM +0000, Robert Haas wrote: > pg_surgery: Try to stabilize regression tests. > > According to buildfarm member sungazer, the behavior of VACUUM can be > unstable in these tests even if we prevent autovacuum from running on > the tables in question, apparently because even a manual vacuum can > behave differently depending on whether anything else is running that > holds back the global xmin. So use a temporary table instead, which > as of commit a7212be8b9e0885ee769e8c55f99ef742cda487b enables > vacuuming using a more aggressive cutoff. > > This approach can't be used for the regression test that involves a > materialized view, but that test doesn't run vacuum, so it shouldn't > be prone to this particular failure mode. > > Analysis by Tom Lane. Patch by Ashutosh Sharma and me. rorqual has just reported an issue here: https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=rorqual&dt=2020-09-20%2011%3A20%3A11 vacuum freeze htab2; +ERROR: cannot freeze committed xmax 23257 +CONTEXT: while scanning block 0 and offset 2 of relation "pg_temp_3.htab2" -- unused TIDs should be skipped select heap_force_kill('htab2'::regclass, ARRAY['(0, 2)']::tid[]); -NOTICE: skipping tid (0, 2) for relation "htab2" because it is marked unused -- Michael
Вложения
В списке pgsql-committers по дате отправления: