Closed
Bug 1401072
Opened 8 years ago
Closed 7 years ago
Intermittent browser/base/content/test/performance/browser_urlbar_search_reflows.js | Unused expected reflow: ["adjustHeight@chrome://global/content/bindings/autocomplete.xml","onxblpopupshown@chrome://global/content/bindings/autocomplete.xml"]
Categories
(Firefox :: Address Bar, defect, P5)
Firefox
Address Bar
Tracking
()
RESOLVED
FIXED
Firefox 60
Tracking | Status | |
---|---|---|
firefox60 | --- | fixed |
People
(Reporter: intermittent-bug-filer, Assigned: mconley)
References
Details
(Keywords: intermittent-failure)
Attachments
(1 file)
Comment hidden (Intermittent Failures Robot) |
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → INCOMPLETE
Assignee | ||
Comment 3•7 years ago
|
||
I suspect I'm about to re-open this by landing bug 1434376. Thankfully, I have a patch that seems to fix it.
Status: RESOLVED → REOPENED
Resolution: INCOMPLETE → ---
Comment hidden (mozreview-request) |
Comment 5•7 years ago
|
||
mozreview-review |
Comment on attachment 8953796 [details]
Bug 1401072 - Update browser_urlbar_search_reflows to accomodate DOM dirtying done in setTimeout.
https://reviewboard.mozilla.org/r/222988/#review228864
I'm ok with the current patch if it stops an intermittent we are seeing, but see the following comments for possible future improvements.
::: browser/base/content/test/performance/browser_urlbar_search_reflows.js:166
(Diff revision 1)
> popup.onResultsAdded = () => {
> dirtyFrameFn();
> oldResultsAdded();
> };
>
> + win.setTimeout = (fn, ms) => {
Is this something that should go in the head file?
If I understand correctly, you are saying that at setTimeout callback does reflows here, should we automatically ensure the test waits at least as long as the longest setTimeout that has been requested since we started the test? (ie. could this reduce intermittents?)
I see the test already uses requestIdleCallback to workaround these timeouts. Is this more reliably than using our own timeout (with a slightly longer time than the longest timeout detected)? Should we move that instead to our reflow observer code?
::: browser/base/content/test/performance/browser_urlbar_search_reflows.js:169
(Diff revision 1)
> };
>
> + win.setTimeout = (fn, ms) => {
> + oldSetTimeout(() => {
> + dirtyFrameFn();
> + fn();
I hope:
- nothing is using the setTimeout form where 'fn' is a string rather than a function. (Hopefully we have eslint coverage to ban that deprecated form)
- nothing expects clearTimeout to work.
Attachment #8953796 -
Flags: review?(florian) → review+
Comment hidden (mozreview-request) |
Assignee | ||
Comment 7•7 years ago
|
||
mozreview-review-reply |
Comment on attachment 8953796 [details]
Bug 1401072 - Update browser_urlbar_search_reflows to accomodate DOM dirtying done in setTimeout.
https://reviewboard.mozilla.org/r/222988/#review228864
> Is this something that should go in the head file?
>
> If I understand correctly, you are saying that at setTimeout callback does reflows here, should we automatically ensure the test waits at least as long as the longest setTimeout that has been requested since we started the test? (ie. could this reduce intermittents?)
>
> I see the test already uses requestIdleCallback to workaround these timeouts. Is this more reliably than using our own timeout (with a slightly longer time than the longest timeout detected)? Should we move that instead to our reflow observer code?
Yeah, I think opening a bug to maybe try moving setTimeout wrapping into the head.js is a good idea. I'll file a follow-up after this lands.
> I hope:
> - nothing is using the setTimeout form where 'fn' is a string rather than a function. (Hopefully we have eslint coverage to ban that deprecated form)
> - nothing expects clearTimeout to work.
I can't see instances of the string form of `setTimeout` in the URLbar code, so that's good. I _do_, however, see usage of clearTimeout. I can get that to work if I properly return the old setTimeout function value though, so I'll do that. Thanks!
Comment hidden (mozreview-request) |
Pushed by mconley@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/17857acb21a5
Update browser_urlbar_search_reflows to accomodate DOM dirtying done in setTimeout. r=florian
Comment 10•7 years ago
|
||
bugherder |
Status: REOPENED → RESOLVED
Closed: 8 years ago → 7 years ago
status-firefox60:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → Firefox 60
Comment hidden (Intermittent Failures Robot) |
Updated•7 years ago
|
Assignee: nobody → mconley
You need to log in
before you can comment on or make changes to this bug.
Description
•