Re: Batch INSERT failing with error 22P02 - Mailing list pgsql-jdbc

From Kris Jurka
Subject Re: Batch INSERT failing with error 22P02
Date
Msg-id Pine.BSO.4.64.0709171802240.11213@leary.csoft.net
Whole thread Raw
In response to Batch INSERT failing with error 22P02  (Eric Faulhaber <ecf@goldencode.com>)
Responses Re: Batch INSERT failing with error 22P02
List pgsql-jdbc

On Mon, 17 Sep 2007, Eric Faulhaber wrote:

> I recently upgraded from PG 8.1.8 to 8.2.4.  I made a corresponding move in
> JDBC driver versions from postgresql-8.1-408.jdbc3.jar to
> postgresql-8.2-506.jdbc4.jar (binary distributions in both cases).  During a
> lengthy import using Hibernate (yes, I realize it's not the most efficient
> mechanism for bulk import), I hit the following error:
>
> SEVERE: ERROR: invalid input syntax for type oid: ""
>
> Caused by: java.sql.BatchUpdateException: Batch entry 0 insert into
> turnaround (turn_number, site, item, purchase_order_number,
> purchase_order_line, lot, serial_number, quantity_issued, expiration_date,
> id) values (0000XBJG, GSO, 0A0001H9L, 427190, 15, , , -14000.00000, NULL,
> 59657893) was aborted.  Call getNextException to see the cause.
> SEVERE: An SQLException was provoked by the following failure:
> java.lang.IllegalArgumentException: Can't change resolved type for param: 7
> from 1043 to 26
> ....

We've seen this report once before, but weren't able to get to the bottom
of it because it also occurred on a large dataset.

http://archives.postgresql.org/pgsql-jdbc/2007-06/threads.php#00041

In his case int4 and int8 were getting mixed up which is a little more
understandable, in your case it's confusing varchar and oid which seems
less likely.  Is there any chance you can run this with the URL parameter
loglevel=2, which will produce tons of logging information, or can you
make this test case available to me?

Kris Jurka

pgsql-jdbc by date:

Previous
From: Dave Cramer
Date:
Subject: Re: Batch INSERT failing with error 22P02
Next
From: Stephane Bailliez
Date:
Subject: Exception while doing ResultSetMetadata.getColumnName() after select setval()