]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Fix crash in WAL sender when starting physical replication
authorMichael Paquier <michael@paquier.xyz>
Mon, 8 Jun 2020 01:12:31 +0000 (10:12 +0900)
committerMichael Paquier <michael@paquier.xyz>
Mon, 8 Jun 2020 01:12:31 +0000 (10:12 +0900)
commit10ffe0fa72ed895a3c18aef2d3950b480e810e13
tree8113d40a0c15d0b59a4dfa0f2e71f540e1de28a1
parent9b5f85fb0a3e27040bc72451893d2dc35bb5d8bd
Fix crash in WAL sender when starting physical replication

Since database connections can be used with WAL senders in 9.4, it is
possible to use physical replication.  This commit fixes a crash when
starting physical replication with a WAL sender using a database
connection, caused by the refactoring done in 850196b.

There have been discussions about forbidding the use of physical
replication in a database connection, but this is left for later,
taking care only of the crash new to 13.

While on it, add a test to check for a failure when attempting logical
replication if the WAL sender does not have a database connection.  This
part is extracted from a larger patch by Kyotaro Horiguchi.

Reported-by: Vladimir Sitnikov
Author: Michael Paquier, Kyotaro Horiguchi
Reviewed-by: Kyotaro Horiguchi, Álvaro Herrera
Discussion: https://postgr.es/m/CAB=Je-GOWMj1PTPkeUhjqQp-4W3=nW-pXe2Hjax6rJFffB5_Aw@mail.gmail.com
Backpatch-through: 13
src/backend/access/transam/xlogreader.c
src/backend/replication/walsender.c
src/include/access/xlogreader.h
src/test/recovery/t/006_logical_decoding.pl