On Mon, Aug 3, 2015 at 11:52 AM, Alvaro Herrera
<alvherre@2ndquadrant.com> wrote:
> Simon Riggs wrote:
>> * For emergency anti-wraparound VACUUMs we shouldn't scan indexes at all,
>> since they aren't critical path activities at that point
>
> It is not possible to skip scanning indexes completely, unless no tuples
> are to be removed from the heap. Otherwise, index tuples become
> lingering pointers (and when such heap address are later refilled, they
> become corrupted indexscans).
Well, if we skip the index scans, we can't do the second heap pass
either, but that's OK. I think we're all talking about the same thing
here, which is to do only the first heap pass in some cases. That
will prune dead tuples to line pointers, freeze old XIDs, and mark
pages all-visible where appropriate.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company