﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
5404	OSM-API-close and HTTP-Request-Pipelining don't work over some proxies - JOSM must be restarted for further edits	Fabi2	Fabi2	"Now had the time to further analyze the bug in ticket #3970.

After the following HTTP-Request was sent to the proxy, JOSM seems to wait forever for an reply, which never is sent.

{{{
PUT http://api.openstreetmap.org/api/0.6/changeset/5656938/close HTTP/1.1
Authorization: Basic Removed=
Content-type: text/xml
User-Agent: JOSM/1.5 (3503 de) Java/1.6.0_21
Host: api.openstreetmap.org
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Proxy-Connection: keep-alive
Content-Length: 0
}}}

This means the connection is stalled, as you can see on the wireshark screenshot,

The proxy (Winroute Pro) seems to have this bug with HTTP-request-pipelining, when the Content-Length is 0 bytes.

The request-pipeling is not used by JOSM, as the connection is always closed after each HTTP-request. So ""Proxy-Connection: keep-alive"" should be ""Proxy-Connection: close"" or the header should be removed. 

The buggy proxy send the request to the outside OSM-API server, but then the connection hangs on the inside.

The changeset is closed on the server, but even when I check manually for it's status (Ctrl-Alt-Q) it is not noticed by JOSM and I must restart JOSM to get rid of the already uploaded changeset. :-(

HTTP-Request-Pipelining for webservers is still turned off by default in Firefox (see about:config), even when many webservers should be better written then some proxy server such as Winroute Pro.

So please turn the pipelining off, at least if an proxy is configured.

System: Linux x86_64
$ java -version
java version ""1.6.0_21""
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) 64-Bit Server VM (build 17.0-b16, mixed mode)
"	defect	reopened	normal		Core	latest			
