Login | Register
My pages Projects Community openCollabNet

Discussions > users > Chunked transfers and keep alive

Discussion topic

Back to topic list

Chunked transfers and keep alive

Author fcohen
Full name Frank Cohen
Date 2007-01-12 10:36:22 PST
Message Hi MaxQ folks: A few TestMaker users have noticed that recording
using the MaxQ proxy recorder that is bundled into TestMaker is
running really slowly with certain browsers. MaxQ does not seem to
have any specific support for chucked transfer types. Do I have that
right? Has anyone else bumped into this problem?



Hi Geoff: Thanks for the research. TestMaker uses a branch of the
MaxQ proxy recorder. MaxQ sets up a proxy to watch for HTTP traffic.

The branch of the MaxQ code is part of the tm44 repository in
cvs.pushtotest.com. The bit of code that handles the transfer size is
in com.bitmechanic.maxq​.RequestHandler. There's no real support for
chucked transfers. If there is no content-length header then it just
keeps reading and forwarding bytes as long as the stream stays open.

We're planning to add HTTPS support to the proxy recorder in
TestMaker 5. I'm going to do some research on this to see what should
be done to better support checked transfers. I'll also ask the MaxQ
group, although they've been dormant for a long time.


On Jan 12, 2007, at 9:25 AM, Geoff Meakin wrote:
> Hi Frank,
> I was mucking around with both testmaker and my own proxy server
> recently, and noticed a problem which may ring a bell with you or
> not...
> I don't really know how testmaker's proxy works, but if a server
> returns
> a header:
> Transfer-encoding: chunked
> But the proxy itself sends back unchunked data, then the browser
> will be
> very slow in a HTTP/1.1 type keep-alive connection.
> (Because the browser expecting chunked information and not getting
> it so
> keeping the connection open even if the server specifies Connection:
> close)
> If none of that makes sense then don't worry, I fixed mine by
> intercepting transfer-encoding: chunked and changing it to a
> Content-Length declaration instead.
> Cheers
> -Geoff
> -----Original Message-----
> From: users-bounces@lists.​pushtotest.com
> [mailto:users-bounce​s@lists.pushtotest.c​om] On Behalf Of Frank Cohen
> Sent: 11 January 2007 18:53
> To: TestMaker users list
> Subject: [ptt-users] Please vote on TestMaker 4.4.1 release
> So far, the response to the maintenance release has been positive.
> Would you please vote on releasing it. Thanks for everyone's help on
> this. -Frank
> ---
> A maintenance release of TestMaker 4.4.1 is now available for
> download at:
> http://downloads.pus​htotest.com/TestMake​r441.zip
> Please download it and look for problems, documentation bugs, and
> other issues. Please then let us know if you think this build is
> ready for release. We would ideally like to make this release general
> available in the coming week.
> Below is a list of changes in the new 4.4.1 distribution:
> - TestMaker 4.4.1 requires Java 1.5 or greater. We have started to
> use generics in the source and that causes the requirement. Please
> give us feedback on this decision. If it is a real pain to require
> Java 1.5 then we could back out these changes and save the Java 1.5
> requirement for TestMaker 5 (which comes out later this year.)
> - WebObjects and Microsoft IIS users have occassionally found these
> servers returning HTTP redirect response codes with a relative URI.
> RFC 2116 section 14.30 requires the location header to be an absolute
> URI. According to the RFC relative URIs must only be sent using the
> META refresh tag. The TestMaker team does not want TestMaker to be a
> traffic cop for implementations of RFC 2116. So TestMaker 4.4.1
> HTTPProtocol has a special check for the relative URI on redirect
> (HTTP response code 302) and adds the domain name itself from the
> original POST. TestMaker scripts must use the
> http_protocol_handle​r.connect(1) form to follow redirects. Recorded
> scripts do not automatically add the (1) parameter. Thanks to Aaron
> Romeo, Dominique de Waleffe, and Kevin Dyer for participating in
> developing the solution.
> - TestMaker.sh and TestMaker.bat are start-up shell scripts for
> TestMaker on Unix/Linux and Windows operating systems. These scripts
> build a classpath for TestMaker. Previous versions used external
> scripts in the util directory to build the complete classpath. On
> Windows NT and 2000 operating systems this caused a "script too long"
> exception. TestMaker 4.4.1 builds the classpath in the TestMaker.bat
> and TestMaker.sh scripts directly. Thanks to Aaron Romeo for pointing
> out the problems and recommending a solution.
> - Scripts using TestMaker_home/lib/agentbase.py would throw a
> NullPointerException if there were no return parameters in a GET or
> POST command. Thanks to Todd Bradfute for a patch that solves this
> problem.
> Scripts using agentbase.py to check links to image tags would throw a
> "Has no attribute 'handler'" exception when an exception was
> encountered. Thanks to Todd Bradfute for a patch that solves this
> problem.
> - Long running XSTest operations may run out of memory. HTTPProtocol
> has a URLlist that grows while the test runs to keep track of URLs
> and redirected URLs. TestMaker 4.4.1 changes agentbase.py to call the
> HTTPProtocol clearURLlist() method in the config() method. That way
> the list is reset each time the test's setUp() method is called.
> Thanks to Carl Herder for pointing out the problems and recommending
> a solution.
> - agentbase.py has a new feature to control the content type of a
> http-post, and also post a pure value as well as key=value. The post
> method takes an additional optional parameter to set the content-type
> of the post. For instance, post( url, params, 'application/x-www-form-
> urlencoded' ). Thanks to Geoff Meakin (geoffm at gamesys.co dot uk)
> for the contribution.
> -Frank
> --
> Frank Cohen, PushToTest, http://www.PushToTest.com, phone 408 374 7426
> TestMaker: The open-source SOA test automation tool
> ____________________​____________________​_______
> Users mailing list
> Users at lists dot pushtotest dot com
> http://lists.pushtot​est.com/mailman/list​info/users
> ____________________​____________________​_______
> Users mailing list
> Users at lists dot pushtotest dot com
> http://lists.pushtot​est.com/mailman/list​info/users

« Previous message in topic | 1 of 2 | Next message in topic »


Show all messages in topic

Chunked transfers and keep alive fcohen Frank Cohen 2007-01-12 10:36:22 PST
     Re: [maxq-users] Chunked transfers and keep alive oliverbock Oliver Bock 2007-01-13 13:21:36 PST
Messages per page: