New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
core: if the socket disconnects, reconnect with browser-login event with the new socket #1340
Conversation
@stefanpenner @johanneswuerbach would like to get your thoughts. |
@step2yeung seems too good to be true, whats the catch? |
@stefanpenner Great question. Let me add a bit more context in what I believe this code change does: One catch could be: Sidenote: Additional anecdotical evidence for this fix. For several ember test suite that failed for |
1055ec4
to
fd23c6d
Compare
…nt with the new socket
@step2yeung thank you for the explanation, that makes sense. Thank you also for adding the reconnect limit, that we we don't just get stuck reconnecting forever if something is seriously wrong. This basically sounds to me more like testem bugfix then anything else, is that the right way for me to think about it? Are there next steps for this? |
Yes, i believe that is a good way to look at this change. Where the bug is testem ignoring reconnects. |
@step2yeung should we release? The appveyor test does need to be fixed, but it seems unrelated to this PR.. |
@stefanpenner yes please! This should be release worthy. Got #1335 started for the appveyor tests fixes |
I wonder if it helps with this: #1021 (comment) ? |
@raido I don't think this change helps with your issue. This helps fixes with socket disconnecting during the test execution. If I understand your issue correctly, it looks like startup of tests does not even happen. So you should be getting |
You are correct. I get browser initial connection timeout. I have it set at 120s instead of default 30s but no help. |
released as v2.16.0 🎉 |
How will it get into ember apps? Through internal dependency bump? |
@raido ember-cli depends on testem, so this will come with ember-cli |
I simply updated version in lock file. |
re-rolling the lockfile should be sufficient. |
core: if the socket disconnects, reconnect with browser-login event with the new socket
Scenario:
Sometimes, socketio disconnects. This emits a
disconnect
event, causing testem to callonDisconnect
.onDisconnect
sets up a timeout with the value frombrowser_disconnect_timeout
, which will always expire and report anBrowser timeout exceeded: <x>s
error. The disconnect timeout doesn't seem useful, since nothing is done in between.Change:
Reconnect the browser socket. This improves the resilience from socket disconnecting.
eg. Help with issues like #1021