Allow SET TABLESPACE to database default
authorStephen Frost
Sat, 18 Jan 2014 23:41:52 +0000 (18:41 -0500)
committerStephen Frost
Sat, 18 Jan 2014 23:49:41 +0000 (18:49 -0500)
commit1fe06595ab9124e47a6d7935e1796e7c31c03c1f
tree378c296da723fa0b0e9c66e30c799e6b07e9d2da
parent526e38751a984ad2790246b5264a26c227ef0af8
Allow SET TABLESPACE to database default

We've always allowed CREATE TABLE to create tables in the database's default
tablespace without checking for CREATE permissions on that tablespace.
Unfortunately, the original implementation of ALTER TABLE ... SET TABLESPACE
didn't pick up on that exception.

This changes ALTER TABLE ... SET TABLESPACE to allow the database's default
tablespace without checking for CREATE rights on that tablespace, just as
CREATE TABLE works today.  Users could always do this through a series of
commands (CREATE TABLE ... AS SELECT * FROM ...; DROP TABLE ...; etc), so
let's fix the oversight in SET TABLESPACE's original implementation.
src/backend/commands/tablecmds.c