From 7aa6270fc7ac60b8a7ef1364a40d67636e735af0 Mon Sep 17 00:00:00 2001
From: Dave Cramer <davec@fastcrypt.com>
Date: Tue, 5 Mar 2002 03:02:52 +0000
Subject: [PATCH]  patch from Mitchel Friedman to fix getTables

---
 .../org/postgresql/jdbc1/DatabaseMetaData.java    | 15 +++++++++++----
 .../org/postgresql/jdbc2/DatabaseMetaData.java    | 11 +++++++++--
 2 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java
index 11855d3fbd3..38efcb1e361 100644
--- a/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java
+++ b/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java
@@ -13,7 +13,7 @@ import org.postgresql.util.PSQLException;
 /*
  * This class provides information about the database as a whole.
  *
- * $Id: DatabaseMetaData.java,v 1.43 2002/03/05 02:14:06 davec Exp $
+ * $Id: DatabaseMetaData.java,v 1.44 2002/03/05 03:02:47 davec Exp $
  *
  * <p>Many of the methods here return lists of information in ResultSets.  You
  * can use the normal ResultSet methods such as getString and getInt to
@@ -1731,9 +1731,16 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
 			String relKind;
 			switch (r.getBytes(3)[0])
 			{
-				case (byte) 'r':
-					relKind = "TABLE";
-					break;
+				case (byte) 'r':                                        
+					if ( r.getString(1).startsWith("pg_") )
+                                        {
+                                                relKind = "SYSTEM TABLE";
+                                        }
+                                        else
+                                        {
+                                                relKind = "TABLE";
+                                        }
+ 					break;
 				case (byte) 'i':
 					relKind = "INDEX";
 					break;
diff --git a/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
index 8aa18f6cba0..15af39a5e0f 100644
--- a/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
+++ b/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
@@ -15,7 +15,7 @@ import org.postgresql.util.PSQLException;
 /*
  * This class provides information about the database as a whole.
  *
- * $Id: DatabaseMetaData.java,v 1.50 2002/03/05 02:14:08 davec Exp $
+ * $Id: DatabaseMetaData.java,v 1.51 2002/03/05 03:02:52 davec Exp $
  *
  * <p>Many of the methods here return lists of information in ResultSets.  You
  * can use the normal ResultSet methods such as getString and getInt to
@@ -1832,7 +1832,14 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
 			switch (r.getBytes(3)[0])
 			{
 				case (byte) 'r':
-					relKind = "TABLE";
+					if ( r.getString(1).startsWith("pg_") )
+					{
+						relKind = "SYSTEM TABLE";
+					}
+					else
+					{
+						relKind = "TABLE";
+					}
 					break;
 				case (byte) 'i':
 					relKind = "INDEX";
-- 
GitLab