Closed Bug 1643804 Opened 5 years ago Closed 5 years ago

Errors notifying extension storage listeners can hang the sync

Categories

(Firefox :: Sync, defect, P1)

defect

Tracking

()

RESOLVED FIXED
Firefox 79
Tracking Status
firefox-esr68 --- unaffected
firefox76 --- unaffected
firefox77 --- unaffected
firefox78 --- fixed
firefox79 --- fixed

People

(Reporter: lina, Assigned: lina)

References

(Regression)

Details

(Keywords: regression)

Attachments

(1 file)

Thanks to Thom for catching this! We can fail to fetch pending listener notifications if there's a database error, or an error punting the operation to the background thread. We log the error, but don't resolve or reject the promise, so the sync just hangs.

Pushed by kcambridge@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/caae35501433 Always resolve the promise if fetching extension storage observer notifications fails. r=tcsc
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 79

The patch landed in nightly and beta is affected.
:Lina, is this bug important enough to require an uplift?
If not please set status_beta to wontfix.

For more information, please visit auto_nag documentation.

Flags: needinfo?(lina)

Comment on attachment 9154664 [details]
Bug 1643804 - Always resolve the promise if fetching extension storage observer notifications fails. r?tcsc!

Beta/Release Uplift Approval Request

  • User impact if declined: Extension storage syncs never completing if an unexpected error occurs while fetching information for observer notifications during the sync.
  • Is this code covered by automated tests?: Yes
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): This is a one-line change that adds a missing resolve call (without which the promise would remain pending forever if an error occurred), and an xpcshell test for the success and error cases in the function.
  • String changes made/needed: None
Flags: needinfo?(lina)
Attachment #9154664 - Flags: approval-mozilla-beta?

Comment on attachment 9154664 [details]
Bug 1643804 - Always resolve the promise if fetching extension storage observer notifications fails. r?tcsc!

approved for 78.0b5

Attachment #9154664 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: