FFM-6877 - Dropped SSE connections are not being detected
What
SSE EventSource does not detect that a connection may have dropped. This update removes calls to StreamReader's EndOfStream/ReadLineAsync which will hang forever if the socket has no data arriving. Instead, read and parse the lines directly from the SSE source and add a CancellationTokenSource with a timeout of 60 seconds, if no data arrives.
Why
We're getting customer reports of flags not updating correctly when the SDK has been left running for some time.
Testing
Added new Wiremock tests for testing EventSource, also manual testing
FFM-6877 - Dropped SSE connections are not being detected
What SSE EventSource does not detect that a connection may have dropped. This update removes calls to StreamReader's EndOfStream/ReadLineAsync which will hang forever if the socket has no data arriving. Instead, read and parse the lines directly from the SSE source and add a CancellationTokenSource with a timeout of 60 seconds, if no data arrives.
Why We're getting customer reports of flags not updating correctly when the SDK has been left running for some time.
Testing Added new Wiremock tests for testing EventSource, also manual testing