On Sun, Jan 12, 2014 at 12:48:40PM -0500, Tom Lane wrote: > Bruce Momjian <br...@momjian.us> writes: > > On Sat, Jan 11, 2014 at 12:48:51PM -0800, Adrian Klaver wrote: > >> I see, though I have another question. If pg_tablespace and the > >> symlinks can get out of sync, as you say below, why is pg_tablespace > >> considered the authority? Or to put it another way, why not just > >> look at the symlinks as in 9.2+? > > > Uh, good question. I think I used the system tables because they were > > easier to access. I can't remember if we used the symlinks for some > > things and pg_tablespace for other things in pre-9.2. > > Well, pre-9.2 pg_dumpall is going to make use of the pg_tablespace > entries, because it has no other choice. We could conceivably teach > pg_upgrade to look at the symlinks for itself, but we're not going > to do that in pg_dumpall. Which means that the intermediate dump > script would contain inconsistent location values anyway if the > catalog entries are wrong. So I don't see any value in changing the > quoted code in pg_upgrade.
OK, agreed. > It does however seem reasonable for pg_upgrade to note whether any > of the paths are prefixed by old PGDATA and warn about the risks > involved. Uh, the problem is that once you rename the old PGDATA, the pg_tablespace contents no longer point to the current PGDATA. The symlinks, if they used absolute paths, wouldn't point to the current PGDATA either. -- Bruce Momjian <br...@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + Everyone has their own god. + -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers