Remove useless code from CreateReplicationSlot.
authorRobert Haas <rhaas@postgresql.org>
Mon, 25 Oct 2021 14:57:12 +0000 (10:57 -0400)
committerRobert Haas <rhaas@postgresql.org>
Mon, 25 Oct 2021 14:57:12 +0000 (10:57 -0400)
commit902a2c280012557b85c7e0fce3f6f0e355cb2d69
treed7bf0841efbe085c4e01b34980da2e4515519c8f
parent18e0913a420349d373cfd8e45b91b4777501fb74
Remove useless code from CreateReplicationSlot.

According to the comments, we initialize sendTimeLineIsHistoric
and sendTimeLine here for the benefit of WalSndSegmentOpen.
However, the only way that can happen is if logical_read_xlog_page
calls WALRead. And since logical_read_xlog_page initializes the
same global variables internally, we don't need to also do it here.

These initializations have been here since replication slots were
introduced in commit 858ec11858a914d4c380971985709b6d6b7dd6fc. They
were certainly useless at that time, too, because logical decoding
didn't yet exist then, and physical replication doesn't examine any
WAL at the time of slot creation. I haven't checked all the
intermediate versions, but I suspect there's no point at which
this code ever did anything useful.

To reduce future confusion, remove the code. Since there's no
functional defect, no back-patch.

Discussion: http://postgr.es/m/CA+TgmobSWzacEs+r6C-7DrOPDHoDar4i9gzxB3SCBr5qjnLmVQ@mail.gmail.com
src/backend/replication/walsender.c