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 390EA17996 for ; Tue, 3 Mar 2015 15:02:21 +0000 (UTC) Received: (qmail 44707 invoked by uid 500); 3 Mar 2015 15:02:14 -0000 Delivered-To: apmail-tomcat-users-archive@tomcat.apache.org Received: (qmail 44647 invoked by uid 500); 3 Mar 2015 15:02:14 -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 44636 invoked by uid 99); 3 Mar 2015 15:02:14 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Mar 2015 15:02:14 +0000 X-ASF-Spam-Status: No, hits=-2.3 required=5.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of rainer.jung@kippdata.de designates 195.227.30.149 as permitted sender) Received: from [195.227.30.149] (HELO mailserver.kippdata.de) (195.227.30.149) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Mar 2015 15:02:08 +0000 Received: from [10.0.110.6] ([10.56.69.147]) by mailserver.kippdata.de (8.13.5/8.13.5) with ESMTP id t23F1h5C018645 for ; Tue, 3 Mar 2015 16:01:43 +0100 (CET) Message-ID: <54F5CCD6.8070000@kippdata.de> Date: Tue, 03 Mar 2015 16:01:42 +0100 From: Rainer Jung User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-Version: 1.0 To: Tomcat Users List Subject: Re: Fwd: File upload fails after upgrade to 7.0.59 References: <54F42715.6040800@kippdata.de> <54F439D6.9030904@kippdata.de> <54F45CA5.1020009@kippdata.de> In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Am 03.03.2015 um 13:45 schrieb Umesh Sehgal: > On Mon, Mar 2, 2015 at 6:20 PM, Rainer Jung wrote: > >> Am 02.03.2015 um 13:34 schrieb Umesh Sehgal: >> >> On Mon, Mar 2, 2015 at 5:25 PM, Umesh Sehgal >>> wrote: >>> >> >> On Mon, Mar 2, 2015 at 3:52 PM, Rainer Jung >>>> wrote: >>>> >>>> Am 02.03.2015 um 11:02 schrieb Umesh Sehgal: >>>>> >>>>> Thanks for the quick reply, I tried using the maxSwallowSize with >>>>>> increased >>>>>> value but to no effect. The max size that I have been able to upload is >>>>>> ~16 >>>>>> KB. I also see that the maxSwallowSize got introduced with update 55 >>>>>> but >>>>>> the behavior I'm seeing is 50 update onwards, is there any other param >>>>>> too? >>>>>> is there any logging that can be turned on tomcat to help debug? >>>>>> >>>>>> >>>>> Please do not top post. For the rest see below. >>>>> >>>>> On Mon, Mar 2, 2015 at 2:32 PM, Rainer Jung >>>>> >>>>>> wrote: >>>>>> >>>>>> Am 02.03.2015 um 09:34 schrieb Umesh Sehgal: >>>>>> >>>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> >>>>>>>> We recently upgraded our application's tomcat from 7.0.30 to 7.0.59. >>>>>>>> After >>>>>>>> upgrade the file upload feature has broken. I have been able to nail >>>>>>>> it >>>>>>>> down to the point that the problem manifests 7.0.50 onwards. Here is >>>>>>>> the >>>>>>>> exception that I see inside logs: >>>>>>>> >>>>>>>> Caused by: java.net.SocketException: Connection reset by peer: >>>>>>>> socket >>>>>>>> write error >>>>>>>> at java.net.SocketOutputStream.socketWrite0(Native Method) >>>>>>>> at java.net.SocketOutputStream.socketWrite(Unknown Source) >>>>>>>> at java.net.SocketOutputStream.write(Unknown Source) >>>>>>>> at sun.security.ssl.OutputRecord.writeBuffer(Unknown Source) >>>>>>>> at sun.security.ssl.OutputRecord.write(Unknown Source) >>>>>>>> >>>>>>>> Also, I notice that the problem doesn't happen with a 2KB file but >>>>>>>> 2MB. I >>>>>>>> don't see anything obvious in the 7.0.50 changelog which could >>>>>>>> explain >>>>>>>> this >>>>>>>> behavior. Can someone please provide some pointer as what could be >>>>>>>> causing >>>>>>>> this? >>>>>>>> >>>>>>>> >>>>>>>> https://bz.apache.org/bugzilla/show_bug.cgi?id=57617 >>>>>>> >>>>>>> Fixed for next 7.0.60 in >>>>>>> >>>>>>> http://svn.apache.org/r1659295 >>>>>>> >>>>>>> The original change can be found looking for "maxSwallowSize" in the >>>>>>> changelog >>>>>>> >>>>>>> >>>>>> Could it be "If a request that includes an Expect: 100-continue header >>>>> receives anything other than a 2xx response, close the connection This >>>>> protects against misbehaving clients that may not sent the request body >>>>> in >>>>> that case and send the next request instead. (markt) "? >>>>> >>>>> It was changed in 7.0.49, but 49 was not released, so 50 was the first >>>>> version with this change. >>>>> >>>>> >>>>> Regards, >>>>> >>>>> Rainer >>>>> >>>>> >>>> I did see this in changelog but in the captured traffic don't see any >>>> expect 100 header request. Any other way I can confirm this on the tomcat >>>> side? >>>> >>>> Thanks, >>>> Umesh >>>> >>>> >>> Can you please point me to SVN change for : >>> "If a request that includes an Expect: 100-continue header receives >>> anything other than a 2xx response, close the connection This protects >>> against misbehaving clients that may not sent the request body in that >>> case >>> and send the next request instead. (markt) "? >>> >> >> http://svn.apache.org/r1540689 >> >> >> Hi Rainer, > > Thanks, I think the problem is indeed caused by this change. I downloaded > the tomcat source, removed the above change from AbstractHttp11Processor > and delpoyed the updated jar. The file upload didn't work right away but at > least now maxSwallowSize is honored and I can upload the files per the size > specified. > > I did the above work to confirm, but of course I don't want to ship it > carrying modified code. Can you please suggest as what could be done in > this case? OK, good to know. I'd say now it would be good to find out why your webapp sends a non-2xx response code and hwich it is. Since you already suceeded to build tomcat, simply add a custom log or System.out.println() statement printing response.getStatus() where the change in r1540689 was added and tell us what it is for the failing uploads. Regards, Rainer --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org For additional commands, e-mail: users-help@tomcat.apache.org