| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> | 
|---|---|
| To: | Robert Treat <xzilla(at)users(dot)sourceforge(dot)net>, Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>, Hackers <pgsql-hackers(at)postgresql(dot)org>, Rod Taylor <rbt(at)rbt(dot)ca> | 
| Subject: | Re: bug in 7.4 SET WITHOUT OIDs | 
| Date: | 2004-03-23 18:06:43 | 
| Message-ID: | 22321.1080065203@sss.pgh.pa.us | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Here's another case that is broken in 7.4, but works when SET WITHOUT
OIDs is reimplemented as a full-fledged DROP:
regression=# create table foo1(f1 int, unique(oid));
NOTICE:  CREATE TABLE / UNIQUE will create implicit index "foo1_oid_key" for table "foo1"
CREATE TABLE
regression=# create table foo2(f1 oid references foo1(oid));
CREATE TABLE
regression=# alter table foo1 set without oids;
NOTICE:  constraint $1 on table foo2 depends on table foo1 column oid
ERROR:  cannot drop table foo1 column oid because other objects depend on it
HINT:  Use DROP ... CASCADE to drop the dependent objects too.
regression=# alter table foo1 drop column oid;
NOTICE:  constraint $1 on table foo2 depends on table foo1 column oid
ERROR:  cannot drop table foo1 column oid because other objects depend on it
HINT:  Use DROP ... CASCADE to drop the dependent objects too.
regression=# alter table foo1 drop column oid cascade;
NOTICE:  drop cascades to constraint $1 on table foo2
ALTER TABLE
regression=#
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Bruce Momjian | 2004-03-23 18:16:51 | Re: linked list rewrite | 
| Previous Message | Tom Lane | 2004-03-23 18:01:57 | Re: bug in 7.4 SET WITHOUT OIDs |