Ühel kenal päeval, K, 2006-05-24 kell 09:40, kirjutas Tom Lane:
> Simon Riggs <[EMAIL PROTECTED]> writes:
> > On Wed, 2006-05-24 at 11:17 +0300, Hannu Krosing wrote:
> >> Why "never set back again" ? I'd guess that it should be set back to
> >> true when it is not an inherited column anymore, that is when its
> >> attinhcount reaches zero.
> 
> > Because you have no record of whether it was created locally or
> > inherited when originally created. And: do you care? Why?
> 
> The invariant is supposed to be that every attribute has attislocal
> true or attinhcount > 0 (or both). 

In what case does it have both ?

Or is it so that 
  1) islocal means that column is not inherited from any parent 
  2) attinhcount is the number of direct children who inherit this
attribute

In this case it should be possible to keep both "right" and make both
ADD+DROP  and DROP+ADD invariants.

>  Otherwise it has no justification
> to exist.  I see in the regression database that someone has broken
> this invariant; it looks like LIKE inheritance is misimplemented.

I don't think that LIKE inheritance is inheritance at all, rather it is
a create-time macro.

> I'm going to insist on a fix for that ;-)

Agreed.

-- 
----------------
Hannu Krosing
Database Architect
Skype Technologies OÜ
Akadeemia tee 21 F, Tallinn, 12618, Estonia

Skype me:  callto:hkrosing
Get Skype for free:  http://www.skype.com




---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
       choose an index scan if your joining column's datatypes do not
       match

Reply via email to