pgsql: Add test case for obsoleting slot with active walsender, take 2

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема pgsql: Add test case for obsoleting slot with active walsender, take 2
Дата
Msg-id E1lw3P4-0001aD-5S@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Add test case for obsoleting slot with active walsender, take 2

The code to signal a running walsender when its reserved WAL size grows
too large is completely uncovered before this commit; this adds coverage
for that case.

This test involves sending SIGSTOP to walsender and walreceiver, then
advancing enough WAL for a checkpoint to trigger, then sending SIGCONT.

There's no precedent for STOP signalling in Perl tests, and my reading
of relevant manpages says it's likely to fail on Windows.  Because of
this, this test is always skipped on that platform.

This version fixes a couple of rarely hit race conditions in the
previous attempt 09126984a263; most notably, both LOG string searches
are loops, not just the second one; we acquire the start-of-log position
before STOP-signalling; and reference the correct process name in the
test description.  All per Tom Lane.

Author: Álvaro Herrera <alvherre@alvh.no-ip.org>
Discussion: https://postgr.es/m/202106102202.mjw4huiix7lo@alvherre.pgsql

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/24043c27b46f873211177e3460ab09dc011802a5

Modified Files
--------------
src/test/recovery/t/019_replslot_limit.pl | 97 ++++++++++++++++++++++++++++++-
1 file changed, 94 insertions(+), 3 deletions(-)


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Use annotations to reduce instability of isolation-test results.
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Improve display of query results in isolation tests.