pgsql-server/src/interfaces/jdbc/org/postgresq ...

From: barry(at)postgresql(dot)org (Barry Lind)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql-server/src/interfaces/jdbc/org/postgresq ...
Date: 2003-01-14 05:05:26
Message-ID: 20030114050526.E9291475D3B@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

CVSROOT: /cvsroot
Module name: pgsql-server
Changes by: barry(at)postgresql(dot)org 03/01/14 00:05:26

Modified files:
src/interfaces/jdbc/org/postgresql/jdbc1:
AbstractJdbc1DatabaseMetaData.java
src/interfaces/jdbc/org/postgresql/test/jdbc2/optional:
ConnectionPoolTest.java

Log message:
Patch from Kris Jurka to improve the performance of getImportedKeys().
Use explicit joins to avoid using the genetic query optimizer. Also fixed
a regression test that was failing to compile. This change also cleans up
how key names are reported as per:
A change to the value of the FK_NAME column. Currently the returned value
is the triggers arguments which look like

"<unnamed>\000t2\000t1\000UNSPECIFIED\000a\000a\000"

This was required for server versions < 7.3 when a user did not supply
constraint names. Every constraint was named "<unnamed>"
. 7.3 has enforced unique constraint names per table so unnamed foreign
keys will have different names "$1", "$2" and so on. I've used logic
along the lines of the following to preserve the unique names in the
original scheme, but allow people who go to the trouble of naming their
constraints to see them:

if (triggerargs.startsWith("<unnamed>")) {
fkname = [the whole ugly trigger args name originally used];
} else {
fkname = [the actual fk name];
}

Modified Files:
jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
jdbc/org/postgresql/test/jdbc2/optional/ConnectionPoolTest.java

Browse pgsql-committers by date

  From Date Subject
Next Message Barry Lind 2003-01-14 05:07:57 pgsql-server/src/interfaces/jdbc/org/postgresq ...
Previous Message Bruce Momjian - CVS 2003-01-14 00:47:35 pgsql-server/doc TODO