aspnetcore/test/Microsoft.AspNetCore.Socket...
David Fowler 934f6a70d1 Various fixes in HttpConnectionDispatcher (#151)
- The connection state object is manipulated by multiple parties in a non thread safe way. This change introduces a semaphore that should be used by anyone updating or reading the connection state. 
- Handle cases where there's an active request for a connection id and another incoming request for the same connection id, sse and websockets 409 and long polling kicks out the previous connection (https://github.com/aspnet/SignalR/issues/27 and https://github.com/aspnet/SignalR/issues/4)
- Handle requests being processed for disposed connections. There was a race where the background thread could remove and clean up the connection while it was about to be processed.
- Synchronize between the background scanning thread and the request threads when updating the connection state.
- Added `DisposeAndRemoveAsync` to the connection manager that handles`DisposeAsync` throwing and properly removes connections from connection tracking.
- Added Start to ConnectionManager so that testing is easier (background timer doesn't kick in unless start is called).
- Added RequestId to connection state for easier debugging and correlation (can easily see which request is currently processing the logical connection).
- Added tests
2017-01-25 22:27:55 +00:00
..
Properties
ConnectionManagerTests.cs Various fixes in HttpConnectionDispatcher (#151) 2017-01-25 22:27:55 +00:00
HttpConnectionDispatcherTests.cs Various fixes in HttpConnectionDispatcher (#151) 2017-01-25 22:27:55 +00:00
LongPollingTests.cs Various fixes in HttpConnectionDispatcher (#151) 2017-01-25 22:27:55 +00:00
Microsoft.AspNetCore.Sockets.Tests.xproj
ServerSentEventsTests.cs Various fixes in HttpConnectionDispatcher (#151) 2017-01-25 22:27:55 +00:00
WebSocketsTests.cs
project.json