It sounds like it, but we are not using SingleThreadModel anywhere in our
code.  Also we do not set our JSPs to turn off threads either (which can be
done through <%@ page isThreadSafe="false" %>).

I have not started digging into the apache code yet; perhaps
SingleThreadModel is used in the file upload components...?

Someone mentioned the idea that this might also be a file io issue that
blocks the whole tomcat java process, but I have yet to prove that.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Martin
Cooper
Sent: Thursday, October 26, 2006 1:53 PM
To: Jakarta Commons Users List; [EMAIL PROTECTED]
Subject: Re: fileupload makes tomcat 5.5 unresponsive for other users

On 10/25/06, Richard Koch <[EMAIL PROTECTED]> wrote:
>
> Unfortunately, tomcat is not responding to *any* requests until the upload
> completes.  After the upload, everything is fine.


This sounds a whole lot like you're using SingleThreadModel in the servlet
that's doing the upload.

--
Martin Cooper


We've reviewed our tomcat settings, and have not found anything that has
> helped either--I was thinking that we might only be using one thread due
> to
> some mistaken configuration, but that is not the case.
>
> We see the CPU usage climb up to about 20% when dealing with large file
> uploads, but it is no where near maxing our cpu usage on our dual xeons.
>
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of James
> Carman
> Sent: Wednesday, October 25, 2006 1:07 PM
> To: Jakarta Commons Users List; [EMAIL PROTECTED]
> Subject: Re: fileupload makes tomcat 5.5 unresponsive for other users
>
> Are you saying that Tomcat isn't responding to any other of the same type
> of
> requests (other file uploads) or it's not responding to *any* requests at
> all (even requests to other webapps within the same instance)?
>
> On 10/25/06, Richard Koch <[EMAIL PROTECTED]> wrote:
> >
> > I am using the commons fileupload 1.1.1 along with the JSP/JSF tag
> > <t:inputFileUpload> tag.  Out application server is Tomcat 5.5.
> >
> >
> >
> > When a user uploads a file, tomcat becomes completely unresponsive to
> any
> > other requests until the upload is complete-this is the case no matter
> > what
> > the file size is 8K to 40MB.
> >
> >
> >
> > Watching garbage collection logging details, I see that the file upload
> > component always seems to take at least 32MB or 42MB, and then it is
> > quickly
> > collected when the upload is completed, and the tomcat server is then
> > available to everyone.
> >
> >
> >
> > I used the input stream from the
> > org.apache.myfaces.custom.fileupload.UploadedFile.getInputStream() call,
> > and
> > then write it out using the below method.
> >
> >
> >
> > Any ideas what would be causing tomcat to be non-responsive to any other
> > request until the upload is finished?  Are there any configuration
> tweeks
> > that can made to help.  I have scanned the mail archives, wiki, and
> > documentation without luck.  Perhaps I have missed something?
> >
> >
> >
> > Thanks.
> >
> >
> >
> > Rich K.
> >
> >
> >
>
>
----------------------------------------------------------------------------
> >
> >
>
>
----------------------------------------------------------------------------
> > ---------------------------------------------------
> >
> >
> >
> >       /**
> >
> >        * Write the given input stream to the given file identified by
> the
> > targetFilePath string.
> >
> >        * @param inputStream
> >
> >        * @param targetFilePath
> >
> >        * @throws IOException
> >
> >        */
> >
> >       public static void writeInputStreamToFile(InputStream inputStream,
> > String targetFilePath) throws IOException {
> >
> >         InputStream in =
> >
> >             new BufferedInputStream(inputStream);
> >
> >         OutputStream out =
> >
> >             new FileOutputStream(targetFilePath);
> >
> >         try {
> >
> >             byte[] buffer = new byte[64 * 1024];
> >
> >             int count;
> >
> >             while ((count = in.read(buffer)) > 0) {
> >
> >                   out.write(buffer, 0, count);
> >
> >             }
> >
> >         } finally {
> >
> >             in.close();
> >
> >             out.close();
> >
> >         }
> >
> >       }
> >
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to