pg_recvlogical prints bogus error when interrupted

Поиск
Список
Период
Сортировка
От Andres Freund
Тема pg_recvlogical prints bogus error when interrupted
Дата
Msg-id 20221019213953.htdtzikf4f45ywil@awork3.anarazel.de
обсуждение исходный текст
Ответы Re: pg_recvlogical prints bogus error when interrupted  (Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>)
Список pgsql-hackers
Hi,

While reviewing
https://postgr.es/m/CAD21AoBe2o2D%3Dxyycsxw2bQOD%3DzPj7ETuJ5VYGN%3DdpoTiCMRJQ%40mail.gmail.com
I noticed that pg_recvlogical prints
"pg_recvlogical: error: unexpected termination of replication stream: "

when signalled with SIGINT/TERM.

Oddly enough, that looks to have "always" been the case, even though clearly
the code tried to make provisions for a different outcome.


It looks to me like all that's needed is to gate the block printing the
message with an !time_to_abort.


I also then noticed that we don't fsync the output file in cases of errors -
that seems wrong to me? Looks to me like that block should be moved till after
the error:?

Greetings,

Andres Freund



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

Предыдущее
От: Peter Geoghegan
Дата:
Сообщение: Re: shared memory stats ideas
Следующее
От: Andres Freund
Дата:
Сообщение: Re: START_REPLICATION SLOT causing a crash in an assert build