On Sat, 2010-01-30 at 15:17 -0500, Tom Lane wrote:
> Simon Riggs <simon@2ndQuadrant.com> writes:
> > The last item on my list before close is making VACUUM FULL and Hot
> > Standby play nicely together.
>
> > The options to do this were and still are:
>
> > (1) Add WAL messages for non-transactional relcache invalidations
> > (2) Allow system relations to be cluster-ed/vacuum full-ed.
>
> > (1) was how we did it originally and I believe it worked without
> > problem. We saw the opportunity to do (2) and it has been worth
> > exploring.
>
> Refresh my memory on why (1) lets us avoid fixing (2)?
(1) allows us to retain VACUUM FULL INPLACE for system relations, thus
avoiding the need to do (2). Non-transactional invalidations need to be
replayed in recovery for the same reason they exist on the primary.
> It sounds like a kluge at best ...
(2) isn't a necessary change right now. It is the best design going
forwards, but its burst radius stretches far beyond Hot Standby. There
is enough code in HS for us to support, so adding to it makes little
sense for me, in this release, since there is no functional benefit in
doing so.
-- Simon Riggs www.2ndQuadrant.com