I'm having a strange issue with haproxy, involving a client who is using HTTP/1.1 "chunking" with requests, but is rudely not allowing fallback to HTTP/1.0 behavior. (They're using Apache Coyote, if that makes any difference).

Any attempt to grab data from them results in something like this from java's HttpClient (since wget doesn't support chunking):

2009/07/27 14:24:38:189 EDT [DEBUG] header - >> "User-Agent: Jakarta Commons-HttpClient/3.1[\r][\n]" 2009/07/27 14:24:38:190 EDT [DEBUG] header - >> "Host: (redacted):9080[\r][\n]"
2009/07/27 14:24:38:190 EDT [DEBUG] header - >> "[\r][\n]"
2009/07/27 14:24:38:275 EDT [DEBUG] header - << "HTTP/1.1 200 OK[\r][\n]"
2009/07/27 14:24:38:276 EDT [DEBUG] header - << "HTTP/1.1 200 OK[\r][\n]"
2009/07/27 14:24:38:281 EDT [DEBUG] header - << "Server: Apache-Coyote/1.1[\r][\n]" 2009/07/27 14:24:38:282 EDT [DEBUG] header - << "Content-Type: text/xml[\r][\n]" 2009/07/27 14:24:38:283 EDT [DEBUG] header - << "Transfer-Encoding: chunked[\r][\n]" 2009/07/27 14:24:38:284 EDT [DEBUG] header - << "Date: Mon, 27 Jul 2009 18:24:38 GMT[\r][\n]"
2009/07/27 14:24:38:285 EDT [DEBUG] header - << "[\r][\n]"
HTTP/1.1 200 OK
2009/07/27 14:24:38:297 EDT [DEBUG] content - << "2"
2009/07/27 14:24:38:298 EDT [DEBUG] content - << "0"
2009/07/27 14:24:38:299 EDT [DEBUG] content - << "0"
2009/07/27 14:24:38:299 EDT [DEBUG] content - << "0"
2009/07/27 14:24:38:300 EDT [DEBUG] content - << "[\r]"
2009/07/27 14:24:38:300 EDT [DEBUG] content - << "[\n]"

It obviously wants an additional request for the first 2000 bytes of data, but the client just sits there, even though HttpClient supports chunking. Has anyone else seen behavior like this?

I have tried messing with the client and server timeout values, but it always seems to produce the same result.

--
Jeff Buchbinder
Senior Infrastructure Engineer
Rave Wireless, Inc
jbuchbin...@ravewireless.com


Reply via email to