> But the evidence seems to show two threads are manipulating the same > request, otherwise you wouldn't get the error on the ParameterMap. > Does a full thread dump show any threads that aren't part of the set > started by Tomcat?
> either that, or a Request is reused before recycle() has been executed completely. We assumed this as well but after instrumenting more our code, we concluded it was not possible because the corruption seemed to occur before the end of the 2 requests processing and so before recycle() was called. I got some logs which sort of showed this but I can't find them right now, I have stopped working on this issue 3 weeks ago. > Alas, you could do a test and check whether the method getParameter is > actually ever called by two threads during one lifecycle (patching the > ParameterMap class, storing last accessing thread, and checking whether > another thread is already stored on access) We did it but for some reason the log statements did not get logged in our usual log file. Then after we tried the affinity trick which made the symptom to disappear and got no chance to try again. > And Gael, the CPU is the most valuable resource in the production environment, > are you really ready to give up your scaleability but simply not investigating > further? Well, this application is load balanced on 4 servers and the load is currently pretty low on each of them even when running on a single CPU. We did add more logs to our application and we did also instrument Tomcat but with no luck and as we were unable to reproduce it in a dev environment, it's difficult to ask for short downtimes to restart a server in production. On top of that, my team is being moved to another project... Gael --------------------------------------------------------------------- To start a new topic, e-mail: [email protected] To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
