Bug 228903 - www/waterfox 56.2.0.31_5 fails to start at the tail of a refresh routine – TelemetryEnvironment.jsm, line 502
Summary: www/waterfox 56.2.0.31_5 fails to start at the tail of a refresh routine – Te...
Status: Closed Not Accepted
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Jan Beich
URL: https://github.com/MrAlex94/Waterfox/...
Keywords:
Depends on:
Blocks:
 
Reported: 2018-06-11 19:42 UTC by Graham Perrin
Modified: 2018-06-13 18:46 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (jbeich)


Attachments
profile (435.30 KB, application/gzip)
2018-06-12 06:35 UTC, Graham Perrin
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Graham Perrin freebsd_committer freebsd_triage 2018-06-11 19:42:56 UTC
$ waterfox --safe-mode -p maf
WARNING: At least one completion condition is taking too long to complete. Conditions: [{"name":"EnvironmentAddonBuilder","state":"(none)","filename":"resource://gre/modules/TelemetryEnvironment.jsm","lineNumber":502,"stack":["resource://gre/modules/TelemetryEnvironment.jsm:init:502","resource://gre/modules/TelemetryEnvironment.jsm:EnvironmentCache:864","resource://gre/modules/TelemetryEnvironment.jsm:getGlobal:63","resource://gre/modules/TelemetryEnvironment.jsm:registerChangeListener:82","jar:file:///usr/local/lib/waterfox/omni.ja!/components/TelemetryStartup.js:TelemetryStartup.prototype.observe:33"]}] Barrier: AddonManager: Waiting for providers to shut down.
WARNING: At least one completion condition is taking too long to complete. Conditions: [{"name":"AddonManager: shutting down.","state":[{"name":"AddonManager: Waiting for providers to shut down.","state":[{"name":"EnvironmentAddonBuilder","state":"(none)","filename":"resource://gre/modules/TelemetryEnvironment.jsm","lineNumber":502,"stack":["resource://gre/modules/TelemetryEnvironment.jsm:init:502","resource://gre/modules/TelemetryEnvironment.jsm:EnvironmentCache:864","resource://gre/modules/TelemetryEnvironment.jsm:getGlobal:63","resource://gre/modules/TelemetryEnvironment.jsm:registerChangeListener:82","jar:file:///usr/local/lib/waterfox/omni.ja!/components/TelemetryStartup.js:TelemetryStartup.prototype.observe:33"]}]},{"name":"AddonRepository: async shutdown","state":"pending"}],"filename":"resource://gre/modules/AddonManager.jsm","lineNumber":898,"stack":["resource://gre/modules/AddonManager.jsm:startup:898","resource://gre/modules/AddonManager.jsm:startup:3090","jar:file:///usr/local/lib/waterfox/omni.ja!/components/addonManager.js:observe:65"]}] Barrier: profile-before-change
FATAL ERROR: AsyncShutdown timeout in AddonManager: Waiting for providers to shut down. Conditions: [{"name":"EnvironmentAddonBuilder","state":"(none)","filename":"resource://gre/modules/TelemetryEnvironment.jsm","lineNumber":502,"stack":["resource://gre/modules/TelemetryEnvironment.jsm:init:502","resource://gre/modules/TelemetryEnvironment.jsm:EnvironmentCache:864","resource://gre/modules/TelemetryEnvironment.jsm:getGlobal:63","resource://gre/modules/TelemetryEnvironment.jsm:registerChangeListener:82","jar:file:///usr/local/lib/waterfox/omni.ja!/components/TelemetryStartup.js:TelemetryStartup.prototype.observe:33"]}] At least one completion condition failed to complete within a reasonable amount of time. Causing a crash to ensure that we do not leave the user with an unresponsive process draining resources.
WARNING: No crash reporter available
[2726] ###!!! ABORT: file resource://gre/modules/TelemetryEnvironment.jsm, line 502
[2726] ###!!! ABORT: file resource://gre/modules/TelemetryEnvironment.jsm, line 502
Segmentation fault (core dumped)
$ 

----

If not performed at the command line, there's simply a long wait before the process stops (without presenting the new window that is customary at the tail of a refresh). 

Not reproducible with general release 56.2.0 on a Mac. 

(Whilst I have not attempted to reproduce with anything greater than 56.2.0 on Linux, Mac OS X or Windows, I do have a hunch that this bug is _not_ FreeBSD-specific.)

$ date ; uname -v
Mon 11 Jun 2018 20:40:01 BST
FreeBSD 12.0-CURRENT #4 r334935: Mon Jun 11 10:25:43 BST 2018     root@momh167-gjp4-hpelitebook8570p-freebsd:/usr/obj/usr/src/amd64.amd64/sys/GENERIC
Comment 1 Graham Perrin freebsd_committer freebsd_triage 2018-06-11 19:54:47 UTC
https://redd.it/8qcg7r – invitation to test on other platforms.
Comment 2 Jan Beich freebsd_committer freebsd_triage 2018-06-11 20:20:14 UTC
> $ waterfox --safe-mode -p maf

If you don't provide details about "maf" profile warnings aren't enough. Can you attach compressed (and sanitized for privacy) profile directory for me to try to reproduce?

waterfox-56.2.0.31_5 doesn't crash here on 10.4 i386 and 12.0 amd64.

  $ waterfox --safe-mode --new-instance --profile $(mktemp -d)
  1528747441978   addons.xpi      WARN    Error parsing extensions state: [Exception... "Component returned failure
  code: 0x80520012 (NS_ERROR_FILE_NOT_FOUND) [amIAddonManagerStartup.readStartupData]"  nsresult: "0x80520012 (NS_ERROR_FILE_NOT_FOUND)"  location: "JS frame :: resource://gre/modules/addons/XPIProvider.jsm :: loadExtensionState :: line 1554"  data: no] Stack trace: loadExtensionState()@resource://gre/modules/addons/XPIProvider.jsm:1554 < getInstallState()@resource://gre/modules/addons/XPIProvider.jsm:1589 < checkForChanges()@resource://gre/modules/addons/XPIProvider.jsm:3109 < startup()@resource://gre/modules/addons/XPIProvider.jsm:2188 < callProvider()@resource://gre/modules/AddonManager.jsm:269 < _startProvider()@resource://gre/modules/AddonManager.jsm:739 < startup()@resource://gre/modules/AddonManager.jsm:906 < startup()@resource://gre/modules/AddonManager.jsm:3090 < observe()@jar:file:///usr/local/lib/waterfox/omni.ja!/components/addonManager.js:65

  ###!!! [Child][MessageChannel] Error: (msgtype=0x620001,name=PRemoteSpellcheckEngine::Msg___delete__) Channel closing: too late to send/recv, messages will be lost

Both of the above warnings are innocuous:
- on fresh profiles there's no state for addon manager to restore
- child processes race on shutdown
Comment 3 Graham Perrin freebsd_committer freebsd_triage 2018-06-11 21:39:42 UTC
Sorry for the lack of detail. 

I whittled it down to a single-extension case (there may be others): 

Mozilla Archive Format
<https://addons.mozilla.org/addon/mozilla-archive-format/>

Here, I seem to also get a crash after simply accepting the invitation to restart following installation of the extension. (I normally ignore those invitations – prefer to quit then start (not restart).)

I'll attach a profile. 

Maybe relevant: Mozilla Archive Format is truly incompatible with multi-process, and (with 56.0.3 IIRC) Waterfox lost the ability to automatically disable multi-process when such extensions are enabled. 

I wondered whether another reportedly incompatible extension would have a similar effect. Tested briefly with InfoLister <https://addons.mozilla.org/addon/infolister/> alone in a new profile, I could not reproduce a bug. 

----

> Not reproducible with general release 56.2.0 on a Mac. 

I just realised, multiprocess windows are 'Disabled forcibly' with this release of Waterfox on Mac OS X 10.9.5.
Comment 4 Graham Perrin freebsd_committer freebsd_triage 2018-06-12 06:35:17 UTC
Created attachment 194186 [details]
profile

> … compressed (and sanitized for privacy) profile directory for me to try to reproduce?

Not sanitised (this was a 'new' profile with, if I recall correctly, just one extension). 

Thanks
Comment 5 Graham Perrin freebsd_committer freebsd_triage 2018-06-13 18:46:50 UTC
Not FreeBSD-specific, reproducible on Linux so I raised issues in the main Waterfox repo: 

e10s: crash (failure to restart) after installing an incompatible extension · Issue #616 · MrAlex94/Waterfox
<https://github.com/MrAlex94/Waterfox/issues/616>

e10s: crash (failure to start) when attempting to refresh with an incompatible extension enabled · Issue #617 …
<https://github.com/MrAlex94/Waterfox/issues/617>

Rejecting; this bug 228903 is effectively a duplicate of those two. 

----

Sorry for the wasted space here. Prior to reporting, I had a _terribly_ confusing few hours, complicated by (amongst other things) Add-on Compatibility Reporter no longer working as expected – providing false reports of compatibility <https://redd.it/8qd0xe>.