Hi,
I´ve written a small JDBC-application.
I´m quering a large table in a postgreSQL database (version 8.08 and I´m
using the postgresql-8.1-407.jdbc3 driver). I need to update a lot of
the rows in the table and I try to do this 'on-the-fly' - that is, I use
one statement to select the rows and while looping over the ResultSet I
use another one to update the row if needed.
The updates are executing very slowly, which is due to the fact that the
database server is slow.
I keep getting this exception:
org.postgresql.util.PSQLException: An I/O error occured while sending to
the backend.
at
org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:214)
at
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452)
at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:354)
at
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:347)
at
se.puzzled.ip.InsertIPCountryToDatabase.updateCountryCodesInUclickUsingVector(InsertIPCountryToDatabase.java:239)
at se.puzzled.updater.CountryDriver.main(CountryDriver.java:30)
Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at java.io.BufferedInputStream.fill(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
at org.postgresql.core.PGStream.ReceiveChar(PGStream.java:256)
at
org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1163)
at
org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:188)
... 5 more
Some updates execute correctly, but then the application crashes with
the exception.
I´ve seen other posts concerning this exception, but what I´d like is a
way to prohibit the
exception within my Java code - haven´t found any such solution in the
posts that I´ve read.
Any help would be very much appreciated!