Skip to content

Stop DDOSing ourselves

Luke Bennett requested to merge 24807-stop-ddosing-ourselves into master

What does this MR do?

Adds hiddenInterval to SmartInterval settings. This will be the interval used whilst the tab is inactive. If this setting is not set it will cancel as it would have done before.

Adds immediateExecution to SmartInterval settings. This boolean will dictate whether to execute the callback once before the first interval or not.

Uses SmartInterval with the new hiddenInterval settings to slow the polling for the MR widget on inactive tabs.

Fixes issue where SmartIntervals visibilitychange listeners are not getting called because jQuery doesn't support them.

Are there points in the code the reviewer needs to double check?

Why was this MR needed?

We're ddosing ourselves on the MR page.

Screenshots (if relevant)

Screen_Shot_2016-11-25_at_18.36.25

~30 seconds difference between the first 2 requests (a couple requests had fired already so it's backed off already).

-changed to different tab-

~2 minutes difference between the middle 2 requests.

-changed tab back to MR-

~10 seconds difference between the last 2 requests.

Does this MR meet the acceptance criteria?

What are the relevant issue numbers?

Closes #24807 (closed)

Merge request reports