Closed Bug 1732515 Opened 3 years ago Closed 3 years ago

TB 91 - ANY addon causes problems - no add-ons work and does not shut down cleanly

Categories

(Thunderbird :: Add-Ons: General, defect)

Thunderbird 82
defect

Tracking

(thunderbird_esr91+ fixed, thunderbird95+ fixed)

RESOLVED FIXED
96 Branch
Tracking Status
thunderbird_esr91 + fixed
thunderbird95 + fixed

People

(Reporter: bugzillamike, Assigned: darktrojan)

References

(Regression, )

Details

(Keywords: regression)

Attachments

(4 files, 1 obsolete file)

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:92.0) Gecko/20100101 Firefox/92.0

Steps to reproduce:

Updated from 32-bit TB 78 to 32-bit 9.1.1.1 from within the application itself (via help > about).

Actual results:

  1. TB 91 launches, but while it shows my addons being active, none work.
  2. Toggling them on and off does nothing. Oddly, the toggle to disable an addon takes two clicks to respond.
  3. Quitting and restarting causes "Thunderbird is still running" error. Closing TB through this dialog allows me to launch it. All addons show as enabled, but none work.
  4. As long as it's in this state (addons "enabled" but none working) any time I quit TB does not close cleanly.
  5. If I kill the process I can start in safe mode without addons just fine. If while in safe mode I disable all my addons, I can launch and close Thunderbird without errors.
  6. If I enable ANY addons after launching clean, they work fine, but TB stops closing cleanly and addons will not work after I kill the process and relaunch. Note: this is not happening when a specific (or all) addons are enabled. It happens if ANY addons are enabled. This includes ones up to date for 91 (quickfolders, cardbook, etc).

This happened even after uninstalling -all- my addons completely, and then installing only compact headers (known to be good with 91).

Expected results:

Add-ons should have worked, as they do on other TB 91 installations. TB should exit cleanly. Toggling add-ons on and off should have an effect.

Blocks: tb91found
Component: Untriaged → Add-Ons: General
Summary: TB 91 - ANY addon causes problems → TB 91 - ANY addon causes problems - no add-ons work and does not shut down cleanly

What is your platform, Linux? Where did you get the update to TB91?
Does it work in a fresh profile?

(In reply to John Bieling (:TbSync) from comment #1)

What is your platform, Linux? Where did you get the update to TB91?
Does it work in a fresh profile?

  1. Windows 10 21H1
  2. Through the about dialog from within TB78
  3. It does work with a fresh profile

IIRC Thunderbird does not yet update TB to 91. I have heard of this behavior, by an "external" update enforced by Kaspersky Suite (which also has an update mechanism for installed software) or other 3rd party updater, which fail to close Thunderbird properly during their upgrade and corrupt the profile.

Do you happen to use Kaspersky or another 3rd party tool, which yould have updated TB for you?

Attached image Screenshot of update dialog (deleted) —

I've attached a screenshot of the update prompt.

(In reply to John Bieling (:TbSync) from comment #3)

IIRC Thunderbird does not yet update TB to 91. I have heard of this behavior, by an "external" update enforced by Kaspersky Suite (which also has an update mechanism for installed software) or other 3rd party updater, which fail to close Thunderbird properly during their upgrade and corrupt the profile.

Do you happen to use Kaspersky or another 3rd party tool, which yould have updated TB for you?

I did not use any third party tool. I went to help, about, and it's clicked on the option there.

I've attached a screenshot of the update prompt above.

Ok, manual update, thanks for the feedback. Can you reproduce this by setting up a new 78 profile with the add-ons you had installed and update that again?

(In reply to John Bieling (:TbSync) from comment #6)

Ok, manual update, thanks for the feedback. Can you reproduce this by setting up a new 78 profile with the add-ons you had installed and update that again?

Sure, I'll post results shortly.

Of note:

In my TB 78 Profile I have two disabled addons: Account Colors and DisplayQuota (they have never been updated). Let's stick a a pin in this. for a sec.

New profile, installed all the other addons I have (obviously can't install Account Colors and Display Quote). Ran update from About -> Help.

New Profile works. Old Profile has the same errors.

This may be interesting, however. The new profile properly detected that "Folder Filters" and "ImportExportToolsNG" are incompatible with TB91, and disabled them. My actual profile did no such thing.

I'm attaching screenshots to show you what I mean. Both are in TB 91. The old profile has the light theme, the test profile has the dark theme.

Attached image Old Profile.png (deleted) —
Attached image New Profile.png (deleted) —

(In reply to John Bieling (:TbSync) from comment #6)

Ok, manual update, thanks for the feedback. Can you reproduce this by setting up a new 78 profile with the add-ons you had installed and update that again?

FWIW in addition to the test you suggested and the observations in the above screenshots, removing all my addons and then updating to 91 resulted in the same behavior when any addon (even ones I was not previously using, like compact headers) was installed alone.

New Profile works. Old Profile has the same errors.

I need to be sure I understood what you did. What is the new profile and what is the old profile in this context?

Thanks for your help!

(In reply to John Bieling (:TbSync) from comment #12)

New Profile works. Old Profile has the same errors.

I need to be sure I understood what you did. What is the new profile and what is the old profile in this context?

Thanks for your help!

Sorry John, I didn't mean to be obtuse.

The "old" profile is my normal TB78 profile that glitches out when I upgrade to 91. The "new" profile is the fresh profile I made that does not glitch out when I update to 91. Is that what you needed? If I'm not being clear please just let me know and I'll try again :)

So the issue could not be reproduced with a similar profile, that will make it hard to track. Do you happen to have a backup of the original TB78 profile? Is the issue reproducible with a clone of that original profile being updated?

For the updated and now broken profile, does clearing the startup cache fix the issue? Go to
-> Help -> More trouble shooting information -> Clear Startup Cache (button in top right corner)

(In reply to John Bieling (:TbSync) from comment #14)

So the issue could not be reproduced with a similar profile, that will make it hard to track. Do you happen to have a backup of the original TB78 profile? Is the issue reproducible with a clone of that original profile being updated?

For the updated and now broken profile, does clearing the startup cache fix the issue? Go to
-> Help -> More trouble shooting information -> Clear Startup Cache (button in top right corner)

I can reach back about two weeks in my on-site backups, probably about if six I go get my offsites.

(In reply to John Bieling (:TbSync) from comment #14)

So the issue could not be reproduced with a similar profile, that will make it hard to track. Do you happen to have a backup of the original TB78 profile? Is the issue reproducible with a clone of that original profile being updated?

For the updated and now broken profile, does clearing the startup cache fix the issue? Go to
-> Help -> More trouble shooting information -> Clear Startup Cache (button in top right corner)

Tried clearing the startup cache - no luck :(

(In reply to Mike from comment #16)

Tried clearing the startup cache - no luck :(

Does shutting down TB and manually removing the file addonStartup.json.lz4 from your profile folder change anything?

(In reply to John Bieling (:TbSync) from comment #17)

(In reply to Mike from comment #16)

Tried clearing the startup cache - no luck :(

Does shutting down TB and manually removing the file addonStartup.json.lz4 from your profile folder change anything?

Should I do this after upgrading to 91?

Please try this in your broken TB91 profile.

Besides trying to understand what happened in the first place during the update process, which broke your profile, I would also like to know if we can rescue that profile somehow.

(In reply to John Bieling (:TbSync) from comment #19)

Please try this in your broken TB91 profile.

Besides trying to understand what happened in the first place during the update process, which broke your profile, I would also like to know if we can rescue that profile somehow.

  1. Disabled all my addons in TB78.
  2. Upgrade to 91 w/all addons disabled.
  3. Go to addons in TB91 and updates all addons
  4. Closed and Reopened TB91 several times to make sure it was closing cleanly
  5. Deleted addonStartup.json.lz4
  6. Opened TB91, turned on a single addon (quickfolders).
  7. Addon appeared to be working.
  8. Closed TB91 and reopened it
  9. Back to problem behavior, IE, Quickfolders was not functional, but addons showed it as enabled, TB would not close after exiting, etc, etc.

QuickFolders is a very complex add-on, could you take it out of the story and redo that test? Please also exclude ImportExport Tools? They both have that private browsing icon which we do not support actually.

Does that restore your profile?

(In reply to John Bieling (:TbSync) from comment #21)

QuickFolders is a very complex add-on, could you take it out of the story and redo that test? Please also exclude ImportExport Tools? They both have that private browsing icon which we do not support actually.

Does that restore your profile?

Tried the following:

  1. Rolled back to TB78
  2. Completely removed every single addon from my profile
  3. Exited TB and reopened it.
  4. Updated to TB 91
  5. Opened TB 91
  6. Cleared Startup Cache from w/in TB 91
  7. closed TB91 after cache restart
  8. Deleted addonStartup.json.lz4
  9. Opened TB 91
  10. Installed CompactHeaders
  11. Confirmed CompactHeaders active and operating
  12. Closed TB 91. Closes cleanly
  13. Opened TB 91. CompactHeaders is not working. Addons shows compactheaders as active. Compactheaders requries to clicks to move toggle in addons page. TB stops closing cleanly.

Huh. I have to think about a way to debug this. Great that you have a copy of the original profile.

(In reply to John Bieling (:TbSync) from comment #23)

Huh. I have to think about a way to debug this. Great that you have a copy of the original profile.

Thanks for working on this. Please let me know if there's anything I can add :)

Can you load a clone of the original TB78 profile in TB78 and go to Help -> Troubleshooting information and use the "Send via Email" button to send me those information? That email will include all the non-standard preferences and maybe that could give us a hint, what is breaking the profile.

(In reply to John Bieling (:TbSync) from comment #25)

Can you load a clone of the original TB78 profile in TB78 and go to Help -> Troubleshooting information and use the "Send via Email" button to send me those information? That email will include all the non-standard preferences and maybe that could give us a hint, what is breaking the profile.

Sent!

Hm, there are differences, but I do not see how they could cause something like this.

Before changing preferences in your broken TB91 profile, could you have a look at the console (Ctrl + Shift + J) to see if any error messages show up, while enabling / disabling add-ons? You wrote that you have to tick the slider twice to change its state.

After that, you could try to revert the following prefs to the default:

network.cookie.same-site.enabled
network.cookie.cookieBehavior
network.cookie.lifetimePolicy
security.enterprise_roots.enabled
dom.apps.reset-permissions

Any change in behaviour?

(In reply to John Bieling (:TbSync) from comment #27)

Hm, there are differences, but I do not see how they could cause something like this.

Before changing preferences in your broken TB91 profile, could you have a look at the console (Ctrl + Shift + J) to see if any error messages show up, while enabling / disabling add-ons? You wrote that you have to tick the slider twice to change its state.

After that, you could try to revert the following prefs to the default:

network.cookie.same-site.enabled
network.cookie.cookieBehavior
network.cookie.lifetimePolicy
security.enterprise_roots.enabled
dom.apps.reset-permissions

Any change in behaviour?

Just sent some console data. Should I revert the prefs before upgrading to 91, or after?

I am still trying to understand what is going on. I had a case with similar symptoms: Could you check if your broken profile is using Thunderbirds offline mode ("work offline")?

(In reply to John Bieling (:TbSync) from comment #29)

I am still trying to understand what is going on. I had a case with similar symptoms: Could you check if your broken profile is using Thunderbirds offline mode ("work offline")?

I have it configured to ask me every time I open thunderbird if I want to work offline or online, and I select online. (Unless I'm away from a connection).

I'm not sure this answers your question? I do have folders set up to sync, etc, for offline use.

Could you change the setup to always work online and see if that fixes the add-ons (after a restart)?

(In reply to John Bieling (:TbSync) from comment #31)

Could you change the setup to always work online and see if that fixes the add-ons (after a restart)?

Here's what I tried:

  1. Opened TB 78, set manual startup state to "online" (not automatically follow detected).
  2. Closed and reopened TB 78.
  3. Updated to 91.2.1 Via Help > About > Update. Restarted from update prompt.
  4. Appears to be working. Close and reopen 91.2.1 multiple times. Addons seems functional. Able to update addons and toggle them on and off normally. Seems correct
  5. Set TB 91.2.1 to prompt for online/offline mode on startup. Close TB 91.2.1.
  6. Reopen 91.2.1 Everything is broken again. Set manual startup to online again. Close TB.
  7. Attempt to reopen, Told thunderbird is already running. Close TB from error prompt.
  8. Attempt to open again, Everything appears to be working.

Looks like toggling that online/offline prompt can break things reliably for me.

Wow! Now the big question: Can we reliably fix your original broken-after-update profile by disabling offline mode? In your last test you disabled offline-mode before updating and then you could break/unbreak that 91 profile by enabling/disabling offline-mode.

Can you unbreak your original broken-after-update profile? If that no longer exists, can you repeat the test with a clone of the original tb78 profile still being set to offline mode, upgrade to 91 and see if you can unbreak it?

(In reply to John Bieling (:TbSync) from comment #33)

Wow! Now the big question: Can we reliably fix your original broken-after-update profile by disabling offline mode? In your last test you disabled offline-mode before updating and then you could break/unbreak that 91 profile by enabling/disabling offline-mode.

Can you unbreak your original broken-after-update profile? If that no longer exists, can you repeat the test with a clone of the original tb78 profile still being set to offline mode, upgrade to 91 and see if you can unbreak it?

  1. Rolled back to 78.
  2. Did -not- disable offline prompt.
  3. Updated to 91.2.1 Via Help > About > Update. Restarted from update prompt.
  4. Breaks as expected
  5. set manual startup state to "online" (not automatically follow detected) from within broken 91.2.1
  6. 91.2.1 appears to be working normally and correctly (until I change that offline/online prompt setting back to prompt).

Now we know how we can partially fix it and get people back to a working profile. That is awesome. Thanks for your patience. The next step is to learn why your profile does that.

Can you break any of your fresh / newly created TB91 profiles, by switching those to offline mode? (I guess this is not the case)

(In reply to John Bieling (:TbSync) from comment #35)

Now we know how we can partially fix it and get people back to a working profile. That is awesome. Thanks for your patience. The next step is to learn why your profile does that.

Can you break any of your fresh / newly created TB91 profiles, by switching those to offline mode? (I guess this is not the case)

I only have the profiles that I've brought forward from 78.

I can make a new one in 91. What should I put into it to make it a useful diagnostic tool?

What should I put into it to make it a useful diagnostic tool?

If you have the time, the following would be very helpful:

  • add one of your mail accounts (you got an IMAP one?)
  • add all of your add-ons and do the offline-mode-test after each has been added
  • add all of your other email accounts and do the offline-mode-test after each has been added

After that (and if still not affected by the offline-mode): Do you remember any special things you did with your old profile?

Hm. How did you enable the offline prompt? I tried to recreate your report, but all I can do is to enable offline mode in the file menu. How can you set it to ask on start?

Edit: Found it.

(In reply to John Bieling (:TbSync) from comment #37)

What should I put into it to make it a useful diagnostic tool?

If you have the time, the following would be very helpful:

  • add one of your mail accounts (you got an IMAP one?)
  • add all of your add-ons and do the offline-mode-test after each has been added
  • add all of your other email accounts and do the offline-mode-test after each has been added

After that (and if still not affected by the offline-mode): Do you remember any special things you did with your old profile?

  1. Created new profile. Added single imap account. Closed TB 91.
  2. Opened TB 91, set to prompt online/offline when opening. Closed TB 91.
  3. PROBLEM SHOWED UP with Offline Prompt enabled AFTER installing CARDBOOK!

Addition: Disabling cardbook DOES NOT allow me to enable Online/Offline prompt without causing the same problems (in my real profile)

Do other add-ons besides Cardbook (if that is removed again) cause your profile to break?

(In reply to John Bieling (:TbSync) from comment #41)

Do other add-ons besides Cardbook (if that is removed again) cause your profile to break?

I've tried a number of different TB 91 profiles now, one for each addon (so no more than one addon is EVER installed per profile)

With online/offline prompt enabled:

-BorderColors D (alone) seems to work
-Cardbook (alone) breaks
-Quickfolders (alone) breaks

I've got loads more to work through, but that's what I have so far.

Thank you so much for your help! I will try to reproduce with those two add-ons and if I succeed, I can start hunting down the actual issue.

You can take a break for now :-)

(In reply to John Bieling (:TbSync) from comment #44)

Thank you so much for your help! I will try to reproduce with those two add-ons and if I succeed, I can start hunting down the actual issue.

You can take a break for now :-)

And thank you for keeping at this. Please let me know what I can do next!

Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee: nobody → john

Is this a side effect of e10s being enabled and having the add-ons spawned onto a thread that does not know if it is online or not but assumes it is because the thread that creates the API for add-ons has no idea what is going on in the main thread?

Try setting browser.tabs.remote.autostart to false in the config editor (search in Preferences) restart Thunderbird and see if there is still an issue with your original profile with the online offline set to ask.

(In reply to Matt from comment #46)

Is this a side effect of e10s being enabled and having the add-ons spawned onto a thread that does not know if it is online or not but assumes it is because the thread that creates the API for add-ons has no idea what is going on in the main thread?

Try setting browser.tabs.remote.autostart to false in the config editor (search in Preferences) restart Thunderbird and see if there is still an issue with your original profile with the online offline set to ask.

I set browser.tabs.remote.autostart to false and turned online offline to ask. When I restarted Thunderbird, the problem returned.

Something related to extensions is starting on or before profile-after-change, which calls
https://searchfox.org/comm-central/rev/b566f045515206c94e15f299c6e07d246f82b011/mozilla/toolkit/components/extensions/ExtensionCommon.jsm#521

But when the offline-or-online-prompt is shown to the user (during profile-after-change) the creation of the first window and probably other things are delayed and not there when the extension code is expecting it

JavaScript error: resource://gre/modules/ExtensionCommon.jsm, line 521: NotFoundError: WindowGlobalChild.getActor: No such JSWindowActor 'Conduits'
JavaScript error: resource://gre/modules/ExtensionCommon.jsm, line 521: NotFoundError: WindowGlobalChild.getActor: No such JSWindowActor 'Conduits'
JavaScript error: moz-extension://38be1108-e1b1-40eb-9bc9-885aab99dd80/background.js, line 314: InvalidStateError: An exception was thrown

Either the offline-or-online-prompt needs to be shown earlier or the extension code must start later.

Based on John's previous comments, it looks like bug 1660186 is the regressor.

That moved the MailGlue.init() functionality from app-startup to command-line-startup: https://hg.mozilla.org/comm-central/rev/31541aadcddb#l3.12

Extension startup occurs in the second highlight of this block here: https://searchfox.org/mozilla-central/rev/7588d077255c5732f72c466e71d7a38d97385dd5/toolkit/xre/nsXREDirProvider.cpp#963-964

That is called from https://searchfox.org/mozilla-central/rev/7588d077255c5732f72c466e71d7a38d97385dd5/toolkit/xre/nsAppRunner.cpp#5023,5028

Hence it is meant to happen after app-startup but now happens sometime after command-line-startup.

command-line-startup occurs after profile-after-change, and this looks to be the crunch point. Whilst Thunderbird is "getting away" with the timing in most cases, the "offline-or-online-prompt" is triggered at profile-after-change: https://searchfox.org/comm-central/rev/b566f045515206c94e15f299c6e07d246f82b011/mailnews/extensions/offline-startup/OfflineStartup.jsm#122-124

I believe that prompt blocks further startup process, so command-line-startup gets delayed until after the user acknowledges the prompt. However the extension service continues starting up as it had already been triggered, but fails as the actors haven't been registered.

I would guess there's a risk that this issue could occur on a few systems even without prompting - it all depends on the timing. I suspect though Thunderbird generally gets away with it as the extension manager does take a relatively long time to start.

Additionally, the browser_startup.js changes in https://hg.mozilla.org/comm-central/rev/e495b3715362 seem suspect. If they've really moved to before profile-do-change then that should be investigated as to why and recorded - as the original change does not look like it would affect that. If it is some strange test artifact, then that should also be reported & recorded in the file.

Blocks: 1660186
No longer blocks: 1660186
Regressed by: 1660186

Geoff, could you have a look? We can see the impact of this bug getting pretty big in support, as it kills all add-ons.

Beta testers and early adaptors seem not to use the online-offline prompt much, so we never noticed it or put it aside as a broken profile and solved it by creating a new one.

Flags: needinfo?(geoff)
Assignee: john → nobody

Untried possible alternatives for fixing the original bug:

  • Don't copy the entire Thunderbird profile into ${profileDir}/chrome_debugger_profile when creating the debugger profile.
  • Selectively stop mail processes starting up during the startup process.

STR:

  • on a fresh profile open settings -> general -> offline and Click on the Offline ... button
  • disable automatic detect mode and select "ask me for online state"
  • install the recommended "Compatibility Check" add-on
  • observe the green tick on its icon in the main thunderbird toolbar
  • restart
  • answer the online-offline prompt (does not matter how)
  • observe the add-on being broken (no green tick)
Attached file WIP: Bug 1732515 - Revert startup changes. (obsolete) (deleted) —

Practically speaking, all this does is make the registration of actors happen earlier, but not so early we trip up the start-up performance test.
In the code, I've rearranged the observers into the order the occur, to make things easier to understand.

I've also prevented the Address Book Manager from initialising directories in the devtools process, although that problem seems to have gone away.

Assignee: nobody → geoff
Status: NEW → ASSIGNED
Attachment #9248956 - Attachment is obsolete: true
Flags: needinfo?(geoff)
Attachment #9248983 - Attachment description: Bug 1732515 - Don't delay MailGlue._init until command-line-startup. r=mkmelin,john.bieling → Bug 1732515 - Don't delay MailGlue._init until command-line-startup. r=john.bieling
Severity: -- → S2
Version: Thunderbird 91 → Thunderbird 82

Pushed by geoff@darktrojan.net:
https://hg.mozilla.org/comm-central/rev/72ba70e3fc0c
Don't delay MailGlue._init until command-line-startup. r=john.bieling

Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 96 Branch

https://support.mozilla.org/en-US/questions/1354281 might be an example of this?

Should we expect it to fix many crashes?

Regardless, I look forward to this being uplifted to release. Is it pretty safe?

Flags: needinfo?(geoff)

(In reply to Wayne Mery (:wsmwk) from comment #57)

https://support.mozilla.org/en-US/questions/1354281 might be an example of this?

Yes, I am 99% sure it is this bug.

Should we expect it to fix many crashes?

Installations affected by this bug either crashed or did not properly close on shutdown.

(In reply to Wayne Mery (:wsmwk) from comment #57)

Should we expect it to fix many crashes?

Maaaybe. I wouldn't hold my breath.

Regardless, I look forward to this being uplifted to release. Is it pretty safe?

Should be safe. I'm just moving some code earlier in the start-up process, back to where it once was. There might be some side-effects for the devtools toolbox process, but they should be minor and wouldn't affect 99.9% of users anyway.

Flags: needinfo?(geoff)

Should be safe.

Great. Let's uplift for Monday's beta

Blocks: 1738973

YOW! Thanks for the solution! This was driving me crazy, and deselecting "ask me for online state" completely resolved failed plugins and "crash on exit"

In case anyone is looking, the symptoms I had include:

Add-ons will show as loaded, but will not be. If you start in safe mode and disable them, then restart in normal mode and enable them, Add-ons will load and operate normally for the session, but on restart they will revert to showing as loaded (green check) but no accessible wrench, no added menus, and they do not seem to operate (confusing exceptions I found are "scroll_anywhere" which shows a wrench, which loads the settings pane and RedThunderMineBird which shows a wrench, but loads a blank page instead of the settings - the rest I tested, including cardbook (no wrench, no function) and sieve (no menu), share that failure. None seem to function.

On quit, after a long delay, I get the crash reporter dialog. Restart seems normal, but the result is the same.

This yields three relevant startup states:

Ask for online State Plugins Enabled Result
Yes disabled Works
Yes enabled fail
No enabled Normal

The stdio output starting from command line looked like (including for people searching for similar problems)

Check on Startup is set from Preferences -> General -> Offline... -> (Offline Settings Window)

With "check on startup" and all Add-ons disabled

Result: normal operation and exit, but no add-ons so highly suboptimal email experience (that is, it works, but who would want to work this way?)

$ thunderbird
[calBackendLoader] Using Thunderbird's libical backend
[LDAPModuleLoader] Using LDAPDirectory.jsm
[MsgSendModuleLoader] Using MessageSend.jsm
[SmtpModuleLoader] Using SmtpService.jsm
console.debug: "Trying to load /usr/lib/thunderbird/libotr.so"
console.debug: "Trying to load libotr.so from system's standard library locations"
console.debug: "Trying to load libotr.so.5 from system's standard library locations"
console.debug: "Trying to load libotr.so from system's standard library locations"
console.log: (new Error("Cannot load required OTR library", "resource:///modules/OTRLib.jsm", 109))
console.debug: "Successfully loaded OpenPGP library librnp.so version 0.15.2+git20210806.dd923a4e.MZLA from /usr/lib/thunderbird/librnp.so"
console.debug: "Found 2 public keys and 0 secret keys (0 protected, 0 unprotected)"
console.debug: "Successfully loaded optional OpenPGP library libgpgme.so.11 from system's standard library locations"
console.debug: "gpgme version: 1.14.0-unknown"
console.warn: Calendar: {"result":11,"message":"database disk image is malformed","ERROR":1,"INTERNAL":2,"PERM":3,"ABORT":4,"BUSY":5,"LOCKED":6,"NOMEM":7,"READONLY":8,"INTERRUPT":9,"IOERR":10,"CORRUPT":11,"FULL":13,"CANTOPEN":14,"EMPTY":16,"SCHEMA":17,"TOOBIG":18,"CONSTRAINT":19,"MISMATCH":20,"MISUSE":21,"NOLFS":22,"AUTH":23,"FORMAT":24,"RANGE":25,"NOTADB":26}
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
console.warn: services.settings: thunderbird/hijack-blocklists has signature disabled
JavaScript warning: resource://gre/modules/Troubleshoot.jsm, line 691: WebGL context was lost.
JavaScript warning: resource://gre/modules/Troubleshoot.jsm, line 691: WebGL context was lost.

###!!! [Parent][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost

With "check on startup" Enabled "Cardbook" plugin alone

Result: Cardbook doesn't actually work, exiting takes a long time, crash reporter.

$ thunderbird
[calBackendLoader] Using Thunderbird's libical backend
[LDAPModuleLoader] Using LDAPDirectory.jsm
[MsgSendModuleLoader] Using MessageSend.jsm
JavaScript error: resource://gre/modules/ExtensionCommon.jsm, line 510: NotFoundError: WindowGlobalChild.getActor: No such JSWindowActor 'Conduits'
JavaScript error: moz-extension://0c3dd134-132d-4f91-afdc-882351197aa0/libs/managesieve.ui/utils/SieveIpcClient.js, line 49: InvalidStateError: An exception was thrown
JavaScript error: resource://gre/modules/ExtensionCommon.jsm, line 510: NotFoundError: WindowGlobalChild.getActor: No such JSWindowActor 'Conduits'
[SmtpModuleLoader] Using SmtpService.jsm
console.debug: "Trying to load /usr/lib/thunderbird/libotr.so"
console.debug: "Trying to load libotr.so from system's standard library locations"
console.debug: "Trying to load libotr.so.5 from system's standard library locations"
console.debug: "Trying to load libotr.so from system's standard library locations"
console.log: (new Error("Cannot load required OTR library", "resource:///modules/OTRLib.jsm", 109))
console.debug: "Successfully loaded OpenPGP library librnp.so version 0.15.2+git20210806.dd923a4e.MZLA from /usr/lib/thunderbird/librnp.so"
console.debug: "Found 2 public keys and 0 secret keys (0 protected, 0 unprotected)"
console.debug: "Successfully loaded optional OpenPGP library libgpgme.so.11 from system's standard library locations"
console.debug: "gpgme version: 1.14.0-unknown"
console.warn: Calendar: {"result":11,"message":"database disk image is malformed","ERROR":1,"INTERNAL":2,"PERM":3,"ABORT":4,"BUSY":5,"LOCKED":6,"NOMEM":7,"READONLY":8,"INTERRUPT":9,"IOERR":10,"CORRUPT":11,"FULL":13,"CANTOPEN":14,"EMPTY":16,"SCHEMA":17,"TOOBIG":18,"CONSTRAINT":19,"MISMATCH":20,"MISUSE":21,"NOLFS":22,"AUTH":23,"FORMAT":24,"RANGE":25,"NOTADB":26}
console.warn: services.settings: thunderbird/hijack-blocklists has signature disabled
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
JavaScript warning: resource://gre/modules/Troubleshoot.jsm, line 691: WebGL context was lost.
JavaScript warning: resource://gre/modules/Troubleshoot.jsm, line 691: WebGL context was lost.
WARNING: At least one completion condition is taking too long to complete. Conditions: [{"name":"Extension shutdown: sieve@mozdev.org","state":{"state":"Startup: Run manifest, asyncEmitManifestEntry(\"background\")"},"filename":"resource://gre/modules/addons/XPIProvider.jsm","lineNumber":2602,"stack":["resource://gre/modules/addons/XPIProvider.jsm:startup/<:2602","resource://gre/modules/AsyncShutdown.jsm:observe:575","chrome://global/content/globalOverlay.js:goQuitApplication:91","chrome://messenger/content/messenger.xhtml:oncommand:1"]}] Barrier: profile-change-teardown
FATAL ERROR: AsyncShutdown timeout in profile-change-teardown Conditions: [{"name":"Extension shutdown: sieve@mozdev.org","state":{"state":"Startup: Run manifest, asyncEmitManifestEntry(\"background\")"},"filename":"resource://gre/modules/addons/XPIProvider.jsm","lineNumber":2602,"stack":["resource://gre/modules/addons/XPIProvider.jsm:startup/<:2602","resource://gre/modules/AsyncShutdown.jsm:observe:575","chrome://global/content/globalOverlay.js:goQuitApplication:91","chrome://messenger/content/messenger.xhtml:oncommand:1"]}] 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.
[Parent 1063806, Main Thread] ###!!! ABORT: file resource://gre/modules/addons/XPIProvider.jsm:2602
[Parent 1063806, Main Thread] ###!!! ABORT: file resource://gre/modules/addons/XPIProvider.jsm:2602
ExceptionHandler::GenerateDump cloned child 1064284
ExceptionHandler::SendContinueSignalToChild sent continue signal to child
ExceptionHandler::WaitForContinueSignal waiting for continue signal...
Exiting due to channel error.

Set "Manual state when starting up:" to "Online," and all compatible plugins enabled

Result: happy user experience

$ thunderbird
[calBackendLoader] Using Thunderbird's libical backend
[LDAPModuleLoader] Using LDAPDirectory.jsm
[MsgSendModuleLoader] Using MessageSend.jsm
[SmtpModuleLoader] Using SmtpService.jsm
JavaScript error: moz-extension://7374810d-9b0f-4aee-b653-3fb00a1ef223/punycode/punycode.js, line 440: ReferenceError: module is not defined
JavaScript error: moz-extension://86c1d048-3d5c-430f-a8a5-71f5183483dc/background.js, line 1: Error: An unexpected error occurred
JavaScript error: moz-extension://fd6e64f1-939c-4b63-9a0b-aff44a03878b/background/migration.js, line 49: TypeError: can't convert null to object
console.debug: "Trying to load /usr/lib/thunderbird/libotr.so"
console.debug: "Trying to load libotr.so from system's standard library locations"
console.debug: "Trying to load libotr.so.5 from system's standard library locations"
console.debug: "Trying to load libotr.so from system's standard library locations"
console.log: (new Error("Cannot load required OTR library", "resource:///modules/OTRLib.jsm", 109))
console.debug: "Successfully loaded OpenPGP library librnp.so version 0.15.2+git20210806.dd923a4e.MZLA from /usr/lib/thunderbird/librnp.so"
console.debug: "Found 2 public keys and 0 secret keys (0 protected, 0 unprotected)"
console.debug: "Successfully loaded optional OpenPGP library libgpgme.so.11 from system's standard library locations"
console.debug: "gpgme version: 1.14.0-unknown"
console.warn: Calendar: {"result":11,"message":"database disk image is malformed","ERROR":1,"INTERNAL":2,"PERM":3,"ABORT":4,"BUSY":5,"LOCKED":6,"NOMEM":7,"READONLY":8,"INTERRUPT":9,"IOERR":10,"CORRUPT":11,"FULL":13,"CANTOPEN":14,"EMPTY":16,"SCHEMA":17,"TOOBIG":18,"CONSTRAINT":19,"MISMATCH":20,"MISUSE":21,"NOLFS":22,"AUTH":23,"FORMAT":24,"RANGE":25,"NOTADB":26}
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
console.warn: services.settings: thunderbird/hijack-blocklists has signature disabled
console.warn: Calendar: {"result":11,"message":"database disk image is malformed","ERROR":1,"INTERNAL":2,"PERM":3,"ABORT":4,"BUSY":5,"LOCKED":6,"NOMEM":7,"READONLY":8,"INTERRUPT":9,"IOERR":10,"CORRUPT":11,"FULL":13,"CANTOPEN":14,"EMPTY":16,"SCHEMA":17,"TOOBIG":18,"CONSTRAINT":19,"MISMATCH":20,"MISUSE":21,"NOLFS":22,"AUTH":23,"FORMAT":24,"RANGE":25,"NOTADB":26}
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
JavaScript error: resource:///modules/CalStorageCalendar.jsm, line 337: NS_ERROR_FAILURE: error executing async statement
console.log: WebExtensions: BootstrapLoader for autoselectlatestmessage@vano unloaded!

###!!! [Parent][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost

There appear to be a few glitches in my install but operation appears normal.

Thank you for finding the bug and the work around.

Comment on attachment 9248983 [details]
Bug 1732515 - Don't delay MailGlue._init until command-line-startup. r=john.bieling

[Approval Request Comment]
Regression caused by (bug #): bug 1660186
User impact if declined: add-ons don't start properly
Testing completed (on c-c, etc.): landed last week
Risk to taking this patch (and alternatives if risky): should be fine, this reverts a dodgy start-up order I introduced in bug 1660186

Attachment #9248983 - Flags: approval-comm-beta?

Comment on attachment 9248983 [details]
Bug 1732515 - Don't delay MailGlue._init until command-line-startup. r=john.bieling

[Triage Comment]
Approved for beta

Attachment #9248983 - Flags: approval-comm-beta? → approval-comm-beta+

Comment on attachment 9248983 [details]
Bug 1732515 - Don't delay MailGlue._init until command-line-startup. r=john.bieling

[Triage Comment]
Approved for esr91 (we want to kill needless shutdown crashes bug 1735661, maybe bug 1738973)

Attachment #9248983 - Flags: approval-comm-esr91+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: