From 6a19c6dccfee66df3970dfba15a8590fdd399bc1 Mon Sep 17 00:00:00 2001
From: Dave Cramer <davec@fastcrypt.com>
Date: Tue, 25 Mar 2003 02:28:45 +0000
Subject: [PATCH] added DISTINCT to the query to get cross reference. This is
 required when two columns in a table are both foreign keys to another table.
 From Peter Royal proyal@pace2020.com

---
 .../org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java   | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
index 98af4ce9838..675321447c9 100644
--- a/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
+++ b/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
@@ -2966,7 +2966,7 @@ public abstract class AbstractJdbc1DatabaseMetaData
 		 */
 
 		if (connection.haveMinimumServerVersion("7.3")) {
-			select = "SELECT n1.nspname as pnspname,n2.nspname as fnspname, ";
+			select = "SELECT DISTINCT n1.nspname as pnspname,n2.nspname as fnspname, ";
 			from = " FROM pg_catalog.pg_namespace n1 "+
 				" JOIN pg_catalog.pg_class c1 ON (c1.relnamespace = n1.oid) "+
 				" JOIN pg_catalog.pg_index i ON (c1.oid=i.indrelid) "+
@@ -2985,7 +2985,7 @@ public abstract class AbstractJdbc1DatabaseMetaData
 				where += " AND n2.nspname = '"+escapeQuotes(foreignSchema)+"' ";
 			}
 		} else {
-			select = "SELECT NULL::text as pnspname, NULL::text as fnspname, ";
+			select = "SELECT DISTINCT NULL::text as pnspname, NULL::text as fnspname, ";
 			from = " FROM pg_class c1 "+
 				" JOIN pg_index i ON (c1.oid=i.indrelid) "+
 				" JOIN pg_class ic ON (i.indexrelid=ic.oid) "+
-- 
GitLab