BUG and FIX: getTables - SYSTEM TABLE

From: "Mitchell J(dot) Friedman" <mitchell_j_friedman(at)yahoo(dot)com>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: BUG and FIX: getTables - SYSTEM TABLE
Date: 2001-11-03 03:35:02
Message-ID: 20011103033502.31887.qmail@web10405.mail.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

In getTables in DatabaseMetaData.java it looks like
"TABLE" is returned as the TABLE_TYPE even if the
table is a SYSTEM TABLE. It looks like the
getTableTypes code is working correctly - if SYSTEM
TABLE is not requested then none are returned.

The problem appears to be in
case (byte) 'r':
relKind = "TABLE";
break;
which kind of forgets that sometimes an 'r' means a
TABLE and other times a SYSTEM TABLE depending on
TABLE_NAME.

the fix would be something like
case (byte) 'r':
if (relname.r.getBytes(1).startsWith("pg_"))
relKind = "SYSTEM TABLE"
else
relKind = "TABLE";
break;

For what its worth I am new to this list - I tried
searching the archive for this bug and was not able to
read the archive. Hopefully this bug and fix have
already been posted - but if not...

mjf

__________________________________________________
Do You Yahoo!?
Find a job, post your resume.
http://careers.yahoo.com

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Carlos Augusto 2001-11-03 04:10:02
Previous Message Jason Davies 2001-11-03 02:39:45 Re: DatabaseMetaData.getImported/ExportedKeys() patch