Hi, We are facing some random concurrency issues in our tomcat environments.
1. We have a web application deployed on Tomcat that handles requests from browsers (AJAX and non-AJAX) and also from an applet. 2. The requests send by the browser and always gets and posts (with application/x-www-form-urlencoded format) 3. The requests made by the applet are compressed and send in binary, they are handled by a different Servlet that reads the content by executing request.getInputStream(). 4. Randomly, mainly after opening the applet from the current session or in another session executed on the same server (which send some requests in parallel) requests send from the browser arrives to the server with an empty request.getParameterMap() 5. We have reviewed that the request was well formed when it leaves the browser and also we are able to monitor it with TCP Dump and see that arrives correctly to tomcat. 6. We have introduced a filter on the first position of the filter chain: org.apache.catalina.filters.RequestDumperFilter and we have validated that at this point we have already lost all of the parameters 7. If we try to execute the request.getInputStream() for this problematic requests what we see is that the byte array that returns belongs to another request made before to the server. 8. If we re-submit the same request after, it works fine. They don't have any kind of special character or exceed a certain length. 9. Environment configuration: Httpd apache server on the front-end v. 2.2 connected to apache tomcat using AJP connector 1.3 Apache tomcat 7.0.56 O.S. - Oracle linux 10. Sometimes we are able to reproduce the issue on a eclipse-tomcat environment using http connector and we have validated that the flag used by the class org.apache.catalina.connector.Request parametersParsed is set to true. Do you have any kind of suggestions on how to further investigate the issue? Many thanks and regards, Miguel A. Roldán. ________________________________ "This e-mail, any associated files and the information contained in them are confidential and is intended for the addressee(s) only. If you have received this message in error please notify the originator and delete the email immediately. The unauthorised use, disclosure, copying or alteration of this message is strictly forbidden. E-mails to and from the company are monitored for operational reasons and in accordance with lawful business practices. Any opinions expressed are those of the individual and do not necessarily represent the views of the company. The company does not conclude contracts by email and all negotiations are subject to contract. We make every effort to maintain our network free from computer viruses but accept no responsibility for any viruses which might be transferred by this e-mail."