BUG #2750: information_schema broken with primary and foreign key on the same column - Mailing list pgsql-bugs

From Stephen haberman
Subject BUG #2750: information_schema broken with primary and foreign key on the same column
Date
Msg-id 200611100104.kAA14Dpo034315@wwwmaster.postgresql.org
Whole thread Raw
Responses Re: BUG #2750: information_schema broken with primary and foreign key on the same column
List pgsql-bugs
The following bug has been logged online:

Bug reference:      2750
Logged by:          Stephen haberman
Email address:      stephen@exigencecorp.com
PostgreSQL version: 8.2 beta 3
Operating system:   win32
Description:        information_schema broken with primary and foreign key
on the same column
Details:

Just tried postgresql 8.2 beta 3 and it is missing a patch I had sent to
pgsql-patches after trying 8.2 beta 2 a few weeks ago.

The information_schema `position_in_unique_constraint` is broken when a
column has both a primary key and a foreign key. Both constraints match in
the `SELECT a FROM generate_series` and caused a "subquery returns multiple
results for an expression" error.

(Or something like that--I don't have the exact error message handy.)

This patch fixes it:

--- information_schema-original.sql    Tue Oct 24 11:10:16 2006
+++ information_schema.sql    Fri Oct 27 02:24:52 2006
@@ -928,6 +928,7 @@
                (SELECT a FROM generate_series(1, array_upper(ss.confkey,1))
a) AS foo
              WHERE conrelid = ss.confrelid
              AND conkey[foo.a] = ss.confkey[(ss.x).n]
+             AND contype = 'f'
            ) AS position_in_unique_constraint
     FROM pg_attribute a,
          (SELECT r.oid, r.relname, nc.nspname AS nc_nspname,

pgsql-bugs by date:

Previous
From: "David Green"
Date:
Subject: JDBC driver bug PreparedStatement.setNull(int,Types.BOOLEAN)
Next
From: "aTz"
Date:
Subject: BUG #2744: pg_dump, ERROR: out of memory, Failed on request of size 270344621