Hannu Krosing <[EMAIL PROTECTED]> writes:

> On P, 2005-10-02 at 23:00 -0400, Tom Lane wrote:
> > 
> > Here's another interesting case to think about:
> > 
> >     ALTER TABLE ADD foo integer DEFAULT 1
> >     ...
> >     ALTER TABLE ALTER foo SET DEFAULT 2
> >
> > You'll have to pay the table-traversal cost on one step or the other.
> 
> The second, ALTER ... SET DEFAULT, would only set default for newly
> inserted columns, not the ones which are missing due to tuples being
> created before the column existed.

Hm. So you're saying there are only ever exactly two types of defaults. The
"initial" default that applies to all tuples that were created before the
column was added. And the "current" default that only ever applies to newly
created tuples.

That does seem to cleanly close this hole.

-- 
greg


---------------------------(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