On Sun, May 12, 2013 at 8:50 AM, Andres Freund <andres@2ndquadrant.com> wrote:
> [ a response that I entirely agree with ]
+1 to all that.
It's maybe worth noting that it's probably fairly uncommon for vacuum
to read a page and not dirty it, because if the page is all-visible,
we won't read it. And if it's not all-visible, and there's nothing
else interesting to do with it, we'll probably make it all-visible,
which will dirty it. It can happen, if for example we vacuum a page
with no dead tuples while the inserting transaction is still running,
or committed but not yet all-visible. Of course, in those cases we
won't be able to freeze, either.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company