Return-Path: X-Original-To: apmail-tomcat-users-archive@www.apache.org Delivered-To: apmail-tomcat-users-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9BA001018D for ; Thu, 26 Dec 2013 22:12:09 +0000 (UTC) Received: (qmail 99521 invoked by uid 500); 26 Dec 2013 22:12:06 -0000 Delivered-To: apmail-tomcat-users-archive@tomcat.apache.org Received: (qmail 99406 invoked by uid 500); 26 Dec 2013 22:12:06 -0000 Mailing-List: contact users-help@tomcat.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Tomcat Users List" Delivered-To: mailing list users@tomcat.apache.org Received: (qmail 99397 invoked by uid 99); 26 Dec 2013 22:12:06 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 26 Dec 2013 22:12:06 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of aw@ice-sa.com designates 212.85.38.229 as permitted sender) Received: from [212.85.38.229] (HELO tor.combios.es) (212.85.38.229) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 26 Dec 2013 22:12:00 +0000 Received: from [192.168.245.129] (p549E287A.dip0.t-ipconnect.de [84.158.40.122]) (Authenticated sender: andre.warnier@ice-sa.com) by tor.combios.es (Postfix) with ESMTPA id F01E53C0ACE for ; Thu, 26 Dec 2013 23:12:03 +0100 (CET) Message-ID: <52BCA99C.9070005@ice-sa.com> Date: Thu, 26 Dec 2013 23:11:40 +0100 From: =?ISO-8859-1?Q?Andr=E9_Warnier?= Reply-To: Tomcat Users List User-Agent: Thunderbird 2.0.0.24 (Windows/20100228) MIME-Version: 1.0 To: Tomcat Users List Subject: Re: Request Timeout and empty post data issue References: <9B195074700C78448AE342FD2B3E427C2BB0A9FD@MBX029-W1-CA-2.exch029.domain.local> <9B195074700C78448AE342FD2B3E427C2BB0AA3B@MBX029-W1-CA-2.exch029.domain.local> In-Reply-To: <9B195074700C78448AE342FD2B3E427C2BB0AA3B@MBX029-W1-CA-2.exch029.domain.local> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Peter Rifel wrote: > Hello, > > I'm currently running Tomcat 7.0.42 on Ubuntu 12.04 with OpenJDK 1.7.0_25. I'm using Apache Tomcat Native library 1.1.27 with APR version 1.4.6. > > I'm noticing in my access logs that some of our POST requests don't have any POST data and all have response times of a few ms over 20000ms. I'm trying to figure out whether this issue is client side or server side. The response code and response size for these requests are normal. Can anyone tell me under what circumstances this would happen? I noticed that our connector's connectionTimeout is set to 20000ms, but it wouldn't make sense for that value to be a part of this issue because a connection timeout only occurs when the URI hasn't been received by tomcat in that amount of time, which is clearly not happening here (I was able to confirm this with telnet; a connection timeout will not write anything to the access logs). > > The "request" is making it to my servlet (logging confirms this) but for some reason tomcat doesn't see any request parameters and all of the response times in our access logs are just above 20 seconds. Does this mean that my servlet is taking 20 seconds to process the request? Is there some other timeout value somewhere that defaults to 20 seconds? Is there a way for me to see exactly what is taking so long? Its incredibly hard to debug this because we cant reproduce this bug on our own without any post data and <1% of our production traffic is having this issue. To try and gather more info on this, I added a servlet filter that logs all of our POST request parameters to the access log and I can confirm that there are no parameters on these specific requests. > > The lack of post data makes me think its a client issue, but that doesn't explain why all of these requests take ~20 seconds to be processed. > > I'd appreciate any ideas on what could cause this. > Can't think of an answer yet, but what would help is if you posted the corresponding configuration here. I am a bit puzzled by your description of the servlet filter above. How does it determine that the request has no POST parameters ? And how/what does it log to the Access log ? Also, can you get to the HTTP headers of the request, in this filter ? It may be useful to know what the request's "Content-length" header is saying. And one more thing : presumably, you know what kind of POST requests this is, or what it should be. What would a normal POST request of that kind look like ? For example if it was a valid/legitimate POST request of that kind from a valid/legitimate client (browser ?), how large could it be, as a maximum ? --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org For additional commands, e-mail: users-help@tomcat.apache.org