> From: Marziou, Gael [mailto:[EMAIL PROTECTED] 
> Subject: Multi processor issue
> 
> We have recently switched a stable web application from JRun 
> 4 to Tomcat 5.5.20 on Windows 2003 + Sun's JRE 1.5.0_08,
> running some testing for months, but when we moved to 
> production environment we immediately experienced errors
> IllegalStateException: No modifications are allowed
> to a locked ParameterMap.
> 
> We made code reviews of our application code and Tomcat's code and did
> not find any thread safety issues. 

Look again.

> So, I don't believe it's a Tomcat, I would rather think to an H/W, or
> JRE or OS issue.

Welcome to the world of multi-processors (which I've been working with
since the 1960s.)  The problem is almost undoubtedly in your application
- we run Tomcat on 16x and 32x systems without any such issues.

Within Tomcat, request objects are normally processed by a single thread
at a time, yet you note that two threads are accessing this particular
request - where did the second one come from?  Is your app starting
extra threads?  (Perhaps unknowingly, by using some third-party
package.)

Since requests are typically handled by a single thread, there is little
or no synchronization done during manipulation of references associated
with them, such as the parameter map.  If your app is using multiple
threads to handle a request, it needs to provide its own synchronization
when calling methods of the request that manipulate data associated with
the request - even when just reading, since the other thread may be
changing it concurrently.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY
MATERIAL and is thus for use only by the intended recipient. If you
received this in error, please contact the sender and delete the e-mail
and its attachments from all computers.

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to