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."

Reply via email to