Received: from sss.sss.pgh.pa.us (sss.pgh.pa.us [209.114.166.2] (may be forged)) by hub.org (8.9.3/8.9.3) with ESMTP id LAA09340; Wed, 21 Jul 1999 11:00:51 -0400 (EDT) (envelope-from tgl@sss.pgh.pa.us) Received: from sss.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.sss.pgh.pa.us (8.9.1/8.9.1) with ESMTP id KAA01814; Wed, 21 Jul 1999 10:59:36 -0400 (EDT) To: Chris Bitmead cc: pgsql-hackers@postgresql.org, pgsql-sql@postgresql.org, pgsql-general@postgresql.org Subject: Re: [HACKERS] inheritance In-reply-to: Your message of Wed, 21 Jul 1999 23:21:27 +1000 <3795C957.CFA11B91@tech.com.au> Date: Wed, 21 Jul 1999 10:59:36 -0400 Message-ID: <1812.932569176@sss.pgh.pa.us> From: Tom Lane Chris Bitmead writes: > To me this is a much better idea. In any proper OO application you would > be using the "*" in postgres 99% of the time - that being the whole > point of OO. Does any consideration want to be given to making the same > change while there's not too many people using the inheritance feature? What makes you think there's "not too many people" using inheritance? Furthermore, if we did that it would break the code of people who *didn't* think they were using inheritance, except as a means of copying table definitions (which I do a lot, btw). I don't think we can reverse the default on that at this late date. > The other thing Informix does is automatically propagate all attributes > including indexes, constraints, pretty much everything to sub-classes. > Again.. I think this is the right thing. Any thoughts? I'd be inclined to agree on that, or at least say that we ought to provide a simple way of making it happen. But the right semantics are not always obvious. For example, if the ancestor has a SERIAL column, do the derived tables get their own sequence objects or share the ancestor's? Does your answer change if the serial column was created "by hand" with a "DEFAULT nextval('some_sequence')" clause? I suspect that any way we jump on this sort of question will be wrong for some apps, so it should be possible to suppress system copying of attributes... regards, tom lane