-
Notifications
You must be signed in to change notification settings - Fork 71.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix falsely suspended timeago alarms (#5170)
* Fix continuous suspension of the timeago alerts The default hearbeat-setting is 60 seconds, so the delta between two timeago-checks will always be >15 seconds and the timeago-alarms will always be suspended (that's what Papertrail also shows). To fix this, make the delta-check heartbeat-setting-dependant and also simplify the code by using just 1 variable. * Add test that verifies the hibernation detection behaviour The real-world test would be to actually wait for a couple of minutes (with 2 * heartbeat of default settings) in the unit test, but this is not feasible, so just modify the heartbeat-setting to a lower value. I tested it by only running tests inside `tests/timeago.test.js` and by actually deploying this code and testing the alarms with Pushover and reading the logs in Papertrail. Before this change, I saw a 'Hibernation detected' log every minute. After this change, I didn't see it anymore, probably because the app wasn't actually hibernated (yet). * Take sulkaharo's feedback into account and differentiate between client and server (by introducing it in sandbox.js). On the client the behaviour is different from the server: > On client, the issue is browsers stop the execution of JS if the window is not > visible and the alarm is falsely triggered immediately when the execution is > resumed, so we need to suspend the alarm for ~10 seconds after the execution has > resumed to give the client time to update the data to prevent false alarms. While on the server, the default heartbeat from 60s needs to be taken into account to prevent the timeago alarm from falsely triggering. So detect hibernation there if the last check was more than 2 heartbeats ago. * Fix the tests by adding settings to the context, which is now required by timeago. Also, change the timeago test a bit so that it both succeeds when testing in isolation as when testing it along with the other tests.
- Loading branch information
Showing
8 changed files
with
53 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters