Alvaro Herrera <alvherre@2ndquadrant.com> writes:
> I disagree with this assessment, and propose the attached patch instead.
+1 for this approach in HEAD ...
> This is the patch for the master branch; I have not tried to backpatch
> it yet. Conflicts are expected due to the refactoring of ALTER commands
> by KaiGai.
... but I'm worried that you'd need a substantially larger patch in back
branches, and accordingly I'm not sure this is what to do in the back
branches. Without that refactoring, you might need to duplicate more
code, so it might be safer to just revert as Jeff suggested.
The documentation also needs more work than what you suggest in your
followup. The command reference pages should explicitly say that they
operate on both objects in the current database and shared objects.
Explicitly defining shared objects as databases and tablespaces
wouldn't hurt any.
It also strikes me that where you suggest "Because REASSIGN OWNED does
not affect objects in other databases ...", it might be clearer to say
"Because REASSIGN OWNED does not affect objects within other databases
...", which makes the idea of containment a little stronger.
regards, tom lane