Oddness 7.3 vs 7.4

Started by Christopher Kings-Lynneabout 22 years ago2 messages
#1Christopher Kings-Lynne
chriskl@familyhealth.com.au

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

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Christopher Kings-Lynne (#1)
Re: Oddness 7.3 vs 7.4

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 oversight
that didn't record dependencies of predicate expressions.

regards, tom lane