Hello! I am using postgress 8.4. I am trying to save to my DB a Large Binary Object, in localhost, 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 persist with big files. For smaller files like 13KB this example works great and several in simultaneous. 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