Re: Transient runtime error: java.lang.NegativeArraySizeException from org.postgresql.core.PGStream.ReceiveTupleV3(PGStream.java:349) ...

Поиск
Список
Период
Сортировка
От S K
Тема Re: Transient runtime error: java.lang.NegativeArraySizeException from org.postgresql.core.PGStream.ReceiveTupleV3(PGStream.java:349) ...
Дата
Msg-id AANLkTinFlgcDfy5LBspONv4EXjWb4oq19Jx5X_34INHm@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Transient runtime error: java.lang.NegativeArraySizeException from org.postgresql.core.PGStream.ReceiveTupleV3(PGStream.java:349) ...  (Kris Jurka <books@ejurka.com>)
Список pgsql-jdbc
Thanks for your replies.

I followed Sam's suggestion and upgraded the jdbc driver to the latest version. 
It has been more than  a week and problem did not recur. I'm assuming the upgrade
fixed the issue (I saw in the release notes a cryptic note indicating fixes for data transformation).

On Thu, Jul 1, 2010 at 6:27 PM, Kris Jurka <books@ejurka.com> wrote:


On Tue, 22 Jun 2010, S K wrote:


Our application has been in production for a couple of years. Recent
investigation into a problem revealed the following error started a few
months back.  I restarted the application, but the error appears after a few
days and the thread dies.

Caused by: java.lang.NegativeArraySizeException
        at org.postgresql.core.PGStream.ReceiveTupleV3(PGStream.java:349)
        atorg.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.j
ava:1306)
        atorg.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:192
)
        atorg.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.
java:451)
        atorg.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2S
tatement.java:350)
        atorg.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2State
ment.java:254)

I haven't seen an error like this before.  It most likely indicates that the driver has lost protocol sync with the server and is reading the wrong part of the message.  This is difficult to debug because it's unknown how far back synchronization was lost.  To try to debug this I would modify the driver to log the negative array size value and as much of the message parts I could find around it.  That may give some clues as to why the driver is confused.  Additionally, I would try to determine the triggering query and see if I could reproduce it.

Kris Jurka



--

---
Please DO NOT add my email to any marketing/communication/distribution lists or social networking sites, without my explicit permission to do so.

В списке pgsql-jdbc по дате отправления:

Предыдущее
От: Thomas Kellerer
Дата:
Сообщение: Re: 9.0 and pg_stat_activity.application_name
Следующее
От: Radosław Smogura
Дата:
Сообщение: Re: Unable to commit: transaction marked for rollback