There are variations to what happens under different circumstances with this IE bug. Here is an attempt to summarize the bug pattern:
- The client code sends an XHR request to the server.
- The user leaves the page before the response arrives.
- IE will wait for the response even though the page is gone, occupying the connection.
- If the response is returned in chunked mode (always used by polls) AND the owning window has been closed, then the socket will become a zombie socket forever occupying the connection in CLOSE_WAIT state. Otherwise it will be returned to the browser pool.
It sounds like you are staying in the same window and thus would just experience the delay until the "old" reverse ajax connection is released.
I have fixed the problem by aborting all ongoing XHR:s at page unload.
I will add cleanup of XHR calls when leaving page.