ALTER TABLE ... OWNER TO does not change ownership recursively

Поиск
Список
Период
Сортировка
От Ryan Kelly
Тема ALTER TABLE ... OWNER TO does not change ownership recursively
Дата
Msg-id 20120426114232.GA31886@llserver.lakeliving.com
обсуждение исходный текст
Ответы Re: ALTER TABLE ... OWNER TO does not change ownership recursively  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
It seems that ALTER TABLE ... OWNER TO does not change the ownership of
any inheriting tables. The documentation states:

> If ONLY is specified, only that table is altered. If ONLY is not
> specified, the table and any descendant tables are altered.

Which to me indicates that ownership should be altered on the target table and
any descendant tables as well.

Here is a small test case to reproduce the problem:

create table parent (id int);
create table child () inherits (parent);
create role new_owner;
alter table parent owner to new_owner;

After performing this sequence of commands, \d looks like:
 Schema |     Name      |   Type   |   Owner
--------+---------------+----------+-----------
 public | child         | table    | ryan
 public | parent        | table    | new_owner

But I would expect that without specifying only, I would get:
 Schema |     Name      |   Type   |   Owner
--------+---------------+----------+-----------
 public | child         | table    | new_owner
 public | parent        | table    | new_owner

Attached is a patch which fixes this issue. It is based off of REL8_4_11.

Version: PostgreSQL 8.4.11 on i386-apple-darwin10.8.0, compiled by GCC i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple
Inc.build 5666) (dot 3), 64-bit 

-Ryan Kelly

Вложения

В списке pgsql-bugs по дате отправления:

Предыдущее
От: piyushm@usindia.com
Дата:
Сообщение: BUG #6614: pg_dump not working for tables with japanese name
Следующее
От: dodobas@geoinfo.geof.hr
Дата:
Сообщение: BUG #6617: FETCH FIRST syntax accepts only constants and not parameters