Re: [BUG?] strange behavior in ALTER TABLE ... RENAME TO on inherited columns
Bernd Helmle <mailings@oopsware.de>
From: Bernd Helmle <mailings@oopsware.de>
To: KaiGai Kohei <kaigai@ak.jp.nec.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Robert Haas <robertmhaas@gmail.com>, KaiGai Kohei <kaigai@kaigai.gr.jp>, pgsql-hackers@postgresql.org, Thom Brown <thombrown@gmail.com>, Alvaro Herrera <alvherre@commandprompt.com>
Date: 2010-01-23T18:45:11Z
Lists: pgsql-hackers
Attachments
- pg-fix-inherit-rename-type-review.patch (application/octet-stream) patch
--On 14. Januar 2010 16:04:17 +0900 KaiGai Kohei <kaigai@ak.jp.nec.com> wrote: > This patch adds: > > List *find_column_origin(Oid relOid, const char *colName) > > It returns the list of relation OIDs which originally defines the given > column. In most cases, it returns a list with an element. But, if the > column is inherited from multiple parent relations and merged during the > inheritance tree, the returned list contains multiple OIDs. > In this case, we have to forbid changing type and renaming to keep > correctness of the table definition. Here's a slightly edited version of this patch from reviewing, fixing the following: * Fix a compiler warning by passing a pointer to skey to systable_beginscan() (it's an array already) * Edit some comments The patch works as expected (at least, i don't see any remaining issues). I'm going to mark this ready for committer. -- Thanks Bernd