Heartbeat doesn't return immediately

Hello,

When I’m running an application on IE9 with slightly modified Yaffle polyfill (which is enforced using XHR) I see that heartbeat requests aren’t returned with 200, but wait and then return 404 (subscription doesn’t exist).

What can be a reason for heartbeat request to be kept on the server and then return the above error (while the original subscription is perfectly legal)?

Can you reproduce the same issue with IE9 and http://chat.servicestack.net/default_ieshim ? heartbeats are returning 200 for me.

Subscription does not exist is simply that the subscription id on the heartbeat url, i.e. /event-heartbeat?id=... is not a registered subscription.

I can reproduce it using modified polyfill. Anyway, it seems that using XHR with IE9 raises a problem to access xhr.responseText property when xhr.readyState === 3, thus cannot be used with IE9.