Closed Bug 529794 Opened 16 years ago Closed 14 years ago

Will crash on on many actions [@ _cairo_hash_table_destroy]

Categories

(Core :: Graphics, defect)

1.9.1 Branch
x86
Linux
defect
Not set
critical

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: frank.robbins, Unassigned)

Details

(Keywords: crash)

Crash Data

Attachments

(7 files)

User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.5) Gecko/20091105 Fedora/3.5.5-1.fc11 Firefox/3.5.5 GTB5 Build Identifier: thunderbird-3.0.1pre.en-US.linux-i686 Thunderbird crashes with pop up windows or can just disappear from view. This can happen when carrying out many actions , composing, reading , mail arrival. Is the threading correct ..? Reproducible: Always Steps to Reproduce: 1.run thunderbird connected to IMAP server 2. Wait for mail to arrive or compose mail open a few IMAP sub folders 3. System will crash on one of these actions. 4. Or Just crash over time. Actual Results: [user@hera ~]$ ./thunderbird/thunderbird deliver mode: 0 2009-11-19 09:12:45 moveCopyModule ERROR error trying to get a string called: movedMessages 2009-11-19 09:12:45 moveCopyModule ERROR Exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIStringBundle.GetStringFromName]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: file:///home/user/thunderbird/modules/activity/moveCopy.js :: anonymous :: line 87" data: no] 2009-11-19 09:16:01 moveCopyModule ERROR error trying to get a string called: movedMessages 2009-11-19 09:16:01 moveCopyModule ERROR Exception: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIStringBundle.GetStringFromName]" nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)" location: "JS frame :: file:///home/user/thunderbird/modules/activity/moveCopy.js :: anonymous :: line 87" data: no] deliver mode: 7 I/O error : Too many open files I/O error : Too many open files I/O error : Too many open files I/O error : Too many open files [user@hera ~]$ Expected Results: Not to crash Not crashed . This is currently not really possible to use. I am Using FC11 can't use b4 as it has similar problems.
Keywords: crash
sounds like we've exceeded some limit on open file handles. It would be interesting to know what files TB has open before it crashes.
So what would you like me to do, so you can find this problem? Currently it maybe only one mail open but I do have a lot of IMAP-ed sub folders. I am willing to help just let me know. BTW the newer update .. todays is even worse. In that I can't use it at all without a instant crash. I have for now reverted aback to the FC11 b4 release. Very willing to run anything to help though
(In reply to comment #1) > sounds like we've exceeded some limit on open file handles. It would be > interesting to know what files TB has open before it crashes. So what would you like me to do, so you can find this problem? Currently it maybe only one mail open but I do have a lot of IMAP-ed sub folders. I am willing to help just let me know. BTW the newer update .. todays is even worse. In that I can't use it at all without a instant crash. I have for now reverted aback to the FC11 b4 release. Very willing to run anything to help though
Do you have any extensions installed? If so, the first thing to try is running in safe-mode, which disables extensions. Ludovic can probably help you with the unix command that tells you what files a process has open.
$lsof >before.txt $./thunderbird &; lsof >while.txt $diff -u before.txt while.txt should give you the list of open files while thunderbird is trying to start. If thunderbird is open long enough, you can use lsof -p pid where pid is the process id of thundebird.
Version: unspecified → 3.0
Attached file the while.txt file
As requested
Attached file The Before File
As requested the Before file
(In reply to comment #6) > Created an attachment (id=413547) [details] > the while.txt file > > As requested Looking at the ouput of that Thunderbird doesn't open many files - and none in the profile.
(In reply to comment #8) > (In reply to comment #6) > > Created an attachment (id=413547) [details] [details] > > the while.txt file > > > > As requested > > Looking at the ouput of that Thunderbird doesn't open many files - and none in > the profile. Current version Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.5) Gecko/20091119 Shredder/3.0.1pre This is what I have done $ lsof >before.txt $ ./thunderbird3/thunderbird & lsof >while.txt $ diff -u before.txt while.txt Thunderbird will currently not open a new mail. it a press the write button it fails with a a error window <window id="msgcomposeWindow" ^ This may of course be something else If you want me to re load the earlier version not updated thunderbird-3.0.1pre.en-US.linux-i686.tar.bz2 and run again I can ... just ask. Also there seems to be a need to remove the .thunderbird directory ... sometimes this can help stabilise things. i.e On b4 this would not work with out a fresh .thunderbird. With thunderbird-3.0.1pre.en-US.linux-i686.tar.bz2 I also need to remove .thunderbird
Thunderbird will currently not open a new mail. it a press the write button it fails with a a error window <window id="msgcomposeWindow" ^ Should read Thunderbird will currently not open a new mail. if I press the write button it fails with a a error window <window id="msgcomposeWindow" ^
Thunderbird Message Filter Import/Export 1.3.7.5 I am sure the above add on is doing something I start from scratch delete .thunderbird 1. Do not add this add on Then the problems of opening a new mail are not there. Also there was an issue with the filters after the filter import with this add on installed. The problem now is how to import a very large filter from this add on in to Thunderbird with out breaking it ..? Any clues on direction I Have the export file if this helps If this is the issue of course?
(In reply to comment #11) > Thunderbird Message Filter Import/Export 1.3.7.5 > > I am sure the above add on is doing something > > I start from scratch delete .thunderbird > > 1. Do not add this add on > > Then the problems of opening a new mail are not there. Also there was an issue > with the filters after the filter import with this add on installed. Pleas contact the addon author and tell him that something is broken , and it makes your thunderbird install unusable. > The problem now is how to import a very large filter from this add on in to > Thunderbird with out breaking it ..? Any clues on direction I Have the export > file if this helps Where are you importing the filters from ? To know if the issues comes from the addon- you'll just have to run tb for some time.
From a text file exported from this add-on https://addons.mozilla.org/en-US/thunderbird/addon/2474 This add-on carries out the export and import I assume it is saving this data below .thunderbird Where can I find the information regarding the required format for the filters... What is the recommended method to import/export filters? If you could point me in some direction fro the format.. I will do the modification myself
(In reply to comment #13) > Where can I find the information regarding the required format for the > filters... > > What is the recommended method to import/export filters? > > If you could point me in some direction fro the format.. I will do the > modification myself David, James do we have some documentation on that somewhere ?
filters are a text file; they can be simply copied/restored.
(In reply to comment #15) > filters are a text file; they can be simply copied/restored. Sure so I have now not added the add-on (into thunderbird) started afresh .thunderbird and modified the file ~/.thunderbird/nz8hipti.default/ImapMail/mail.analogue-micro.com/msgFilterRules.dat directly atfer saveing a few filter first... there seem to still be issues. I am sure the format is correct. This is the error I now have ./thunderbird3/thunderbird (thunderbird-bin:4011): Pango-WARNING **: shaping failure, expect ugly output. shape-engine='BasicEngineFc', font='DejaVu Sans Mono Oblique 16.4248046875', text='/data/mail/' (thunderbird-bin:4011): Gtk-WARNING **: Attempting to read the recently used resources file at `/home/frank/.recently-used.xbel', but the parser failed: Failed to open file '/home/frank/.recently-used.xbel': Too many open files. (thunderbird-bin:4011): Gtk-CRITICAL **: gtk_drag_set_icon_default: assertion `GDK_IS_DRAG_CONTEXT (context)' failed I have 1638 directiories on the IMAP area with corresponding 1128 filters is this too many ..? ie $ grep -o actionValue= AddressBook/msgFilterRules.dat_2009_11_20 | wc -w 1128
Any feedback as this situation is still a crash. I have no add-on's installed and this amount of filters in action. I have tried thunderbird on two machines with the same filter files and have the same situation. This weeks update still has the problem
Can you share your filter file (use the add attachment link above) ?
Attached file Message filter file (obsolete) —
Message Filter file as requested ... If you need more please ask
(In reply to comment #19) > Created an attachment (id=414022) [details] > Message filter file > > Message Filter file as requested ... If you need more please ask Hum this doesn't crash on me - when I use your file.
(In reply to comment #20) > (In reply to comment #19) > > Created an attachment (id=414022) [details] [details] > > Message filter file > > > > Message Filter file as requested ... If you need more please ask > > Hum this doesn't crash on me - when I use your file. Well it would of been really helpful ... but that's bugs as normal not behaving the same everywhere. It may not be the correct place to look...nothing to do with the filters.
(In reply to comment #3) > (In reply to comment #1) > I have for now reverted aback to the FC11 b4 release. Very willing to run > anything to help though What happens when you follow instructions at http://fedoraproject.org/wiki/StackTraces and when you crash , can you give us a stack trace ?
I am happy to run through gdb but it is not that straight forward as $ gdb ./thunderbird3/thunderbird as ./thunderbird3/thunderbird is a script file to set a few things up then run thunderbird. I assume $ gdb ./thunderbird3/thunderbird-bin is more correct ... but it needs libraries etc before I can truely run gdb .. If you have a few more pointers for the library import etc. Then I can send the dump after a run through gdb.
Ok If I run $ gdb ./thunderbird3/thunderbird -g This gives a gdb shell Running now is this what you need ?
You have 1638 imap folders? Or 1638 imap parent folders? You have 1128 filters that filter messages into these folders? It really sounds like a lot of file handles are getting used and not getting released.
There are 1423 imap folders in total $ find .thunderbird/3on0nlrf.default/ImapMail/mail.mymail.com/ | wc -l 1423 Top level ls .thunderbird/3on0nlrf.default/ImapMail/mail.mymail.com/ -1 | wc -l 51
Crashed on trying to send mail never returned
Attachment #414062 - Attachment mime type: application/octet-stream → text/plain
please follow the instructions from gdb for the line "Missing separate debuginfos". but what you have is a hang... since you interrupted thunderbird...
(In reply to comment #28) > please follow the instructions from gdb for the line "Missing separate > debuginfos". > > but what you have is a hang... since you interrupted thunderbird... Ok, I have added in the debuginfos. What do you want me to provide as there are a many issues debug windows pop up quite a bit (small minimised no content in them). I do get messages like (thunderbird-bin:13329): Gtk-WARNING **: Attempting to read the recently used resources file at `/home/frank/.recently-used.xbel', but the parser failed: Failed to open file '/home/frank/.recently-used.xbel': Too many open files. Do you want the full .ddd/sessions/ or ..? Please advise
ideally, stack traces for each fopen that fails (this requires you to construct some breakpoint magic to stop whenever fopen fails and dump a stack). plus of course a thread apply all bt from the _hang_ at the end. actually, it sounds like an strace logging just opens+closes @times would be interesting as it seems that perhaps files are opened but not closed.
Any Help ..?
Comment on attachment 414223 [details] Latest hang / crash on sending mail well, the bits you installed make some of this less noisy. you either need to get symbols from mozilla.org's symbol servers (there's a script to do this), install your distro's version and get it's symbols (you know how to do that now), or build thunderbird from source. given that you're probably going to be the one doing the chasing, i'd suggest the last option. use --disable-debug --enable-debugger-info-modules --disable-optimize
Attachment #414223 - Attachment mime type: application/octet-stream → text/plain
Latest crash. Complete console from GDB from start to end... What more do I need to add
Attachment #414236 - Attachment mime type: application/octet-stream → text/plain
sorry, at this point you need a version of thunderbird with symbols. you can either: A. install thunderbird from your vendor and install debug symbols for it B. build thunderbird from source with --disable-debug --enable-debugger-info-modules --disable-optimize C. try to get symbols from our symbol server (there's in theory a script somewhere, but i don't believe there's much if any documentation for this, I certainly can't walk you through it) I'd suggest you do A or B. Note that until you do A or B, you can't generate any useful crash reports of thunderbird using gdb -- sorry.
Attached file Full build log
This is the output from a full build of thunderbird .. as you can see it seems to get in trouble with the IMAP directories
As before ... I have now reverted back to TB 2. As TB3 for me is very unreliable
Attachment #415354 - Attachment mime type: application/octet-stream → text/plain
Attachment #415355 - Attachment mime type: application/octet-stream → text/plain
attachment 415354 [details]: WARNING: Textrun cache not empty!: 'mCache.Count() == 0', file /tmp/ThunderBird/comm-central/mozilla/gfx/thebes/src/gfxTextRunWordCache.cpp, line 85 Assertion failed at /tmp/ThunderBird/comm-central/mozilla/gfx/cairo/cairo/src/cairo-hash.c:198: hash_table->live_entries == 0 If you have a build like this, please use: ./thunderbird -g -d gdb r when an assertion fails, you should see: (gdb) enter "bt" attach the output from that run...
Component: General → Graphics
Product: Thunderbird → Core
QA Contact: general → thebes
Summary: Will crash on on many actions → Will crash on on many actions [@ _cairo_hash_table_destroy]
Version: 3.0 → 1.9.1 Branch
I am unable to find _cairo_hash_table_destroy in top 10 frames of any 1.9.1 based thunderbird crashes for the past month, i.e. going back to 11/1/2009
Frank, if you look in your profile directory, do you see .msf files for all your imap folders? It looks to me like we're failing to create .msf files for your imap folders, perhaps because we've already run out of file handles for whatever reason.
I find that log somewhat fascinating. Is it definitely the act of having the filters that causes this?
(In reply to comment #39) > Frank, if you look in your profile directory, do you see .msf files for all > your imap folders? It looks to me like we're failing to create .msf files for > your imap folders, perhaps because we've already run out of file handles for > whatever reason. There are not always pairs between .sbd and .msf. Doyou need me to provide anything else. This I think is due to the amount of IMAP'ed folders not the filters will a tree output of .thunderbird help
(In reply to comment #40) > I find that log somewhat fascinating. Is it definitely the act of having the > filters that causes this? I think it is a combination of amount of IMAP folders open and the filters acting on these folders. If I have less IMAP folders open then TB3 will operate for longer until I open more. Also I think TB2 also suffers in this way to a lesser degree.
A tree output of .thunderbird would be interesting, yes.
(In reply to comment #43) > A tree output of .thunderbird would be interesting, yes. Ok , But this is all the contents of my mail contacts I am not that happy releasing this information. Who would be looking at it ..?
If you e-mail it to me, no one else would see it.
Crash Signature: [@ _cairo_hash_table_destroy]
Now fixed in TB5 + earlier
Status: UNCONFIRMED → RESOLVED
Closed: 14 years ago
Resolution: --- → INVALID
Resolution: INVALID → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: