tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Igor Cicimov <icici...@gmail.com>
Subject Re: cannot read complete HTTP request body. It reads only 8192 characters
Date Tue, 01 Nov 2011 02:13:33 GMT
Have you done the test in your environment simulating the customer one as
close as possible? Maybe taking in count their network topology (routers,
switches, firewalls), hundreds (possible thousands) of requests per second,
network latency, tcp timeout kernel settings, buffer queue etc etc, the
code will fail on your server too.

For start lets say you might check their /etc/sysctl.conf file and see if
their any tcp time settings differences from your server.


On Tue, Nov 1, 2011 at 12:58 PM, Anantaneni Harish <
anantaneni.harish@vertexsoft.com> wrote:

> Dont know :(, must be different.
>
> Thanks and Regards,
> Harish
>
> -----Original Message-----
> From: Igor Cicimov [mailto:icicimov@gmail.com]
> Sent: Tuesday, November 01, 2011 10:57 AM
> To: Tomcat Users List
> Subject: RE: cannot read complete HTTP request body. It reads only 8192
> characters
>
> And same kernel network settings?
>  On Nov 1, 2011 12:50 PM, "Anantaneni Harish" <
> anantaneni.harish@vertexsoft.com> wrote:
>
> > Both environments have the following softwares.
> >
> > OS      Name    Red Hat Enterprise Linux
> >        Version release 5.3 (Tikanga)
> > Java    Name    Java(TM) SE Runtime Environment (build 1.6.0_13-b03)
> >        Version 1.6.0_13
> > Tomcat  Name    apache-tomcat
> >        Version 5.5.28
> >
> > Thanks and Regards,
> > Harish
> > -----Original Message-----
> > From: Igor Cicimov [mailto:icicimov@gmail.com]
> > Sent: Tuesday, November 01, 2011 10:47 AM
> > To: Tomcat Users List
> > Subject: Re: cannot read complete HTTP request body. It reads only 8192
> > characters
> >
> > You never said what is the difference between your environment and the
> > customer one or I missed that info. Same OS? Same Java version?
> >
> > On Tue, Nov 1, 2011 at 12:42 PM, Anantaneni Harish <
> > anantaneni.harish@vertexsoft.com> wrote:
> >
> > >
> > > Any thoughts about this?
> > >
> > > Thanks and Regards,
> > > Harish
> > > -----Original Message-----
> > > From: Anantaneni Harish
> > > Sent: Monday, October 31, 2011 11:23 AM
> > > To: Tomcat Users List
> > > Subject: RE: cannot read complete HTTP request body. It reads only 8192
> > > characters
> > >
> > > String keyValuePair = null;
> > > String[] arrKeyValue = null;
> > > BufferedReader in = request.getReader();
> > > while ((keyValuePair = in.readLine()) != null) {
> > > arrKeyValue = keyValuePair.split("=");
> > >
> > > Above code reads incomplete data(read only 8192 bytes) at my customer's
> > > environment, but reads complete data in my environment.
> > >
> > > String keyValuePair = null;
> > > String[] arrKeyValue = null;
> > > BufferedReader in = new BufferedReader(new
> > > InputStreamReader(request.getInputStream()));
> > > while ((keyValuePair = in.readLine()) != null) {
> > > arrKeyValue = keyValuePair.split("=");
> > >
> > > Above code reads complete data in both the environments. *no changes
> done
> > > to customer's environment.
> > >
> > > I hope you can help me now by finding the reason for data lost at my
> > > customer's environment when using request.getReader().
> > >
> > > Thanks and Regards,
> > > Harish
> > >
> > > -----Original Message-----
> > > From: André Warnier [mailto:aw@ice-sa.com]
> > > Sent: Friday, October 28, 2011 9:08 PM
> > > To: Tomcat Users List
> > > Subject: Re: cannot read complete HTTP request body. It reads only 8192
> > > characters
> > >
> > > Konstantin Kolinko wrote:
> > > > 2011/10/27 Christopher Schultz <chris@christopherschultz.net>:
> > > >> On 10/27/2011 4:58 AM, Anantaneni Harish wrote:
> > > >>> Thanks for the directions the Rainer. Actually the issue is just
> > > >>> solved.
> > > >>>
> > > >>> We have changed from BufferedReader in = request.getReader();
> > > >>>
> > > >>> to
> > > >>>
> > > >>> BufferedReader in = new BufferedReader(new
> > > >>> InputStreamReader(request.getInputStream()));
> > > >>>
> > > >>> Now whole body has been read at my client's environment as well.
> > > >>>
> > > >>> But would like to know, what causes the issue. Do you have any
> > > >>> idea, why same method can read whole data in my environment and
> > > >>> does not read whole data at my customer's environment?
> > > >> You'll have to provide more information, such as the code you are
> > > >> using.
> > > >>
> > > >> I'm fairly sure Tomcat is not the source of the problem.
> > > >>
> > > >
> > > > +1.
> > > >
> > > > I think you need to pay more attention on the documentation of the
> > > > java.io.Reader#read() method, or maybe look for a tutorial.
> > > >
> > > > See also documentation for java.io.InputStream#available().
> > > >
> > > > In short:  the read() method returns a portion of data that is
> > > > currently available. If you need more data you must call read()
> > > > repeatedly in a loop until it returns -1.
> > > >
> > >
> > > .. and the difference between two systems, may be that on one system,
> the
> > > network is
> > > faster (or the system slower, or the buffer bigger) and so by the time
> > you
> > > do the read,
> > > there are more bytes available in the buffer.
> > >
> > > > If you had provided some of your source code that performs reading,
> we
> > > > would be able to point at the exact error in your code.
> > > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > > For additional commands, e-mail: users-help@tomcat.apache.org
> > >
> > >
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > > For additional commands, e-mail: users-help@tomcat.apache.org
> > >
> > >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message