Ron Johnson <ron.l.johnson@cox.net> writes:
> I think changes in the system catalog should be separated from
> changes in the physical on-disk structures (i.e. how tables and
> indexes are stored).
We already know how to cope with changes in the system catalogs ---
pg_upgrade has pretty much proved out how to do that. The original
shell-script implementation wasn't bulletproof enough for production use
(IMHO anyway), but that's because it was an experimental prototype, not
because there was anything fundamentally wrong with the concept.
The hard part is dealing with mostly-unforeseeable future changes in
our needs for representation of user data. We can and already have done
some simple things like include version numbers in page headers, but it
would be a fatal mistake to suppose that that means the problem is
solved, or that actually doing in-place upgrades won't require a
tremendous amount of additional work.
regards, tom lane