Write to outputstream in PGStream blocks indefinitely

From: Jonas Partner <jonas(dot)partner(at)gmail(dot)com>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: Write to outputstream in PGStream blocks indefinitely
Date: 2005-07-04 08:15:12
Message-ID: 9b8dd34605070401153340015c@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

I am having a problem where by my application freezes after a period
of time under load. Doing a thread dump shows a large number of
threads seem to be attempting to write to output streams as shown
below. The application code is attempting to add a single row to a
table, including binary data of between 3kb - 10kb. This requires a
restart of the application to clear.

Has anyone else seen similar behaviour? Could this be related to the
issue discussed in
http://archives.postgresql.org/pgsql-jdbc/2004-12/msg00096.php where
the server and driver are filling their respective buffers. If so
what is the best approach to reducing the likelyhodd of this
happening.

This occurs using PostgreSQL 8.0.3 with JDBC driver version 8.0-311.

Regards

Jonas

"Thread-49" prio=5 tid=0x00488d08 nid=0x1397 runnable [cc77e000..cc77fc28]
at org.postgresql.core.PGStream.Send(PGStream.java:207)
at org.postgresql.core.PGStream.SendStream(PGStream.java:479)
at org.postgresql.core.v3.SimpleParameterList.streamBytea(SimpleParameterList.java:118)
at org.postgresql.core.v3.SimpleParameterList.writeV3Value(SimpleParameterList.java:201)
at org.postgresql.core.v3.QueryExecutorImpl.sendBind(QueryExecutorImpl.java:816)
at org.postgresql.core.v3.QueryExecutorImpl.sendOneQuery(QueryExecutorImpl.java:1008)
at org.postgresql.core.v3.QueryExecutorImpl.sendQuery(QueryExecutorImpl.java:599)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:173)
- locked <0xd616e6c0> (a org.postgresql.core.v3.QueryExecutorImpl)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:389)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:330)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:282)

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Oliver Jowett 2005-07-04 08:52:38 Re: Write to outputstream in PGStream blocks indefinitely
Previous Message Nidhi Srivastava 2005-07-04 04:29:41 Re: Create Database using JDBC