Closed Bug 1735691 Opened 3 years ago Closed 3 years ago

Quickly clicking "explore colorways" then "keep previous" twice makes upgrade spotlight stuck

Categories

(Firefox :: Messaging System, defect, P1)

defect

Tracking

()

VERIFIED FIXED
95 Branch
Iteration:
95.1 - Oct 4 - Oct 17
Tracking Status
firefox-esr78 --- unaffected
firefox-esr91 --- unaffected
firefox93 --- unaffected
firefox94 + verified
firefox95 --- verified

People

(Reporter: Mardak, Assigned: Mardak)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

Attachments

(1 file)

Bug 1728853 introduced reverting to previous theme on secondary button of second screen. This waits for the AddonManager.getAddonsByTypes promise to resolve before continuing to the next screen. This allows additional clicks to be handled concurrently and that breaks things.

https://searchfox.org/mozilla-central/rev/0998b61022a1ece43afe3c750077e5804c6c6392/browser/base/content/upgradeDialog.js#324-326

Doing some quick timing checks of how long (milliseconds) until getAddonsByTypes resolves after restarting Firefox:

1210
723
641
763
642
821
588
635
632
635

So I suppose it's possible for slower machines to take multiple seconds after launching Firefox for the promise to finish and potentially run into this issue if clicking multiple times.

[Tracking Requested - why for this release]: Users could get stuck on the upgrade spotlight

Assignee: nobody → edilee
Iteration: --- → 95.1 - Oct 4 - Oct 17
Priority: -- → P1

Remember that advance is busy to cancel other advances.

Set release status flags based on info from the regressing bug 1728853

Pushed by elee@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/8641415a3dd2 Quickly clicking "explore colorways" then "keep previous" twice makes upgrade spotlight stuck r=pdahiya
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 95 Branch

Could someone verify this before we uplift to late beta? This also landed with extra telemetry to see how often users run into this.

  1. set browser.startup.homepage_override.mstone to 93 and clear browser.startup.upgradeDialog.version
  2. restart firefox
  3. quickly click "explore colorways"
  4. click "keep previous" twice

before: dialog shows confetti with colorways title with buttons not functional
fixed: probably a short wait before screen moves on to thank you. about:telemetry Events should also show upgrade_dialog#content#button#busy:upgrade-dialog-colorway-secondary-button

Might help to test on a slower machine. I needed to try 5 times even using keyboard to press enter for the first screen and mouse already hovering over "not now" to click on second screen.

Flags: needinfo?(romartin)

I have verified that this issue is no longer reproducible by following the steps provided in comment 7 and repeating the steps multiple times using Firefox Nightly 95.0a1 (Build ID: 20211017213754) on Windows 10 x64, Windows 7 x64, macOS 11.6, and Ubuntu Linux 20.04.

That being said, I did not manage to trigger the "upgrade_dialog#content#button#busy:upgrade-dialog-colorway-secondary-button" telemetry ping. I have all the correct telemetry pings in the "about:telemetry#events-tab" page but the one mentioned above. Can you please weigh in on this Ed?

Flags: needinfo?(romartin) → needinfo?(edilee)

(In reply to Robert Martin [:romartin], Ecosystem QA from comment #8)

I did not manage to trigger the "upgrade_dialog#content#button#busy:upgrade-dialog-colorway-secondary-button" telemetry ping

That would seem to suggest the bug wasn't encountered. Did you manage to get it stuck before the fix version? Maybe you can try quickly double clicking from the first screen?

Looking at nightly telemetry, this does seem to be pretty rare with so far a total of 4 occurrences of busy:upgrade-dialog-colorway-primary-button and once for busy:upgrade-dialog-thankyou-primary-button. Looking at one sequence of telemetry events, it seems like the user might have actually double clicked the primary button from the first screen:

  1. reason#satisfied T+0ms
  2. show#3-screens T+5,188ms
  3. show#upgrade-dialog-start-primary-button T+5,313ms
  4. button#upgrade-dialog-start-primary-button T+76,110ms
  5. show#random-1 T+76,141ms
  6. button#busy:upgrade-dialog-colorway-primary-button T+76,297ms
  7. show#upgrade-dialog-colorway-primary-button T+76,328ms

Here it seems like it took 5 seconds to finish showing the upgrade dialog (really slow machine??). Over 70 seconds later the user clicks on the primary button (user might have been idle/away), but 187ms later, the primary button was clicked again before we even report the "show" telemetry (which lines up with the click being "busy" as we await document.l10n.translateElements(translatedElements) before reporting "show" button).

I suppose this does indicate that it's reproducible by users, so maybe we should go ahead and uplift this.

Flags: needinfo?(edilee)

Comment on attachment 9245846 [details]
Bug 1735691 - Quickly clicking "explore colorways" then "keep previous" twice makes upgrade spotlight stuck r?pdahiya

Beta/Release Uplift Approval Request

  • User impact if declined: Users with slow machines accidentally double clicking buttons could make upgrade spotlight stuck
  • Is this code covered by automated tests?: Yes
  • Has the fix been verified in Nightly?: Yes comment 8
  • Needs manual test from QE?: Yes
  • If yes, steps to reproduce: Comment 7
  • List of other uplifts needed: none
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): Adds a simple check for whether upgrade spotlight is already busy handling another click for the rare case. Telemetry shows nightly users running into the bug successfully complete the dialog instead of getting stuck.
  • String changes made/needed: none
Attachment #9245846 - Flags: approval-mozilla-beta?
Flags: qe-verify+
QA Whiteboard: [qa-triaged]

Marking this issue as VERIFIED on Firefox 95 given the data provided by Ed in comment 9 and the verification done and mentioned in comment 8.

Comment on attachment 9245846 [details]
Bug 1735691 - Quickly clicking "explore colorways" then "keep previous" twice makes upgrade spotlight stuck r?pdahiya

Approved for 94.0b8.

Attachment #9245846 - Flags: approval-mozilla-beta? → approval-mozilla-beta+

I have verified that this issue is no longer reproducible by following the steps provided in comment 7 using Firefox 94.0 RC (Build ID: 20211025220926) on Windows 10 x64, macOS 11.6, and Ubuntu Linux 20.04 x64.

Status: RESOLVED → VERIFIED
Flags: qe-verify+
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: