Greetings, Harking back to 10 years ago when tablespaces were added, it looks like we originally figured that users didn't need permissions to create tables in the database default, per 2467394e. That strikes me as perfectly fair. Unfortunately, the later addition of ALTER TABLE ... SET TABLESPACE (af4de814) didn't get the memo about the default tablespace being special in this regard and refuses to let a user move their tables into the default tablespace, even though they can do so via 'CREATE TABLE ... AS SELECT * FROM ...'.
Barring objections, I'll add the same conditional around the AclCheck in ATPrepSetTableSpace() as exists in DefineRelation() to allow users to ALTER TABLE ... SET TABLESPACE into the database's default tablespace and backpatch accordingly. Thanks, Stephen
signature.asc
Description: Digital signature