Headers munged into RAW_POST_DATA

Hi,
we're seeing a really weird problem in our production environment.
"Connection: Keep-Alive\r\n" is being pre-pended to the RAW_POST_DATA,
which makes requests error out. This bug is seen infrequently and
*seems* to be browser-related, although I can't reproduce it using the
browser reported in HTTP_USER_AGENT.

Set up is a apache 2.2 -> hardware load balancer (NetScaler) ->
mongrel_cluster 0.2.1/mongrel 1.0 -> rails 1.2.1

Has anyone else seen this or have any advice? I'm thinking I'll cobble
together a kludge that inspects @head['RAW_POST_DATA'] and just sub
out "Connection: Keep-Alive\r\n", but I'd really like to avoid doing
that. Jeremy Kemper sent me here, suggesting this is a bug related to
a recent change in svn trunk?

Here are two recent examples of the bug. Output is
@request.env.keys.sort.each { |key| puts key:
@request.env[key].to_s.strip }:

Parameters: {"ad"=>"5", "action"=>"new", "ct"=>nil,
"controller"=>"ad_keywords", "Connection: Keep-Alive\r
\nad_keyword"=>{"smart_keywords"=>"Non Emergency Transport \r\nNon
Emergency Transportation\r\nTransportation for Disabled\r\nTransport
for Disabled\r\nHandicap Transportation\r\nHandicap Transport\r
\nDisability Transportation\r\nDisability Transport\r\nMedical
Transportation Service\r\nMedical Transport Service\r\nMedical
Transportation \r\nMedical Transport \r\nMedical Transportation Vans\r
\nMedical Transport Vans\r\nMedical Patient Transportation \r\nMedical
Patient Transport"}, "cid"=>"7"}
  * Rails root: /prod/amp/current

  * CONTENT_LENGTH : 582
  * CONTENT_TYPE : application/x-www-form-urlencoded
  * GATEWAY_INTERFACE : CGI/1.2
  * HTTP_ACCEPT : text/xml,application/xml,application/
xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
  * HTTP_ACCEPT_CHARSET : ISO-8859-1,utf-8;q=0.7,*;q=0.7
  * HTTP_ACCEPT_ENCODING : gzip,deflate
  * HTTP_ACCEPT_LANGUAGE : en-us,en;q=0.5
  * HTTP_CONTENT_LENGTH : 582
  * HTTP_CONTENT_TYPE : application/x-www-form-urlencoded
  * HTTP_COOKIE : accepting=1;
  * HTTP_HOST : foo.com
  * HTTP_MAX_FORWARDS : 10
  * HTTP_REFERER : https://foo.com/ad_keywords/new?ad=5&cid=7
  * HTTP_USER_AGENT : Mozilla/5.0 (Windows; U; Windows NT 5.1;
en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3
  * HTTP_VERSION : HTTP/1.0
  * HTTP_X_BROWSER_TIMESTAMP: 386789
  * HTTP_X_FORWARDED_FOR : xx.xxx.xxx.xxx
  * HTTP_X_FORWARDED_HOST : foo.com
  * HTTP_X_FORWARDED_PROTO : https
  * HTTP_X_FORWARDED_SERVER : foo.com
  * HTTP_X_NAVID : f5c-50cfb
  * PATH_INFO : /ad_keywords/new
  * QUERY_STRING : cid=7&ad=5&ct=
  * RAW_POST_DATA : Connection: Keep-Alive
  ad_keyword%5Bsmart_keywords%5D=Non+Emergency+Transport+%0D%0ANon
+Emergency+Transportation%0D%0ATransportation+for+Disabled%0D
%0ATransport+for+Disabled%0D%0AHandicap+Transportation%0D%0AHandicap
+Transport%0D%0ADisability+Transportation%0D%0ADisability+Transport%0D
%0AMedical+Transportation+Service%0D%0AMedical+Transport+Service%0D
%0AMedical+Transportation+%0D%0AMedical+Transport+%0D%0AMedical
+Transportation+Vans%0D%0AMedical+Transport+Vans%0D%0AMedical+Patient
+Transportation+%0D%0AMedical+Patient+Transport%0D%0A&ad_keyword
%5Bbroad_keywords%5D=
  * REMOTE_ADDR : xx.xxx.xxx.xxx
  * REQUEST_METHOD : POST
  * REQUEST_PATH : /ad_keywords/new
  * REQUEST_URI : /ad_keywords/new?cid=7&ad=5&ct=
  * SCRIPT_NAME : /
  * SERVER_NAME : foo.com
  * SERVER_PORT : 80
  * SERVER_PROTOCOL : HTTP/1.1
  * SERVER_SOFTWARE : Mongrel 1.0

Parameters: {"Connection: Keep-Alive\r\ncoupon_code"=>"",
"action"=>"deposit_funds", "controller"=>"accounts",
"deposit_amount"=>""}

  * CONTENT_LENGTH : 52
  * CONTENT_TYPE : application/x-www-form-urlencoded
  * GATEWAY_INTERFACE : CGI/1.2
  * HTTP_ACCEPT : image/gif, image/x-xbitmap, image/jpeg,
image/pjpeg, application/x-ms-application, application/vnd.ms-
xpsdocument, application/xaml+xml, application/x-ms-xbap, application/
msword, application/vnd.ms-excel, application/vnd.ms-powerpoint,
application/x-shockwave-flash, */*
  * HTTP_ACCEPT_ENCODING : gzip, deflate
  * HTTP_ACCEPT_LANGUAGE : en-us
  * HTTP_CACHE_CONTROL : no-cache
  * HTTP_CONTENT_LENGTH : 52
  * HTTP_CONTENT_TYPE : application/x-www-form-urlencoded
  * HTTP_COOKIE : accepting=1;
  * HTTP_HOST : foo.com
  * HTTP_MAX_FORWARDS : 10
  * HTTP_REFERER : https://foo.com/accounts/deposit_funds?aid=6
  * HTTP_UA_CPU : x86
  * HTTP_USER_AGENT : Mozilla/4.0 (compatible; MSIE 7.0;
Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET
CLR 3.0.04506; .NET CLR 1.1.4322)
  * HTTP_VERSION : HTTP/1.0
  * HTTP_X_FORWARDED_FOR : xxx.xxx.xxx.xxx
  * HTTP_X_FORWARDED_HOST : foo.com
  * HTTP_X_FORWARDED_PROTO : https
  * HTTP_X_FORWARDED_SERVER: foo.com
  * PATH_INFO : /accounts/deposit_funds
  * RAW_POST_DATA : Connection: Keep-Alive
  coupon_code=&deposit_amount=
  * REMOTE_ADDR : xxx.xxx.xxx.xxx
  * REQUEST_METHOD : POST
  * REQUEST_PATH : /accounts/deposit_funds
  * REQUEST_URI : /accounts/deposit_funds
  * SCRIPT_NAME : /
  * SERVER_NAME : foo.com
  * SERVER_PORT : 80
  * SERVER_PROTOCOL : HTTP/1.1
  * SERVER_SOFTWARE : Mongrel 1.0