BUG #1307: Possible bug inheritance/referential integrity

From: "PostgreSQL Bugs List" <pgsql-bugs(at)postgresql(dot)org>
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #1307: Possible bug inheritance/referential integrity
Date: 2004-11-06 12:11:49
Message-ID: 20041106121149.76088739260@www.postgresql.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs


The following bug has been logged online:

Bug reference: 1307
Logged by: Thomas Jacob

Email address: jacob(at)internet24(dot)de

PostgreSQL version: 7.4.5

Operating system: Gentoo Linux, Kernel 2.6.7

Description: Possible bug inheritance/referential integrity

Details:

Rows inserted into a table "sub" inherited from a table
"super" do not seem to exist in the super-table from the point of
view of the foreign key constraint checker in references to the
"super"-table, even though a SELECT query displays the rows that
were inserted into sub also in super, as should be (See example
provided).

But they should exist, shouldn't they? Or do I simply not
understand PostgreSQL's inheritance model correctly?

CREATE TABLE super (id INT PRIMARY KEY);
CREATE TABLE super_ref (id INT REFERENCES super);
CREATE TABLE sub () INHERITS(super);

-- this works
INSERT INTO super VALUES(1); INSERT INTO super_ref VALUES(1);

-- clean up
DELETE FROM super_ref; DELETE FROM super;

-- this fails with: ERROR: insert or update on table "super_ref" violates
foreign key constraint "$1"
INSERT INTO sub VALUES(1); INSERT INTO super_ref VALUES(1);

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Alexis Doutriaux 2004-11-06 14:06:11 PGsql8 under windows XP
Previous Message Tom Lane 2004-11-06 06:40:05 Re: domain on bit(N) type produces strange results