On Mon, Mar 28, 2011 at 9:47 AM, Tom Lane <t...@sss.pgh.pa.us> wrote: > Bug #5950 proposes the following test case: > > create table t (); > alter table t add childs t; > alter table t add id serial not null primary key; > > Most of the back branches dump core because CheckAttributeType() goes > into infinite recursion. That doesn't happen in HEAD, but so far as I > can see that's just because of some chance rearrangement of the order of > operations in ALTER TABLE. I wouldn't be at all surprised if there are > related cases where HEAD fails too. > > I think the most straightforward and reliable fix for this would be to > forbid recursive containment of a rowtype in itself --- ie, the first > ALTER should have been rejected. Can anyone think of a situation where > it would be sane to allow such a thing?
Well, maybe. In fact, probably. That's like asking in C if it's sane to have a structure to contain a pointer back to itself, which of course it is. That said, if it doesn't work properly, it should probably be disabled until it does. merlin -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers