Thunderbird Freezes w/ 100% CPU

RESOLVED INCOMPLETE

Status

Thunderbird
Untriaged
--
critical
RESOLVED INCOMPLETE
5 years ago
9 months ago

People

(Reporter: kyle, Unassigned)

Tracking

(Blocks: 1 bug, {perf})

17 Branch
x86_64
Linux

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [has msgdb log][regression:TB15?])

Attachments

(1 attachment)

(Reporter)

Description

5 years ago
I recently upgraded to Thunderbird 15.0. As I interact with Thunderbird I notice that as each garbage collection occurs, less free memory is available. The activities that I am doing are basically viewing the contents of one folder and randomly looking at email contents. 

I first tried this on TB15 (which comes from Ubuntu's repositories). Also tried it on TB15.0.1 (https://launchpad.net/~mozillateam/+archive/thunderbird-stable). The problem exists in both versions.

Quick summary of setup.
Using IMAP
Ubuntu Precise (12.04)
No Themes
No Add-ons

I am glad to provide other information.

Comment 1

5 years ago
how long does it take to reach a "freeze" state?

Updated

5 years ago
Keywords: perf
(Reporter)

Comment 2

5 years ago
For the past week it has been consistently reaching this state within 10 minutes. However, as luck would have it, I have not seen it happen it the past hour or so. Once it reaches a locked state, is there a command I should run that will give you a useful dump you can look at?

Comment 3

5 years ago
Can you relate the freeze to viewing of some large message (100KB+) or a long thread of messages (100 pieces+) ?
You could also use the gecko profiler (from https://addons.mozilla.org/en-US/thunderbird/addon/gecko-profiler/?src=cb-dl-created).

Also I don't know if ubuntu did release a 15.0.1 but if they did, please update and let us know if things are better.
(Reporter)

Comment 5

5 years ago
I haven't seen it as related to email size (or number of threaded messages).

(In reply to :aceman from comment #3)
> Can you relate the freeze to viewing of some large message (100KB+) or a
> long thread of messages (100 pieces+) ?
(Reporter)

Comment 6

5 years ago
I'll try the gecko profiler. 

Ubuntu has not yet released 15.0.1. I have tested it, though, using https://launchpad.net/~mozillateam/+archive/thunderbird-stable. 

(In reply to Ludovic Hirlimann [:Usul] from comment #4)
> You could also use the gecko profiler (from
> https://addons.mozilla.org/en-US/thunderbird/addon/gecko-profiler/?src=cb-dl-
> created).
> 
> Also I don't know if ubuntu did release a 15.0.1 but if they did, please
> update and let us know if things are better.
(Reporter)

Comment 7

5 years ago
Hmmm... seems as if the Gecko Profiler is not available for Linux ("Not Available for Your Platform"). Any other suggestions?

(In reply to kyle from comment #6)
> I'll try the gecko profiler. 
> 
> Ubuntu has not yet released 15.0.1. I have tested it, though, using
> https://launchpad.net/~mozillateam/+archive/thunderbird-stable. 
> 
> (In reply to Ludovic Hirlimann [:Usul] from comment #4)
> > You could also use the gecko profiler (from
> > https://addons.mozilla.org/en-US/thunderbird/addon/gecko-profiler/?src=cb-dl-
> > created).
> > 
> > Also I don't know if ubuntu did release a 15.0.1 but if they did, please
> > update and let us know if things are better.
(Reporter)

Comment 8

5 years ago
I may be going out on a limb here, but the problem seems to be related to receiving emails. I didn't experience complete lockups this evening, though it would freeze for a few minutes here and there. At some point last night something happened which caused the thunderbird instance to allocate 6Gb of memory w/ 100% CPU usage. I killed it and restarted it, and the problem seems to be occurring again without any interaction on my behalf. My guess is that there must be an email or set of emails that are causing it to go haywire every time it tries to download or filter (BTW, I have a few dozen filters that run against all incoming emails).

Comment 9

5 years ago
How big are your folders? Size on disk / number of messages?

Comment 10

5 years ago
how big is panacea.dat file in your profile directory?

and then please report what happens if you start TB in safe mode, and then start in normal mode.
https://support.mozillamessaging.com/en-US/kb/safe-mode#os=linux&browser=tb15
(Reporter)

Comment 11

5 years ago
My panacea.dat file is 1.2M. I'll report on the safe-mode test when the issue surfaces again (should be tonight - EST).
(Reporter)

Comment 12

5 years ago
I can report that even while running in safe-mode, it has hung. It doesn't seem to have the memory run-away problem, as the memory is stuck at 622MB.

Comment 13

5 years ago
- how are you seeing garbage collection?
- note: someone on IRC yesterday reported similar issue with v15 and ubuntu
- panacea.dat file size is nominal/OK
- what is size of your global-messages-db.sqlite fille?
(Reporter)

Comment 14

5 years ago
1) It was an assumption on my part. I saw a number of times that after the 100% CPU usage would settle down, the memory allocation would go down. This may be unrelated, but I saw it enough times at first that it made me think it was spending the time GC-ing. No evidence though.
2) Glad I am not alone. :/
3) ...
4) global-messages-db.sqlite size: 1.2M

Thanks again for the help!

Comment 15

5 years ago
There is also bug 794595 about freezes in TB15.0.1.
(Reporter)

Comment 16

5 years ago
Not sure I see the relation. Did you mistype the bug report number?

(In reply to :aceman from comment #15)
> There is also bug 794595 about freezes in TB15.0.1.
(Reporter)

Comment 17

5 years ago
This is one sick puppy I have got in my hands. Any tool I can use to generate a stack trace that might help determine what is going on?

Comment 18

5 years ago
Seem to be the same thing here, ubuntu 12.04, thunderbird 15.0.1 hangs just after a few minutes after the start. I have a lots of mail (my profile folder is 10G), but previosly it worked fine. I tried removing global-messages-db.sqlite, doesn't help (maybe it postpones the hang for 10 minutes). It seems that it is unrelated with getting mail because the hang occur even when my computer is offline. I do not use IMAP, only POP3. My panacea.dat is 210K. I'll add msgdb log file.

Comment 19

5 years ago
Created attachment 667069 [details]
MSGDB:5,timestamp

this file is obtained by setting

export NSPR_LOG_MODULES=msgdb:5,timestamp

according to https://wiki.mozilla.org/Thunderbird:Testing:Memory_Usage_Problems, https://wiki.mozilla.org/MailNews:Logging
(Reporter)

Comment 20

5 years ago
I have confirmed that this is still happening on Thunderbird 16.0.1.

Comment 21

5 years ago
Ilya, thanks for the log.  Can you check tools | options | advanced | general | config editor  and plug in mail.db.max_open ... is it set to 30?

The log reveals open db doesn't go above 34. And there are lots of subfolders of Local Folders\Archive  and Local Folders\Inbox
Whiteboard: [has msgdb log]

Comment 22

5 years ago
Wayne, I did that check, mail.db.max_open is set to 30.

There are several subfolders indeed (e.g. find ./ -iname '*.msf' | wc -l  returns 80 in my Mail folder), but I believe it's not an extreme value.
(Reporter)

Updated

5 years ago
Version: 15 → 16
(Reporter)

Comment 23

5 years ago
Verified this is still happening with version 16.0.2.
(Reporter)

Updated

5 years ago
Summary: Thunderbird 15 Freezes w/ 100% CPU (memory leak) → Thunderbird Freezes w/ 100% CPU
(Reporter)

Comment 24

5 years ago
Still happening with version 17.0+build2-0ubuntu0.12.04.1.
(Reporter)

Updated

5 years ago
Version: 16 → 17

Comment 25

5 years ago
(In reply to kyle from comment #16)
> Not sure I see the relation. Did you mistype the bug report number?
> 
> (In reply to :aceman from comment #15)
> > There is also bug 794595 about freezes in TB15.0.1.

Probably should have been bug 794401.

Comment 26

5 years ago
Have you actually tried an official build from mozilla.org (not from ubuntu repository)?

Comment 27

5 years ago
I am seeing the same thing. (100% CPU usage). This happens after Thunderbird has been running for a long time (at least a few hours) and without any user interaction. The odd thing is the Firefox also was at 100% CPU usage at that point in time.

Comment 28

5 years ago
(In reply to :aceman from comment #26)
> Have you actually tried an official build from mozilla.org (not from ubuntu
> repository)?
Component: General → Untriaged
Flags: needinfo?(kyle)
Whiteboard: [has msgdb log] → [has msgdb log][regression:TB15?]

Comment 29

5 years ago
(In reply to abugreporter from comment #27)
> I am seeing the same thing. (100% CPU usage). This happens after Thunderbird
> has been running for a long time (at least a few hours) and without any user
> interaction. 

What you are describing sounds different.
Also, what OS are you running?
Flags: needinfo?(abugreporter)

Comment 30

5 years ago
Ubuntu 12.04.1 LTS
(default kernel at the time). This problem didn't occur again. What is shared between firefox and thunderbird which could have caused this?
Flags: needinfo?(kyle)
Flags: needinfo?(abugreporter)

Comment 31

5 years ago
Most of the rendering core (Gecko) and javascript interpreter is shared and also the Toolkit (i.e. UI widgets, file storage methods, etc.)
(Reporter)

Comment 32

5 years ago
Status update (for me at least): I recently had a drive failure which forced me to start from scratch. Since then I have not encountered any issues that I initially mentioned in this bug report.

Comment 33

5 years ago
oooff!  so we have lost the testcase. Well, thanks for the testcase Kyle.

Ilya, if you are still seeing a problem, please file a bug report
Status: UNCONFIRMED → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → INCOMPLETE

Comment 34

5 years ago
hi everybody! You have a testcase!

I am experiencing all problems described above since a couple of hours. Yesterday and this morning everything was fine. I visited a website with FF while TB was running in the background. TB hung and slowed everything down, so I had to do a Force Quit. FF kept running slow. After a restart of the PC, I opened TB and it hung almost immediately.

I just did an experiment (which I can repeat in variations if you want me to): When I started TB I had system monitor running. FF was already running. TB started and when I clicked on a random email it shot CPU usage up to 100% for one CPU. Memory usage was steadily rising, extending into swap. I killed TB but memory usage didn't drop until later.

Trying to repeat the experiment but TB isn't doing me the favor of hanging again.

Back when I have more.

Comment 35

5 years ago
Hi Alex. Please file a new bug, and try starting Thunderbird in safe mode.
https://support.mozillamessaging.com/en-US/kb/safe-mode

Comment 36

5 years ago
This is all the time since I came back to Thunderbird from MS Outlook.

The thread tha occupies a single CPU 100% is inside thunderbird.exe. I use an old laptop (Core2Duo 2.4GHz / 4 GB).

Starting up Mozilla, takes 100% of one CPU for quite some time and RAM goes quickly up to 200MB. Then processing goes normal. So all OK during startup.

But, after some time, even when idling, or almost immediately after I start composing a message memory goes up to 350MB and CPU tops. 

Here are the most common stack trace entry points that I see:
- mozjs.dll!js_AddGCThingRootRT
- xul.dll!?xpc_LocalizeContext@@YGXPAUJSContext@@@Z
- xul.dll!JSD_GetContextFlags
- xul.dll!DumpCompleteHeap
- mozjs.dll!?UnmarkGrayGCThingRecursively@js@@YAXPAXW4JSGCTraceKind@@@Z
- xul.dll!DumpJSValue
- xul.dll!CallWindowProcCrashProtected




An example stack trace follows, but obviously this changes continuously:

mozjs.dll!?GCThingIsMarkedGray@js@@YA_NPAX@Z
xul.dll!JSD_GetContextFlags+0x143955
xul.dll!?xpc_LocalizeContext@@YGXPAUJSContext@@@Z+0x204c
xul.dll!NS_Free_P+0x4182
xul.dll!NS_InvokeByIndex_P+0x27
xul.dll!?xpc_LocalizeContext@@YGXPAUJSContext@@@Z+0xa757
xul.dll!NS_Free_P+0xc03
xul.dll!JSD_JSContextInUse+0xf45f
xul.dll!JSD_JSContextInUse+0xf46f
mozjs.dll!?StringIsArrayIndex@js@@YA_NPAVJSLinearString@@PAI@Z+0x2ee7
mozjs.dll!?StringIsArrayIndex@js@@YA_NPAVJSLinearString@@PAI@Z+0x646e
mozjs.dll!?sizeOfIncludingThis@JSContext@@QBEIP6AIPBX@Z@Z+0x19e3
mozjs.dll!?sizeOfIncludingThis@JSContext@@QBEIP6AIPBX@Z@Z+0x30b4
xul.dll!XRE_GetFileFromPath+0x15b6b
xul.dll!JSD_GetContextFlags+0xbd069
xul.dll!?xpc_LocalizeContext@@YGXPAUJSContext@@@Z+0x9f66
xul.dll!NS_Free_P+0xbb3
xul.dll!NS_Free_P+0xb34
xul.dll!CallWindowProcCrashProtected+0x16a
mozjs.dll!?UnmarkGrayGCThingRecursively@js@@YAXPAXW4JSGCTraceKind@@@Z+0x55df6
mozjs.dll!?UnmarkGrayGCThingRecursively@js@@YAXPAXW4JSGCTraceKind@@@Z+0x580d
mozjs.dll!?UnmarkGrayGCThingRecursively@js@@YAXPAXW4JSGCTraceKind@@@Z+0x5932
mozjs.dll!js_AddGCThingRootRT+0x12f1a
mozjs.dll!JS_InitReflect+0x9e00
mozjs.dll!?UnmarkGrayGCThingRecursively@js@@YAXPAXW4JSGCTraceKind@@@Z+0x580d
mozjs.dll!?UnmarkGrayGCThingRecursively@js@@YAXPAXW4JSGCTraceKind@@@Z+0x5932
mozjs.dll!js_AddGCThingRootRT+0x12f1a
mozjs.dll!js_AddGCThingRootRT+0x13107
mozjs.dll!js_AddGCThingRootRT+0x1326f
xul.dll!?xpc_LocalizeContext@@YGXPAUJSContext@@@Z+0xaad3
mozjs.dll!JS_NewExternalString+0x5c
xul.dll!?PathifyURI@scache@mozilla@@YAIPAVnsIURI@@AAVnsACString_internal@@@Z+0x2cd9fb
xul.dll!DumpCompleteHeap+0xd4a

Comment 37

5 years ago
gkakas, comments in closed bugs who are not the original reporter tend not to get attention. That said, your problem may be related to a gmail issue. Is gmail your only account?

Alex filed bug 849256 which is already closed WFM.

Updated

9 months ago
Blocks: 1330872
You need to log in before you can comment on or make changes to this bug.