Re: Is there a size limit on setBinaryStream?

From: Oliver Jowett <oliver(at)opencloud(dot)com>
To: jonathan(dot)lister(at)vaisala(dot)com
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: Is there a size limit on setBinaryStream?
Date: 2004-11-28 12:39:40
Message-ID: 41A9C70C.9090503@opencloud.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

jonathan(dot)lister(at)vaisala(dot)com wrote:
> I am using pg74.215.jdbc3.jar [...]

> My code is very similar to the example given in the documentation. It
> seems to work OK for files up to around 780k, but when I try a larger
> file (e.g. 5,498k it seems to just "hang" .. no exception, no error report).

I suspect continuous GC is the cause, especially if you're running with
a small heap. Try turning on -verbose:gc and see what you get.

You will have more success with large binary objects if you use the
development driver. The stable driver creates a lot of intermediate
representations when you use setBytes() or setBinaryStream(). This means
you need perhaps 10-20 times the stream's length in temporary heap space.

The development driver streams the data directly, and should only need a
small constant-sized intermediate buffer regardless of the stream length.

-O

In response to

Browse pgsql-jdbc by date

  From Date Subject
Next Message jonathan.lister 2004-11-28 16:54:31 Re: Is there a size limit on setBinaryStream?
Previous Message jonathan.lister 2004-11-27 14:07:15 Re: Is there a size limit on setBinaryStream?