Thread: Oddness 7.3 vs 7.4

Oddness 7.3 vs 7.4

From
Christopher Kings-Lynne
Date:
I notice this in 7.3.4:

test=# create table test (a int4, b int4);
CREATE TABLE
test=# create index idx on test(a) where b is null;
CREATE INDEX
test=# \d test     Table "public.test" Column |  Type   | Modifiers
--------+---------+----------- a      | integer | b      | integer |
Indexes: idx btree (a) WHERE (b IS NULL)

test=# alter table test drop column b;
ALTER TABLE
test=# \d test     Table "public.test" Column |  Type   | Modifiers
--------+---------+----------- a      | integer |
Indexes: idx btree (a) WHERE ("........pg.dropped.2........" IS NULL)


And this in 7.5CVS:

test=# create table test (a int4, b int4);
CREATE TABLE
test=# create index idx on test(a) where b is null;
CREATE INDEX
test=# alter table test drop column b;
ALTER TABLE
test=# \d test     Table "public.test" Column |  Type   | Modifiers
--------+---------+----------- a      | integer |


I cannot think of any commit that fixed that???  Is it fixed in 7.3.5?

Chris



Re: Oddness 7.3 vs 7.4

From
Tom Lane
Date:
Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes:
> I cannot think of any commit that fixed that???  Is it fixed in 7.3.5?

7.3.5 exhibits the same misbehavior.  The bug is actually that the index
doesn't get dropped when you drop the column, and it was fixed here:

2003-05-28 12:03  tgl
Replace functional-index facility with expressional indexes....Along the way, ... fix 7.3 oversightthat didn't record
dependenciesof predicate expressions.
 
        regards, tom lane