GNOME Bugzilla – Bug 619633
associate pending connections with specific messages
Last modified: 2010-06-09 15:28:33 UTC
Currently libsoup goes to some effort to keep pending connections independent of messages. this is useful in some cases when servers are slow to accept new connections, because it means that if a message gets queued, and we start creating a new connection for it, but then an existing keep-alive connection gets freed up, we can just queue the message on that connection rather than continuing to wait for the new one. However, it also sucks in various ways, including the fact that if a connection fails, we don't know which message we had started creating it for, so we end up cancelling all pending messages for that host, which is lame when the server or network is just slightly-flaky and, eg, drops every 10th connection. It also makes the bookkeeping a lot more complicated, and makes it really difficult to answer the question "is this message currently blocked on DNS". So, change that.
ok, this turned into a big yak-shaving mission (mostly because of the handling of https proxy CONNECT), but I've pushed this to master now. Everyone should update!