Fixed
Details
Assignee
Seth LegerSeth LegerReporter
Seth LegerSeth LegerComponents
Sprint
NoneFix versions
Affects versions
Priority
Critical
Details
Details
Assignee
Seth Leger
Seth LegerReporter
Seth Leger
Seth LegerComponents
Sprint
None
Fix versions
Affects versions
Priority
PagerDuty
PagerDuty
PagerDuty
Created August 7, 2015 at 10:50 AM
Updated April 11, 2017 at 2:28 PM
Resolved April 11, 2017 at 10:29 AM
In the new Angular onmsList module pages (Minion and monitoring location lists), if you click too quickly on the "Next" button on the list and you have a large list of items then the page can get caught in an infinite refresh loop where it is trying to change the offset of the list to two separate values.
The symptom of this problem is that the list on the page and offset= in the address bar will oscillate between two sets of items and the browser will consume 100% of your CPU.
This is caused because the Next button calls setOffset() which triggers a refresh(). However, refresh() can call setOffset() in boundry conditions and if two overlapping calls happen:
A: setOffset() [Next button] A: refresh() B: setOffset() [Next button] A: setOffset() B: refresh() B: setOffset() A: refresh() ...
then you get an infinite loop.