I updated from the 59 version to 60.40. When Thunderbird is started the VM Size in Task Manager is about ~190 MB. When running for a 15 hours and just checking for new messages (IMAP folders), the VM Size is more than 350 MB. The 59 version didn't have the issue. About:memory reports error in maildb and warning:
WARNING: the following values are negative or unreasonably large.
explicit/maildb
explicit/(21 tiny)
explicit/(21 tiny)/heap-unclassified
This indicates a defect in one or more memory reporters. The invalid values are highlighted
TB 60.4.0 32 bit - memory leaks
- tanstaafl
- Moderator
- Posts: 49647
- Joined: July 30th, 2003, 5:06 pm
Re: TB 60.4.0 32 bit - memory leaks
What is maildb? I didn't spot it in the listing from about:memory. I normally run about:memory just once (before restarting) as each time you measure it that uses more memory.
Normally if you think you have a memory bug you'd run Thunderbird in safe mode (help -> restart with add-ons disabled) to verify its due to an add-on and then re-enable one add-on, test and repeat as needed until you identify the culprit.
https://wiki.mozilla.org/Thunderbird:Te ... e_Problems (how to identify memory leak source)
https://bugzilla.mozilla.org/show_bug.cgi?id=1240722 (Thunderbird leaks file descriptors (mostly .msf files) like a sieve causing high memory. 5 imap accounts. no virtual folders.)
Normally if you think you have a memory bug you'd run Thunderbird in safe mode (help -> restart with add-ons disabled) to verify its due to an add-on and then re-enable one add-on, test and repeat as needed until you identify the culprit.
https://wiki.mozilla.org/Thunderbird:Te ... e_Problems (how to identify memory leak source)
https://bugzilla.mozilla.org/show_bug.cgi?id=1240722 (Thunderbird leaks file descriptors (mostly .msf files) like a sieve causing high memory. 5 imap accounts. no virtual folders.)
- tanstaafl
- Moderator
- Posts: 49647
- Joined: July 30th, 2003, 5:06 pm
Re: TB 60.4.0 32 bit - memory leaks
Moved from Thunderbird Bugs to Thunderbird Support as its not discussing what to do with a confirmed bug filed with Bugzilla.
-
- Posts: 56
- Joined: August 28th, 2012, 4:01 pm
Re: TB 60.4.0 32 bit - memory leaks
This is (anonymized) part of the memory report
172.03 MB (100.0%) -- explicit
├──478.06 MB (277.89%) -- maildb [?!]
│ ├──350.55 MB (203.77%) ── database(imap://xxx@aaa.bbb.ccc/INBOX) [?!]
│ ├──114.26 MB (66.42%) ── database(imap://xxx@aaa.bbb.ccc/Sent)
│ ├────7.27 MB (04.23%) ── database(imap://xxx@aaa.bbb.ccc/INBOX/Folder1)
│ ├────3.01 MB (01.75%) ── database(imap://xxx@aaa.bbb.ccc/INBOX/Folder2)
│ ├────2.43 MB (01.41%) ── database(imap://xxx@aaa.bbb.ccc/INBOX/Folder3)
└──-410.26 MB (-238.48%) -- (21 tiny) [?!]
├─────1.71 MB (00.99%) ++ atoms
├─────1.12 MB (00.65%) ++ xul-prototype-cache
├─────1.02 MB (00.59%) ++ layout
├─────0.98 MB (00.57%) ── profiler/profiler-state
├─────0.94 MB (00.55%) ++ xpconnect
├─────0.89 MB (00.52%) ── xpti-working-set
├─────0.79 MB (00.46%) ── icu
├─────0.64 MB (00.37%) ++ url-preloader
├─────0.61 MB (00.35%) ++ network
├─────0.49 MB (00.28%) ++ preferences
├─────0.43 MB (00.25%) ++ gfx
├─────0.22 MB (00.13%) ++ xpcom
├─────0.11 MB (00.07%) ++ dom
├─────0.09 MB (00.05%) ── telemetry
├─────0.05 MB (00.03%) ++ cycle-collector
├─────0.01 MB (00.01%) ── cookie-service
├─────0.00 MB (00.00%) ++ data-storage
├─────0.00 MB (00.00%) ── script-namespace-manager
├─────0.00 MB (00.00%) ── history-links-hashtable
├─────0.00 MB (00.00%) ── media/libogg
└──-420.36 MB (-244.35%) ── heap-unclassified [?!]
172.03 MB (100.0%) -- explicit
├──478.06 MB (277.89%) -- maildb [?!]
│ ├──350.55 MB (203.77%) ── database(imap://xxx@aaa.bbb.ccc/INBOX) [?!]
│ ├──114.26 MB (66.42%) ── database(imap://xxx@aaa.bbb.ccc/Sent)
│ ├────7.27 MB (04.23%) ── database(imap://xxx@aaa.bbb.ccc/INBOX/Folder1)
│ ├────3.01 MB (01.75%) ── database(imap://xxx@aaa.bbb.ccc/INBOX/Folder2)
│ ├────2.43 MB (01.41%) ── database(imap://xxx@aaa.bbb.ccc/INBOX/Folder3)
└──-410.26 MB (-238.48%) -- (21 tiny) [?!]
├─────1.71 MB (00.99%) ++ atoms
├─────1.12 MB (00.65%) ++ xul-prototype-cache
├─────1.02 MB (00.59%) ++ layout
├─────0.98 MB (00.57%) ── profiler/profiler-state
├─────0.94 MB (00.55%) ++ xpconnect
├─────0.89 MB (00.52%) ── xpti-working-set
├─────0.79 MB (00.46%) ── icu
├─────0.64 MB (00.37%) ++ url-preloader
├─────0.61 MB (00.35%) ++ network
├─────0.49 MB (00.28%) ++ preferences
├─────0.43 MB (00.25%) ++ gfx
├─────0.22 MB (00.13%) ++ xpcom
├─────0.11 MB (00.07%) ++ dom
├─────0.09 MB (00.05%) ── telemetry
├─────0.05 MB (00.03%) ++ cycle-collector
├─────0.01 MB (00.01%) ── cookie-service
├─────0.00 MB (00.00%) ++ data-storage
├─────0.00 MB (00.00%) ── script-namespace-manager
├─────0.00 MB (00.00%) ── history-links-hashtable
├─────0.00 MB (00.00%) ── media/libogg
└──-420.36 MB (-244.35%) ── heap-unclassified [?!]
- tanstaafl
- Moderator
- Posts: 49647
- Joined: July 30th, 2003, 5:06 pm
Re: TB 60.4.0 32 bit - memory leaks
I have global search/indexing enabled , 2 IMAP accounts and 4 add-ons (one a persona) on this machine. I don't have offline folders (from synchronization & sharing) enabled. I notice you have 5 database entries (which I assume are for offline folders), which appear to be summarized as maildb. If you temporarily disable offline folders (that won't delete them) and retest does the memory leak problem go away?
For comparison, this is the explicit allocations I see:
101.19 MB (100.0%) -- explicit
├───29.29 MB (28.95%) -- js-non-window
│ ├──14.40 MB (14.23%) -- zones
│ │ ├──11.61 MB (11.48%) -- zone(0xb016000)
│ │ │ ├───5.42 MB (05.36%) -- compartment([System Principal], shared JSM global)
│ │ │ │ ├──3.56 MB (03.52%) -- classes
│ │ │ │ │ ├──2.36 MB (02.33%) -- class(Object)/objects
│ │ │ │ │ │ ├──2.05 MB (02.03%) ── gc-heap
│ │ │ │ │ │ └──0.30 MB (00.30%) ++ malloc-heap
│ │ │ │ │ └──1.21 MB (01.19%) ++ (8 tiny)
│ │ │ │ ├──1.28 MB (01.27%) ++ scripts
│ │ │ │ └──0.58 MB (00.57%) ++ (8 tiny)
│ │ │ ├───4.63 MB (04.58%) ++ (18 tiny)
│ │ │ └───1.56 MB (01.54%) ++ shapes
│ │ ├───2.17 MB (02.15%) -- zone(0xb013000)
│ │ │ ├──2.13 MB (02.11%) -- strings
│ │ │ │ ├──2.12 MB (02.09%) -- string(<non-notable strings>)
│ │ │ │ │ ├──1.67 MB (01.65%) -- gc-heap
│ │ │ │ │ │ ├──1.66 MB (01.65%) ── latin1
│ │ │ │ │ │ └──0.00 MB (00.00%) ── two-byte
│ │ │ │ │ └──0.45 MB (00.45%) ── malloc-heap/latin1
│ │ │ │ └──0.02 MB (00.02%) ++ string(length=15052, copies=1 (removed ids and email addresses)
│ │ │ └──0.04 MB (00.04%) ++ (4 tiny)
│ │ └───0.61 MB (00.60%) ++ (8 tiny)
│ ├──13.66 MB (13.50%) -- runtime
│ │ ├───4.79 MB (04.74%) ── script-data
│ │ ├───4.11 MB (04.07%) -- gc
│ │ │ ├──4.00 MB (03.95%) ── nursery-committed
│ │ │ └──0.11 MB (00.11%) ++ (3 tiny)
│ │ ├───2.05 MB (02.03%) ── shared-immutable-strings-cache
│ │ ├───1.08 MB (01.07%) ── atoms-table
│ │ ├───1.06 MB (01.05%) ++ code
│ │ └───0.55 MB (00.55%) ++ (9 tiny)
│ └───1.23 MB (01.22%) ++ gc-heap
├───15.09 MB (14.91%) -- gfx
│ ├──14.92 MB (14.74%) ── heap-textures
│ └───0.17 MB (00.17%) ++ (5 tiny)
├───11.10 MB (10.97%) -- window-objects
│ ├───7.11 MB (07.03%) -- top(chrome://messenger/content/messenger.xul, id=3)
│ │ ├──5.47 MB (05.41%) -- active
│ │ │ ├──4.68 MB (04.62%) -- window(chrome://messenger/content/messenger.xul)
│ │ │ │ ├──2.23 MB (02.20%) ++ layout
│ │ │ │ ├──1.35 MB (01.33%) ++ js-compartment([System Principal], about:blank)
│ │ │ │ ├──1.09 MB (01.07%) ++ dom
│ │ │ │ └──0.02 MB (00.01%) ++ (2 tiny)
│ │ │ └──0.79 MB (00.78%) ++ (2 tiny)
│ │ └──1.64 MB (01.62%) ++ js-zone(0xdbce800)
│ ├───2.06 MB (02.04%) -- top(about:support, id=28)
│ │ ├──1.65 MB (01.63%) -- active/window(about:support)
│ │ │ ├──1.08 MB (01.07%) ++ layout
│ │ │ └──0.57 MB (00.57%) ++ (4 tiny)
│ │ └──0.41 MB (00.40%) ++ js-zone(0x1839d800)
│ └───1.93 MB (01.91%) ++ (7 tiny)
├────9.55 MB (09.43%) ── heap-unclassified
├────8.28 MB (08.18%) ++ (21 tiny)
├────7.91 MB (07.82%) -- script-preloader
│ ├──7.91 MB (07.82%) -- heap
│ │ ├──7.90 MB (07.81%) ── saved-scripts [2]
│ │ └──0.01 MB (00.01%) ++ (2 tiny)
│ └──0.00 MB (00.00%) ── non-heap/memmapped-cache
├────6.36 MB (06.28%) -- heap-overhead
│ ├──4.43 MB (04.37%) ── bin-unused
│ ├──1.19 MB (01.17%) ── page-cache
│ └──0.74 MB (00.73%) ── bookkeeping
├────4.23 MB (04.18%) -- images
│ ├──2.81 MB (02.78%) -- content/raster/used
│ │ ├──1.87 MB (01.85%) -- image(1366x200, file:///C:/Users/Donald/Documents/profiles/thunderbird/fuvxey58.default/lwtheme/lightweighttheme-header-1366x768?839924;0)
│ │ │ ├──1.04 MB (01.03%) -- locked/cannot_substitute/surface(1366x200)
│ │ │ │ ├──1.04 MB (01.03%) ── decoded-nonheap
│ │ │ │ └──0.00 MB (00.00%) ── decoded-heap
│ │ │ └──0.83 MB (00.82%) ── source
│ │ └──0.94 MB (00.93%) ++ image(1366x100, file:///C:/Users/Donald/Documents/profiles/thunderbird/fuvxey58.default/lwtheme/lightweighttheme-footer-1366x768?839924;0)
│ ├──1.40 MB (01.39%) -- chrome
│ │ ├──1.20 MB (01.19%) ++ vector/used
│ │ └──0.20 MB (00.20%) ++ raster/used
│ └──0.02 MB (00.02%) ++ uncached/raster/used/image(80x32, chrome://messenger/skin/icons/server.png)
├────3.93 MB (03.89%) -- storage/sqlite
│ ├──2.03 MB (02.00%) ++ (5 tiny)
│ └──1.91 MB (01.88%) ── other
├────3.69 MB (03.65%) -- startup-cache
│ ├──3.69 MB (03.65%) ── mapping
│ └──0.00 MB (00.00%) ── data
└────1.76 MB (01.74%) -- workers/workers(chrome)/worker(resource://gre/modules/osfile/osfile_async_worker.js, 0x144bb000)
├──1.24 MB (01.22%) -- runtime
│ ├──1.04 MB (01.03%) ++ gc
│ └──0.20 MB (00.19%) ++ (13 tiny)
└──0.52 MB (00.52%) ++ (3 tiny)
For comparison, this is the explicit allocations I see:
101.19 MB (100.0%) -- explicit
├───29.29 MB (28.95%) -- js-non-window
│ ├──14.40 MB (14.23%) -- zones
│ │ ├──11.61 MB (11.48%) -- zone(0xb016000)
│ │ │ ├───5.42 MB (05.36%) -- compartment([System Principal], shared JSM global)
│ │ │ │ ├──3.56 MB (03.52%) -- classes
│ │ │ │ │ ├──2.36 MB (02.33%) -- class(Object)/objects
│ │ │ │ │ │ ├──2.05 MB (02.03%) ── gc-heap
│ │ │ │ │ │ └──0.30 MB (00.30%) ++ malloc-heap
│ │ │ │ │ └──1.21 MB (01.19%) ++ (8 tiny)
│ │ │ │ ├──1.28 MB (01.27%) ++ scripts
│ │ │ │ └──0.58 MB (00.57%) ++ (8 tiny)
│ │ │ ├───4.63 MB (04.58%) ++ (18 tiny)
│ │ │ └───1.56 MB (01.54%) ++ shapes
│ │ ├───2.17 MB (02.15%) -- zone(0xb013000)
│ │ │ ├──2.13 MB (02.11%) -- strings
│ │ │ │ ├──2.12 MB (02.09%) -- string(<non-notable strings>)
│ │ │ │ │ ├──1.67 MB (01.65%) -- gc-heap
│ │ │ │ │ │ ├──1.66 MB (01.65%) ── latin1
│ │ │ │ │ │ └──0.00 MB (00.00%) ── two-byte
│ │ │ │ │ └──0.45 MB (00.45%) ── malloc-heap/latin1
│ │ │ │ └──0.02 MB (00.02%) ++ string(length=15052, copies=1 (removed ids and email addresses)
│ │ │ └──0.04 MB (00.04%) ++ (4 tiny)
│ │ └───0.61 MB (00.60%) ++ (8 tiny)
│ ├──13.66 MB (13.50%) -- runtime
│ │ ├───4.79 MB (04.74%) ── script-data
│ │ ├───4.11 MB (04.07%) -- gc
│ │ │ ├──4.00 MB (03.95%) ── nursery-committed
│ │ │ └──0.11 MB (00.11%) ++ (3 tiny)
│ │ ├───2.05 MB (02.03%) ── shared-immutable-strings-cache
│ │ ├───1.08 MB (01.07%) ── atoms-table
│ │ ├───1.06 MB (01.05%) ++ code
│ │ └───0.55 MB (00.55%) ++ (9 tiny)
│ └───1.23 MB (01.22%) ++ gc-heap
├───15.09 MB (14.91%) -- gfx
│ ├──14.92 MB (14.74%) ── heap-textures
│ └───0.17 MB (00.17%) ++ (5 tiny)
├───11.10 MB (10.97%) -- window-objects
│ ├───7.11 MB (07.03%) -- top(chrome://messenger/content/messenger.xul, id=3)
│ │ ├──5.47 MB (05.41%) -- active
│ │ │ ├──4.68 MB (04.62%) -- window(chrome://messenger/content/messenger.xul)
│ │ │ │ ├──2.23 MB (02.20%) ++ layout
│ │ │ │ ├──1.35 MB (01.33%) ++ js-compartment([System Principal], about:blank)
│ │ │ │ ├──1.09 MB (01.07%) ++ dom
│ │ │ │ └──0.02 MB (00.01%) ++ (2 tiny)
│ │ │ └──0.79 MB (00.78%) ++ (2 tiny)
│ │ └──1.64 MB (01.62%) ++ js-zone(0xdbce800)
│ ├───2.06 MB (02.04%) -- top(about:support, id=28)
│ │ ├──1.65 MB (01.63%) -- active/window(about:support)
│ │ │ ├──1.08 MB (01.07%) ++ layout
│ │ │ └──0.57 MB (00.57%) ++ (4 tiny)
│ │ └──0.41 MB (00.40%) ++ js-zone(0x1839d800)
│ └───1.93 MB (01.91%) ++ (7 tiny)
├────9.55 MB (09.43%) ── heap-unclassified
├────8.28 MB (08.18%) ++ (21 tiny)
├────7.91 MB (07.82%) -- script-preloader
│ ├──7.91 MB (07.82%) -- heap
│ │ ├──7.90 MB (07.81%) ── saved-scripts [2]
│ │ └──0.01 MB (00.01%) ++ (2 tiny)
│ └──0.00 MB (00.00%) ── non-heap/memmapped-cache
├────6.36 MB (06.28%) -- heap-overhead
│ ├──4.43 MB (04.37%) ── bin-unused
│ ├──1.19 MB (01.17%) ── page-cache
│ └──0.74 MB (00.73%) ── bookkeeping
├────4.23 MB (04.18%) -- images
│ ├──2.81 MB (02.78%) -- content/raster/used
│ │ ├──1.87 MB (01.85%) -- image(1366x200, file:///C:/Users/Donald/Documents/profiles/thunderbird/fuvxey58.default/lwtheme/lightweighttheme-header-1366x768?839924;0)
│ │ │ ├──1.04 MB (01.03%) -- locked/cannot_substitute/surface(1366x200)
│ │ │ │ ├──1.04 MB (01.03%) ── decoded-nonheap
│ │ │ │ └──0.00 MB (00.00%) ── decoded-heap
│ │ │ └──0.83 MB (00.82%) ── source
│ │ └──0.94 MB (00.93%) ++ image(1366x100, file:///C:/Users/Donald/Documents/profiles/thunderbird/fuvxey58.default/lwtheme/lightweighttheme-footer-1366x768?839924;0)
│ ├──1.40 MB (01.39%) -- chrome
│ │ ├──1.20 MB (01.19%) ++ vector/used
│ │ └──0.20 MB (00.20%) ++ raster/used
│ └──0.02 MB (00.02%) ++ uncached/raster/used/image(80x32, chrome://messenger/skin/icons/server.png)
├────3.93 MB (03.89%) -- storage/sqlite
│ ├──2.03 MB (02.00%) ++ (5 tiny)
│ └──1.91 MB (01.88%) ── other
├────3.69 MB (03.65%) -- startup-cache
│ ├──3.69 MB (03.65%) ── mapping
│ └──0.00 MB (00.00%) ── data
└────1.76 MB (01.74%) -- workers/workers(chrome)/worker(resource://gre/modules/osfile/osfile_async_worker.js, 0x144bb000)
├──1.24 MB (01.22%) -- runtime
│ ├──1.04 MB (01.03%) ++ gc
│ └──0.20 MB (00.19%) ++ (13 tiny)
└──0.52 MB (00.52%) ++ (3 tiny)
-
- Posts: 2833
- Joined: December 7th, 2004, 6:52 am
- Contact:
Re: TB 60.4.0 32 bit - memory leaks
350MB is quite reasonable.
maildb is the storage associated with opening .msf files. .msf files are the indexes to folders
maildb is the storage associated with opening .msf files. .msf files are the indexes to folders
- tanstaafl
- Moderator
- Posts: 49647
- Joined: July 30th, 2003, 5:06 pm
Re: TB 60.4.0 32 bit - memory leaks
Then how come I don't have one? 478.06 MB also seems high for *.msf files for four inbox and one sent folder.wsmwk wrote:maildb is the storage associated with opening .msf files. .msf files are the indexes to folders
Is there a wiki page or KB article somewhere that documents the output of about:memory for Thunderbird? I looked in https://wiki.mozilla.org/Thunderbird:Te ... e_Problems . It has a link to a non-existent https://wiki.mozilla.org/Memory_Overview page in step 8 plus a empty section with that name.
- tanstaafl
- Moderator
- Posts: 49647
- Joined: July 30th, 2003, 5:06 pm
Re: TB 60.4.0 32 bit - memory leaks
wsmwk:
Is "Thunderbird loads a folder's *.msf file into memory whenever it opens the folder. By default it keeps up to 30 *.msf files open for 5 minutes (and their contents in memory), unless they are "special" folders, which it never closes. It loads the inbox.msf file for every account on startup." from http://kb.mozillazine.org/Performance_-_Thunderbird out of date?
That's partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=723248 . mail.db.max_open appears to still default to 30 but mail.db.idle_limit now seems to be 300000 (not 3000). Is it still in seconds?
I know the inbox counts as a special folder but I didn't think the sent folder did. If it does, then why does only one get listed in Puppy2012's memory listing for maildb?
Is "Thunderbird loads a folder's *.msf file into memory whenever it opens the folder. By default it keeps up to 30 *.msf files open for 5 minutes (and their contents in memory), unless they are "special" folders, which it never closes. It loads the inbox.msf file for every account on startup." from http://kb.mozillazine.org/Performance_-_Thunderbird out of date?
That's partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=723248 . mail.db.max_open appears to still default to 30 but mail.db.idle_limit now seems to be 300000 (not 3000). Is it still in seconds?
I know the inbox counts as a special folder but I didn't think the sent folder did. If it does, then why does only one get listed in Puppy2012's memory listing for maildb?