On 2017-09-02 18:31:10 -0400, Tom Lane wrote: > Andres Freund <and...@anarazel.de> writes: > > I don't quite see how you'd get corruption from a physical slot being > > forwarded? I mean you surely can get into the situation that there's > > missing WAL from wherever a standby is receiving its WAL, but that'll > > "just" break replication. > > Um, doesn't advancing a slot correspond exactly to skipping some amount > of WAL?
Not for physical ones, no. The slot is just a marker on the *upstream* (or a potential upstream) that remembers a standby's current WAL replay position and, if enabled, it's current xmin. The prevents the upstream to remove the WAL that the standby still need and if applicable vacuum from removing rows the standby needs. If the slot is at the wrong position exactly the same things that can happen if no slot were in use can also happen, i.e. "ERROR: requested WAL segment %s has already been removed". For logical replication such a forward operation would have to be *more* complicated than for physical rep, because the state that's kept is more complicated... - Andres -- Sent via pgsql-hackers mailing list (firstname.lastname@example.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers