Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes:
> With our new tablespace set up, is it ever possible for someone to move
> pg_largeobject to another tablespace?
Assuming that ALTER TABLE SET TABLESPACE gets in, my preferred answer is
to apply that operation to pg_largeobject.
We do need to think a bit about what the safety constraints on ALTER
TABLE SET TABLESPACE should be. To allow the above, we cannot
completely forbid moving system catalogs. However, it will not work
to allow moving *every* system catalog ... for instance, if you were to
move pg_class itself, things would be more than slightly broken, because
the backend could not find pg_class to learn where the system catalogs
are.
It might be that we only need to forbid moving the "nailed" system
relations, but I haven't thought it through yet.
If nothing else comes to mind, a reasonable compromise for 7.5 would be
to forbid moving any system catalog except pg_largeobject and its
indexes ...
regards, tom lane