NSURLConnection/CFNetwork HTTP long polling request support

Originator:michaelvillar.com
Number:rdar://12375783 Date Originated:26-Sep-2012 02:12 PM
Status:Open Resolved:
Product:Mac OS SDK Product Version:10.7
Classification: Reproducible:Yes
 
Summary:
Some requests don't get through if we have a pending HTTP long polling request on the same hostname.

Steps to Reproduce:
Using NSURLConnection :
- Create a HTTP long polling request on a hostname and never terminate this request.
- Send other requests (not long polling one) on the same hostname.

Expected Results:
- The other requests should get through

Actual Results:
- Some of the other request are not sent. They seem to be blocked into a queue. The server doesn't receive any request. The request get a timeout after a while.

Notes:
- For now, we avoid this bug by using a different hostname on the long polling request than on the other requests.
- Another bug that can be caused. Sometimes, opening a long polling request on a hostname doesn't work at all, probably because the old long polling request is still in the queue. To fix it, we need to use random hostnames for long polling requests…
- More information on this thread : http://web.archiveorange.com/archive/v/x0fiWJS4tDbMzCjn5GsJ

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!