Re: Socket close exception

From: Hernan Danielan <hernandanielan(at)gmail(dot)com>
To: Maciek Sakrejda <msakrejda(at)truviso(dot)com>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: Socket close exception
Date: 2010-05-15 16:46:25
Message-ID: AANLkTintl024fiq6EEYuJ7hwAJsZUVqJ9na_7hiWgTGB@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Yes, the most interesting thing is that the log says

unexpected EOF on client connection or could not send data to client:
Broken pipe

But this shouldn't be happening according to the code i sent because i do
NOT close the socket. Moreover the transaction only takes up a few seconds.

I read a person who had this problem and he fixed changing th cache size but
I wasn't successful.

Any ideas?

On Fri, May 14, 2010 at 12:57 PM, Maciek Sakrejda <msakrejda(at)truviso(dot)com>wrote:

> Anything interesting in the postgres log when this happens?
> ---
> Maciek Sakrejda | System Architect | Truviso
>
> 1065 E. Hillsdale Blvd., Suite 230
> Foster City, CA 94404
> (650) 242-3500 Main
> (650) 242-3501 F
> www.truviso.com
>
>
>
> On Fri, May 14, 2010 at 8:09 AM, Hernan Danielan
> <hernandanielan(at)gmail(dot)com> wrote:
> > Hello! I am using postgress 8.4. I am trying to save to my DB a Large
> Binary
> > Object, let's say 1.4MB. I read that LargeObjectAPI should be used.
> > I have a problem that sometimes i can store the file and some others i
> get
> > an exception of
> >>>org.postgresql.util.PSQLException: An I/O error occured while sending to
> >>> the backend.
> >>>java.net.SocketException: Socket closed
> > I try to create a connection for each object but the errors perssist with
> > big files. For smaller files like 13KB this example works great. Does
> > anybody have this problem??? I debug the applcation and I am getting the
> > socket close exception during obj.write (....) here is a bit of the code
> > mDbConnector.setAutoCommit(false);
> > // Get the Large Object Manager to perform operations with
> > LargeObjectManager lobj =
> > ((org.postgresql.PGConnection)mDbConnector).getLargeObjectAPI();
> > // Create a new large object
> > int oid = lobj.create(LargeObjectManager.READ |
> LargeObjectManager.WRITE);
> > // Open the large object for writing
> > LargeObject obj = lobj.open(oid, LargeObjectManager.WRITE);
> > byte []data = cont.getData();
> > obj.write(data,0,data.length);
> > obj.close();
> > PreparedStatement statement = mDbConnector.prepareStatement("INSERT INTO
> > publicitiescontent (IdPublicities,MimeType,FileName,Title,Data) VALUES
> > (?,?,?,?,?)");
> > statement.setBigDecimal(1, new BigDecimal(publicityId));
> > statement.setString(2, cont.getMimeType());
> > statement.setString(3, cont.getFileName());
> > statement.setString(4, cont.getNombre());
> > statement.setInt(5, oid);
> > statement.execute();
> > statement.close();
> > mDbConnector.commit();
> >
> > Thanks in advance,
> > Hernan
>

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Oliver Jowett 2010-05-16 08:36:53 Re: Exception 'org.postgresql.util.PSQLException' could not be instantiated
Previous Message Krutik Frank 2010-05-15 16:13:44 Exception 'org.postgresql.util.PSQLException' could not be instantiated