Closed Bug 1458793 Opened 7 years ago Closed 7 years ago

Intermittent browser/base/content/test/performance/browser_tabclose.js | unexpected changed rect: ({x1:0, x2:223, y1:0, y2:32, w:224, h:33}), window width: 1280 -

Categories

(Firefox :: General, defect, P5)

defect

Tracking

()

RESOLVED FIXED
Firefox 62
Tracking Status
firefox61 --- fixed
firefox62 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: dao)

References

Details

(Keywords: intermittent-failure)

Attachments

(1 file)

See Also: → 1448497
Assignee: nobody → dao+bmo
Blocks: 1183135
I had to use <= instead of == for the width because this is Linux-only and intermittent -- I still don't know why. https://treeherder.mozilla.org/#/jobs?repo=try&revision=3deab83b7c02814532c5b419ebded4db0a3706c4
Comment on attachment 8973296 [details] Bug 1458793 - Update flicker conditions to account for bug 1183135. https://reviewboard.mozilla.org/r/241770/#review247742 Thanks for digging into this, dao! ::: browser/base/content/test/performance/browser_tabclose.js:68 (Diff revision 1) > condition: r => > // In tab strip > r.y1 >= tabStripRect.top && r.y2 <= tabStripRect.bottom && > r.x1 >= tabStripRect.left && r.x2 <= tabStripRect.right && > - // Width of one tab. > - r.w == gBrowser.selectedTab.clientWidth > + // Width of one tab plus tab separator. > + r.w <= gBrowser.selectedTab.clientWidth + 1 (In reply to Dão Gottwald [::dao] from comment #3) > I had to use <= instead of == for the width because this is Linux-only and > intermittent -- I still don't know why. > > https://treeherder.mozilla.org/#/ > jobs?repo=try&revision=3deab83b7c02814532c5b419ebded4db0a3706c4 I think because this is sometimes wavering between (at least) the following types of captured frames: 224px width change: Before: https://imgur.com/XoaTwOt After: https://imgur.com/IHbYmAY 224px because what's happening is that the left-most tab is being selected, which creates a change rect that is 1px smaller than the tab because of the already-visible tab separator 225px width change: Before: https://imgur.com/uoG1fWN After: https://imgur.com/YTQR49t 225px because what's happening is that the right-most tab is being de-selected before the first tab is selected, so the right-most tab and the right-most separator disappears. Instead of checking for clientWidth + 1 or less, I think it'd make more sense to choose a smaller range of tolerance. Can we ensure that instead that r.w is within 1 or 2 pixels of gBrowser.selectedTab.clientWidth? You could perhaps use something like [this](https://searchfox.org/mozilla-central/rev/53afcfdbabed96883126d0ebbcac499b358e32f2/browser/base/content/test/performance/browser_tabopen.js#36), via: ```js inRange(gBrowser.selectedTab.clientWidth - r.w, 0, 2) ```
Attachment #8973296 - Flags: review?(mconley) → review+
Pushed by dgottwald@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/8a4ebd5b130d Update flicker conditions to account for bug 1183135. r=mconley
Thanks, dao!
Backout by toros@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/15e1801775a4 Backed out changeset 8a4ebd5b130d for frequently failing browser/base/content/test/performance/browser_tabclose.js on Linux on a CLOSED TREE
Log snippet with the failure: [task 2018-05-07T18:07:06.125Z] 18:07:06 INFO - TEST-START | browser/base/content/test/performance/browser_tabclose.js [task 2018-05-07T18:07:07.076Z] 18:07:07 INFO - TEST-INFO | started process screentopng [task 2018-05-07T18:07:07.629Z] 18:07:07 INFO - TEST-INFO | screentopng: exit 0 [task 2018-05-07T18:07:07.630Z] 18:07:07 INFO - Buffered messages logged at 18:07:06 [task 2018-05-07T18:07:07.630Z] 18:07:07 INFO - Entering test bound [task 2018-05-07T18:07:07.631Z] 18:07:07 INFO - TEST-PASS | browser/base/content/test/performance/browser_tabclose.js | 0 unexpected reflows - true == true - [task 2018-05-07T18:07:07.631Z] 18:07:07 INFO - comparing 4 frames [task 2018-05-07T18:07:07.632Z] 18:07:07 INFO - Buffered messages logged at 18:07:07 [task 2018-05-07T18:07:07.635Z] 18:07:07 INFO - TEST-FAIL | browser/base/content/test/performance/browser_tabclose.js | bug 1444886 - the next tab should be selected at the same time as the closed one disappears, ({x1:225, x2:449, y1:0, y2:32, w:225, h:33}), window width: 1280 - [task 2018-05-07T18:07:07.636Z] 18:07:07 INFO - Buffered messages finished [task 2018-05-07T18:07:07.638Z] 18:07:07 INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/performance/browser_tabclose.js | unexpected changed rect: ({x1:0, x2:223, y1:0, y2:32, w:224, h:33}), window width: 1280 - [task 2018-05-07T18:07:07.639Z] 18:07:07 INFO - Stack trace: [task 2018-05-07T18:07:07.640Z] 18:07:07 INFO - chrome://mochitests/content/browser/browser/base/content/test/performance/head.js:reportUnexpectedFlicker/rects<:574 [task 2018-05-07T18:07:07.644Z] 18:07:07 INFO - chrome://mochitests/content/browser/browser/base/content/test/performance/head.js:reportUnexpectedFlicker:565 [task 2018-05-07T18:07:07.647Z] 18:07:07 INFO - chrome://mochitests/content/browser/browser/base/content/test/performance/head.js:withPerfObserver:633
Flags: needinfo?(dao+bmo)
Pushed by dgottwald@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/05ed1e14418c Update flicker conditions to account for bug 1183135. r=mconley
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 62
https://treeherder.mozilla.org/#/jobs?repo=try&revision=7958bfdf67172760389ca8bd2bafa78d364c5c53 I tried to land this on beta with a=test-only but it looks like I'm not allowed to do this anymore.
I'm not sure what difficulties you hit, but that's still the policy. Anyway, I tagged it as affected specifically so it'd show up my "test-only fixes ready to ride-along with the next round of uplifts" query anyway :) https://hg.mozilla.org/releases/mozilla-beta/rev/5d7d7ee1bbd1
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: