[Jdbc-commits] pgjdbc: When dealing with OIDs larger than 2^31 we can't retrieve these

User Jurka jurka at pgfoundry.org
Sun Dec 2 06:48:44 UTC 2007


Log Message:
-----------
When dealing with OIDs larger than 2^31 we can't retrieve these as
Java ints.  Using long throughout the driver would be a pain, one
reason is that you can't use a switch on a long variable.  PG supports
representing OIDs as signed ints (select '3000000000'::oid::int4),
so retrieve the values as longs, but then cast to int to get the
signed representation.

As suggested by Tom Lane + Quinton Dolan

Modified Files:
--------------
    pgjdbc/org/postgresql/jdbc2:
        AbstractJdbc2DatabaseMetaData.java (r1.41 -> r1.42)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/jdbc/pgjdbc/org/postgresql/jdbc2/AbstractJdbc2DatabaseMetaData.java.diff?r1=1.41&r2=1.42)
        TypeInfoCache.java (r1.10 -> r1.11)
        (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/jdbc/pgjdbc/org/postgresql/jdbc2/TypeInfoCache.java.diff?r1=1.10&r2=1.11)


More information about the Jdbc-commits mailing list