On 18 April 2016 at 12:43, Michael Paquier <michael.paqu...@gmail.com>
> On Sat, Apr 16, 2016 at 5:37 AM, Alvaro Herrera
> <alvhe...@2ndquadrant.com> wrote:
> > Andres Freund wrote:
> >> On 2016-04-15 15:26:17 -0400, Tom Lane wrote:
> >> > I think the bottom line is that we misdesigned the WAL representation
> >> > by assuming that this sort of info could always be piggybacked on a
> >> > transaction commit record. It's time to fix that.
> >> I think we got to piggyback it onto a commit record, as long as there's
> >> one. Otherwise it's going to be more complex (queuing messages when
> >> reading an inval record) and slower (more wal records). I can easily
> >> develop a patch for that, the question is what we do on the back
> >> branches...
> > We have introduced new wal records in back branches previously --
> > nothing new (c.f. 8e9a16ab8f7f0e5813644975cc3f336e5b064b6e). The user
> > just needs to make sure to upgrade the standbys first. If they don't,
> > they would die upon replay of the first such record, which they can take
> > as an indication that they need to be upgraded; the standby is down for
> > some time, but there is no data loss or corruption.
> Yeah, introducing a new WAL record to address this issue in
> back-branches would not be an issue, and that's what we should do. For
> HEAD, let's add that in the commit record.
(non-reply just because of travel)
OK, I'll write up a patch today to fix, with a view to backpatching.
Simon Riggs http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services