commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Henri Yandell <>
Subject Re: Fileupload: fails for forms with a large number of inputs with OurOfMemoryError
Date Sun, 16 Nov 2003 00:31:29 GMT

Were any of the fileupload committers interested in this patch?

Can't see any obvious replies.


On Thu, 9 Oct 2003, Mike Samuel wrote:

> The fileupload package is well-architected, and a pleasure to use, but I ran
> into a problem.  Attached is a test case servlet which repeats the problem with
> the Jun 24, 2003 fileupload-1.0 release.
> FileUploadBase.parseRequest runs out of memory when parsing a form with a large
> number of inputs.  The cause seems to be DeferredFileOutputStream which
> allocates a ByteArrayOutputStream per input, each of which preallocates a buffer
> of length inMemoryThreshold.  The in memory threshold defaults to 10k, but if it
> is made larger (> 1 M in our environment), then the vm quickly runs out of
> memory.  Most of this memory is wasted since most files are ~5k, and almost all
> non-file inputs are less than 1k.
> I patched DeferredFileOutputStream to use a different underlying in memory
> stream.  I don't really know why ByteArrayOutputStream uses a single byte[],
> since you can't do random access on the underlying buffer anyway.
> I think the patch is something that could be incorporated into the default file
> upload implementation without any noticable change in performance.
> If anyone's interested in the patch, should I send it to someone, or check it in
> myself?  I've never contributed any code to apache before so I'm a little fuzzy
> on process.
> thanks,
>     mike

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message