Re: [BUG?] strange behavior in ALTER TABLE ... RENAME TO on inherited columns
| От | Tom Lane |
|---|---|
| Тема | Re: [BUG?] strange behavior in ALTER TABLE ... RENAME TO on inherited columns |
| Дата | |
| Msg-id | 9954.1262460756@sss.pgh.pa.us обсуждение |
| Ответ на | Re: [BUG?] strange behavior in ALTER TABLE ... RENAME TO on inherited columns (KaiGai Kohei <kaigai@kaigai.gr.jp>) |
| Ответы |
Re: [BUG?] strange behavior in ALTER TABLE ... RENAME TO on
inherited columns
|
| Список | pgsql-hackers |
KaiGai Kohei <kaigai@kaigai.gr.jp> writes:
> (2009/12/30 10:38), Robert Haas wrote:
>> No longer applies. Can you rebase?
> The attached patch is the rebased revision.
I'm not really impressed with this patch, because it will reject
perfectly legitimate multiple-inheritance cases (ie, cases where there's
more than one inheritance path from the same parent). This works fine
at the moment:
regression=# create table p1(f1 int, f2 int);
CREATE TABLE
regression=# create table c1(f3 int) inherits (p1);
CREATE TABLE
regression=# create table c2(f4 int) inherits (p1);
CREATE TABLE
regression=# create table cc(f5 int) inherits (c1,c2);
NOTICE: merging multiple inherited definitions of column "f1"
NOTICE: merging multiple inherited definitions of column "f2"
CREATE TABLE
regression=# \d cc Table "public.cc"Column | Type | Modifiers
--------+---------+-----------f1 | integer | f2 | integer | f3 | integer | f4 | integer | f5 |
integer|
Inherits: c1, c2
regression=# alter table p1 rename f2 to ff2;
ALTER TABLE
regression=# \d cc Table "public.cc"Column | Type | Modifiers
--------+---------+-----------f1 | integer | ff2 | integer | f3 | integer | f4 | integer | f5 |
integer|
Inherits: c1, c2
I don't think that protecting against cases where things won't work
is an adequate reason for breaking cases that do work.
regards, tom lane
В списке pgsql-hackers по дате отправления: