Move regression.diffs of pg_upgrade test suite

Поиск
Список
Период
Сортировка
От Noah Misch
Тема Move regression.diffs of pg_upgrade test suite
Дата
Msg-id 20181224034411.GA3224776@rfd.leadboat.com
обсуждение исходный текст
Ответы Re: Move regression.diffs of pg_upgrade test suite  (Andrew Dunstan <andrew.dunstan@2ndquadrant.com>)
Список pgsql-hackers
src/bin/pg_upgrade/test.sh runs installcheck, which writes to files in
src/test/regress.  This has at least two disadvantages when check-world runs
both this test suite and the "make check" suite:

1. The suite finishing second will overwrite the other's regression.{out,diffs}.
2. If these suites run a given test file in parallel (possible with "make -j
   check-world"), they simultaneously edit a file in src/test/regress/results.
   This can cause reporting of spurious failures.  On my system, the symptom
   is a regression.diffs indicating that the .out file contained ranges of NUL
   bytes (holes) and/or lacked expected lines.

A disadvantage of any change here is that it degrades buildfarm reports, which
recover slowly as owners upgrade to a fixed buildfarm release.  This will be
similar to the introduction of --outputdir=output_iso.  On non-upgraded
animals, pg_upgradeCheck failures will omit regression.diffs.

I think the right fix, attached, is to use "pg_regress --outputdir" to
redirect these files to src/bin/pg_upgrade/tmp_check/regress.  I chose that
particular path because it will still fit naturally if we ever rewrite test.sh
using src/test/perl.  I'm recommending that the buildfarm capture[1] files
matching src/bin/pg_upgrade/tmp_check/*/*.diffs, which will work even if we
make this test suite run installcheck more than once.  This revealed a few
places where tests assume @abs_builddir@ is getcwd(), which I fixed.

Thanks,
nm

[1] https://github.com/PGBuildFarm/client-code/blob/REL_9/PGBuild/Modules/TestUpgrade.pm#L126

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: David Rowley
Дата:
Сообщение: Re: Performance issue in foreign-key-aware join estimation
Следующее
От: Ian Barwick
Дата:
Сообщение: Minor comment fix for pg_config_manual.h