You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
We have a race condition where the web app could not receive some event logs from the web socket. It could happen because after we run a test, we need to subscribe to the /event resource using the web socket, therefore there is a time between sending the web socket subscription and the server registering it where some event logs could have already happened.
To Reproduce (not easy to reproduce)
Steps to reproduce the behavior:
Create a test with a failed trace
You should see the test run page
Go to the trace tab
Sometimes some events from trace stage are missing
Expected behavior
We should receive all the event logs from the server. There was already a PR to introduce a temporary buffer in the subscription manager (it was causing some issues around tests/transactions so probably it needs to be revisited).
Screenshots
Our current approach is to get the initial logs from the rest /events endpoint, you can see in the screenshot that it returns the events that are already in the DB:
At the same time we subscribe to the web socket updates, however we start getting the events after the subscription is registered by the server:
The text was updated successfully, but these errors were encountered:
jorgeepc
changed the title
Race condition not showing all events from the websocket
[Error Handling] - Race condition not showing all events from the websocket
Apr 11, 2023
We'll keep an eye on this and if it becomes too big we can decide how to solve it
xoscar
changed the title
[Error Handling] - Race condition not showing all events from the websocket
Race condition not showing all events from the websocket
Apr 17, 2023
Describe the bug
We have a race condition where the web app could not receive some event logs from the web socket. It could happen because after we
run
a test, we need to subscribe to the/event
resource using the web socket, therefore there is a time betweensending the web socket subscription
andthe server registering it
where some event logs could have already happened.To Reproduce (not easy to reproduce)
Steps to reproduce the behavior:
Expected behavior
We should receive all the event logs from the server. There was already a PR to introduce a temporary buffer in the subscription manager (it was causing some issues around tests/transactions so probably it needs to be revisited).
Screenshots
Our current approach is to get the initial logs from the rest
/events
endpoint, you can see in the screenshot that it returns the events that are already in the DB:At the same time we subscribe to the web socket updates, however we start getting the events after the subscription is registered by the server:
The text was updated successfully, but these errors were encountered: