Closed Bug 1024183 Opened 10 years ago Closed 10 years ago

resource://app/modules/experiments/Experiments.jsm: Exception calling provider shutdown: "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIObserverService.removeObserver]"

Categories

(Toolkit :: Telemetry, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1012466
Tracking Status
firefox30 --- unaffected
firefox31 --- affected
firefox32 --- affected
firefox33 --- affected

People

(Reporter: cpeterson, Unassigned)

References

Details

Attachments

(1 file)

When I run Nightly from the OS X Terminal, I see the following JS exception logged to stderr when I quit the application. I can reproduce this error with  33 and Aurora 31, but not Beta 30 or Firefox 30:


1402528565855   addons.manager  ERROR   Exception calling provider shutdown: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIObserverService.removeObserver]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"

location: "JS frame :: resource://app/modules/experiments/Experiments.jsm :: this.Experiments.PreviousExperimentProvider.prototype<.shutdown :: line 2091"  data: no]

Stack trace:
this.Experiments.PreviousExperimentProvider.prototype<.shutdown()@resource://app/modules/experiments/Experiments.jsm:2091
< callProvider()@resource://gre/modules/AddonManager.jsm:194
< AMI_unregisterProvider()@resource://gre/modules/AddonManager.jsm:849
< AMP_unregisterProvider()@resource://gre/modules/AddonManager.jsm:2321
< Experiments.Experiments.prototype._unregisterWithAddonManager()@resource://app/modules/experiments/Experiments.jsm:500
< Experiments.Experiments.prototype.uninit<()@resource://app/modules/experiments/Experiments.jsm:446
< TaskImpl_run()@resource://gre/modules/Task.jsm:282
< TaskImpl_handleResultValue()@resource://gre/modules/Task.jsm:338
< TaskImpl_run()@resource://gre/modules/Task.jsm:290
< TaskImpl()@resource://gre/modules/Task.jsm:247
< createAsyncFunction/asyncFunction()@resource://gre/modules/Task.jsm:224
< Barrier.prototype<._wait()@resource://gre/modules/AsyncShutdown.jsm:565
< Barrier.prototype<.wait()@resource://gre/modules/AsyncShutdown.jsm:531
< Spinner.prototype.observe()@resource://gre/modules/AsyncShutdown.jsm:337
< <file:unknown>
I also faced this exception when running mochitests against Mulet (an hybrid product between b2g desktop and Firefox).
Adding try/catch around two throwing remoteObserver fixed the crash at end of mochitest runs.
I don't know about the crashes when using Firefox as a regular user,
but these two fixes allowed me to run mochitests on Mulet without crashes during shutdown!

https://tbpl.mozilla.org/?tree=Try&rev=5d3ff8970066
Attachment #8452294 - Flags: review?(georg.fritzsche)
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → DUPLICATE
Comment on attachment 8452294 [details] [diff] [review]
Fix abort/crash during shutdown in Experiments and Identity.

Review of attachment 8452294 [details] [diff] [review]:
-----------------------------------------------------------------

Please file a new bug for the Identity issue - it sounds like that module might also have a shutdown ordering issue and could possibly use the barrier exposed in bug 1012466.
Attachment #8452294 - Flags: review?(georg.fritzsche)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: