Hi,
Because there was no response for this question already posted in
pgsql-jdbc@postgresql.org mailing list, I'm posting it here.
I'm using PostgreSQL 8.2 and my production server is based on CentOS release
5.2 (Final).
JDBC Jar: postgresql-8.2-508.jdbc4.jar
I noticed from my server log that some INSERT statements are failing with
"invalid message format" PSQLException. Once this exception is thrown, it
is not committed to the database. What could be the reason for this?
EXCEPTION
org.postgresql.util.PSQLException: ERROR: invalid message format
STACKTRACE
org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorI
mpl.java:1592)
org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.ja
va:1327)
org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:193)
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.j
ava:452)
org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2St
atement.java:337)
org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2State
ment.java:283)
I also read about this on:
http://archives.postgresql.org/pgsql-jdbc/2008-04/msg00085.php"JDBC driver is doing something wrong when calculating a
message
length or message content for the frontend/backend protocol"But how do I resolve this issue?
http://archives.postgresql.org/pgsql-jdbc/2004-03/msg00142.phpyou can't represent a \0 byte in a text/varchar constant
Even though I don't have much idea on encoding, I have a little doubt on
whether encoding is a problem.
Here is my database encoding:
mydb=# \l List of databases Name | Owner | Encoding
----------------------+----------+-----------mydb | zoniac | SQL_ASCII
Any pointers in right direction are appreciated.