Robert Haas escribió:
> I'm not quite sure how to do this in practice. One idea would be to
> record the catversion that created the relation in pg_class, and make
> pg_upgrade preserve the catversion, but make CLUSTER or similar bump
> it on successful completion. But I'm not sure if that covers all the
> cases we care about, or if requiring CLUSTER is too intrusive.
Wouldn't a table-wide vacuum remove those hint bits too? If so, just
letting the database live for a bit would get rid of them.
... it seems it doesn't, but I wonder why can't we just patch
heap_freeze_tuple to unset HEAP_MOVED if they are seen set and the
VACUUM FULL transaction is no longer running. In fact, it seems silly
not to.
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support