Thread

  1. BUG #5197: JDBC: selecting oid results in Exception

    Joseph Shraibman <jks@selectacast.net> — 2009-11-19T04:26:13Z

    The following bug has been logged online:
    
    Bug reference:      5197
    Logged by:          Joseph Shraibman
    Email address:      jks@selectacast.net
    PostgreSQL version: 8.2.14
    Operating system:   Linux
    Description:        JDBC: selecting oid results in Exception
    Details: 
    
    query: "select oid FROM pg_catalog.pg_class c;"
    
    -----------------------------------------------
    org.postgresql.util.PSQLException: Bad value for type int : 2148618421
    	at
    org.postgresql.jdbc2.AbstractJdbc2ResultSet.toInt(AbstractJdbc2ResultSet.jav
    a:2630)
    	at
    org.postgresql.jdbc2.AbstractJdbc2ResultSet.getInt(AbstractJdbc2ResultSet.ja
    va:1968)
    	at
    org.postgresql.jdbc2.AbstractJdbc2ResultSet.internalGetObject(AbstractJdbc2R
    esultSet.java:119)
    	at
    org.postgresql.jdbc3.AbstractJdbc3ResultSet.internalGetObject(AbstractJdbc3R
    esultSet.java:39)
    	at
    org.postgresql.jdbc2.AbstractJdbc2ResultSet.getObject(AbstractJdbc2ResultSet
    .java:2429)
    
    
    
    
    Casting oid to bigint doesn't result in an Exception
    
    
  2. Re: BUG #5197: JDBC: selecting oid results in Exception

    Robert Haas <robertmhaas@gmail.com> — 2009-11-20T17:41:35Z

    On Wed, Nov 18, 2009 at 11:26 PM, Joseph Shraibman <jks@selectacast.net> wrote:
    >
    > The following bug has been logged online:
    >
    > Bug reference:      5197
    > Logged by:          Joseph Shraibman
    > Email address:      jks@selectacast.net
    > PostgreSQL version: 8.2.14
    > Operating system:   Linux
    > Description:        JDBC: selecting oid results in Exception
    > Details:
    >
    > query: "select oid FROM pg_catalog.pg_class c;"
    >
    > -----------------------------------------------
    > org.postgresql.util.PSQLException: Bad value for type int : 2148618421
    >        at
    > org.postgresql.jdbc2.AbstractJdbc2ResultSet.toInt(AbstractJdbc2ResultSet.jav
    > a:2630)
    >        at
    > org.postgresql.jdbc2.AbstractJdbc2ResultSet.getInt(AbstractJdbc2ResultSet.ja
    > va:1968)
    >        at
    > org.postgresql.jdbc2.AbstractJdbc2ResultSet.internalGetObject(AbstractJdbc2R
    > esultSet.java:119)
    >        at
    > org.postgresql.jdbc3.AbstractJdbc3ResultSet.internalGetObject(AbstractJdbc3R
    > esultSet.java:39)
    >        at
    > org.postgresql.jdbc2.AbstractJdbc2ResultSet.getObject(AbstractJdbc2ResultSet
    > .java:2429)
    >
    >
    >
    >
    > Casting oid to bigint doesn't result in an Exception
    
    Thanks for the report.  If you don't get a response from anyone on
    this list, you might want to try the pgsql-jdbc list instead, as many
    of us here are not familiar with JDBC specifically.
    
    ...Robert
    
    
  3. Re: BUG #5197: JDBC: selecting oid results in Exception

    Kris Jurka <books@ejurka.com> — 2009-11-20T23:43:04Z

    
    On Thu, 19 Nov 2009, Joseph Shraibman wrote:
    
    >
    > The following bug has been logged online:
    >
    > Bug reference:      5197
    > Description:        JDBC: selecting oid results in Exception
    > Details:
    >
    > query: "select oid FROM pg_catalog.pg_class c;"
    >
    > -----------------------------------------------
    > org.postgresql.util.PSQLException: Bad value for type int : 2148618421
    > 	at
    > org.postgresql.jdbc2.AbstractJdbc2ResultSet.toInt(AbstractJdbc2ResultSet.jav
    > a:2630)
    
    Java doesn't have an equivalent for unsigned types, so the JDBC driver 
    internally tries to fit it into a signed int by using the negative values. 
    Unfortunately that's failing and it's not what the user wants for this 
    case.  I imagine the user really wants to get a Long back from this.  I'm 
    going on vacation next week, but when I return, I'll make that happen.
    
    Kris Jurka