tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bill Barker" <>
Subject Re: Multi processor issue
Date Sat, 09 Dec 2006 03:14:04 GMT
After the request parameters are parsed, Tomcat makes it's parameter map 
read-only (i.e. "locked").  I suspect that this is the source of your 
problems.  Having said that, if you really do have two threads accessing a 
Request instance, then you really really need to re-design your application 

"Marziou, Gael" <> wrote in message

As a preamble, let me say that I am not complaining about Tomcat (as the
problem root cause is uncertain) and I don't expect much assistance as
we are happy with our workaround.
However, our experience could help others or someone may have other

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.

Stack trace analysis concluded to RequestFacade objects shared between 2

We made code reviews of our application code and Tomcat's code and did
not find any thread safety issues.

So, we checked all differences between staging and production, we
thought that the major difference was that the staging server was a
single CPU machine while the production servers had 2 physical
processors and 4 logical ones.

So, we constrained the Tomcat service to run on only one processor by
setting its processor affinity mask to 1 (run on CPU 0) and after
several weeks of monitoring we concluded that it "fixed" the problem.

So, we used a small utility (search for to patch the
affinity mask in the Tomcat service executable (tomcat5.exe).

Later on, we set up a second production environment also on bi-processor
servers but we did not experience the same issue.
The hardware is not exactly the same as first production setup and the
OS is also different (Windows 2000 on 2nd env, Windows 2003 on 1st env
having the issue).

So, I don't believe it's a Tomcat, I would rather think to an H/W, or
JRE or OS issue.
In any case, it's a rather complex issue to investigate and we haven't
enough time for this as we are happy with performances running on one
single CPU.


Gael Marziou
Hewlett Packard

To start a new topic, e-mail:
To unsubscribe, e-mail:
For additional commands, e-mail:

To start a new topic, e-mail:
To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message