Re: Refactor recovery conflict signaling a little

Поиск
Список
Период
Сортировка
От Alexander Lakhin
Тема Re: Refactor recovery conflict signaling a little
Дата
Msg-id c776c784-695a-4357-b788-f4d3ca5c5fa1@gmail.com
обсуждение исходный текст
Ответ на Re: Refactor recovery conflict signaling a little  (Heikki Linnakangas <hlinnaka@iki.fi>)
Ответы Re: Refactor recovery conflict signaling a little
Список pgsql-hackers
Hello Heikki,

10.02.2026 16:32, Heikki Linnakangas wrote:
> On 03/02/2026 15:31, Heikki Linnakangas wrote:
>> Attached are new versions of the remaining patches, with the above and the typo and whitespace fixes that you
pointed
 
>> out.
>
> I hear no objectons, so committed. Thanks for the review!

Could you please look at a new failure of 035_standby_logical_decoding.pl
produced at buildfarm [1]?:
[05:34:51.345](233.134s) # poll_query_until timed out executing this query:
# SELECT '0/0403F950' <= replay_lsn AND state = 'streaming'
#          FROM pg_catalog.pg_stat_replication
#          WHERE application_name IN ('standby', 'walreceiver')
# expecting this output:
# t
# last actual query output:
# f
# with stderr:

035_standby_logical_decoding_standby.log contains:
2026-02-24 05:30:58.300 CET [1512377][client backend][:0] LOG: disconnection: session time: 0:00:00.035 user=bf 
database=testdb host=[local]
2026-02-24 05:30:58.425 CET [1507982][startup][32/0:0] LOG: invalidating obsolete replication slot 
"row_removal_inactiveslot"
2026-02-24 05:30:58.425 CET [1507982][startup][32/0:0] DETAIL:  The slot conflicted with xid horizon 748.
2026-02-24 05:30:58.425 CET [1507982][startup][32/0:0] CONTEXT:  WAL redo at 0/040214F0 for Heap2/PRUNE_ON_ACCESS: 
snapshotConflictHorizon: 748, isCatalogRel: T, nplans: 0, nredirected: 0, ndead: 3, nunused: 1, dead: [33, 34, 35], 
unused: [36]; blkref #0: rel 1663/16384/16418, blk 10
2026-02-24 05:30:58.425 CET [1507982][startup][32/0:0] LOG: terminating process 1512360 to release replication slot 
"row_removal_activeslot"
2026-02-24 05:30:58.425 CET [1507982][startup][32/0:0] DETAIL:  The slot conflicted with xid horizon 748.
2026-02-24 05:30:58.425 CET [1507982][startup][32/0:0] CONTEXT:  WAL redo at 0/040214F0 for Heap2/PRUNE_ON_ACCESS: 
snapshotConflictHorizon: 748, isCatalogRel: T, nplans: 0, nredirected: 0, ndead: 3, nunused: 1, dead: [33, 34, 35], 
unused: [36]; blkref #0: rel 1663/16384/16418, blk 10
2026-02-24 05:34:51.400 CET [1508227][walreceiver][:0] FATAL:  could not receive data from WAL stream: server closed
the
 
connection unexpectedly
         This probably means the server terminated abnormally
         before or while processing the request.

The "terminating process ..." message doesn't appear when the test passes
successfully.

I've managed to reproduce this with multiple (20) test instances running
in a loop (it failed within 10 iterations for me); `git bisect` for this
anomaly pointed at 17f51ea81.

[1] https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=serinus&dt=2026-02-24%2004%3A28%3A36

Best regards,
Alexander



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