Re: BUG #17877: Referencing a system column in a foreign key leads to incorrect memory access
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: exclusion@gmail.com
Cc: pgsql-bugs@lists.postgresql.org
Date: 2023-03-29T16:12:26Z
Lists: pgsql-bugs
PG Bug reporting form <noreply@postgresql.org> writes: > The following query: > CREATE TABLE pt(tid oid, id int, PRIMARY KEY(tid, id)); > CREATE TABLE ft(id int, FOREIGN KEY (tableoid, id) REFERENCES pt); > produces a valgrind-detected error: We should probably just disallow system columns as foreign keys. There was a legitimate use-case for that with OID columns, but no more. I can't see a really good reason to use tableoid as a foreign key, and none of the other system columns are stable enough for this to be sane at all. So it's hard to summon interest in trying to remove bugs of this sort. regards, tom lane
Commits
-
Reject system columns as elements of foreign keys.
- f0d65c0eaf05 16.0 landed
- e8d74aac522a 12.15 landed
- bfb993b1bbd1 13.11 landed
- b0b55d8b80d4 14.8 landed
- 6e369817367c 15.3 landed