128.2.3esr Memory leak - grow heap-unclassified
Categories
(Thunderbird :: Untriaged, defect)
Tracking
(Not tracked)
People
(Reporter: daliv.tyw, Unassigned)
References
(Blocks 1 open bug)
Details
(Keywords: memory-leak)
Attachments
(1 file)
20.38 KB,
image/png
|
Details |
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:130.0) Gecko/20100101 Firefox/130.0
Steps to reproduce:
Windows 10/11.
Start thunderbird with clean profile.
configure one IMAP account (user/pass/internal server without encryption).
restart.
check the process memory graph (sample attached 15min - jumps are every 5 min)
Actual results:
on normal daily usage that reach more than 8Gb and lead to Resource-exhausion process killing like
2004:
Windows successfully diagnosed a low virtual memory condition. The following programs consumed the most virtual memory: thunderbird.exe (21200) consumed 8378011648 bytes, firefox.exe (19588) consumed 2744483840 bytes, and firefox.exe (3764) consumed 819523584 bytes.
from such can see that TB uses even more than FF - abnormal behaviour.
investigation:
every 5 minutes occurs grow of memory, that after day on normal multi-account lead to TB used all available ram.
this Test isolates that is not plugin issue.
at 5-th minute memory jumps in graph - arrised first heap-unclassified, that constantly grows at every interval.
next memory jumps occurs @10/15/20/25 minute
318.58 MB (100.0%) -- explicit
├──150.21 MB (47.15%) ── heap-unclassified
├───79.08 MB (24.82%) ++ window-objects
├───41.77 MB (13.11%) ++ js-non-window
├───21.53 MB (06.76%) ++ startup-cache
├───10.58 MB (03.32%) ++ (27 tiny)
├────6.16 MB (01.93%) ++ storage/sqlite
├────5.92 MB (01.86%) ++ images
└────3.32 MB (01.04%) ++ threads
memory diff (@start time)->(@5min)
show jump +100Mb
Explicit Allocations
108.51 MB (100.0%) -- explicit
├── 107.82 MB (99.36%) ── heap-unclassified
├─── -2.82 MB (-02.60%) ++ js-non-window
├──── 4.79 MB (04.41%) ++ window-objects
└─── -1.28 MB (-01.18%) ++ (19 tiny)
Expected results:
no memory leakage
Comment 1•2 months ago
|
||
are you read ? - all steps is done. (some wont-read--simple-post-directly-response)
clean profile. no plugins.
and behavior clearly show issue-internal TB processes, not related to some external things.
reinstalled - still jump-grows.
what of subprocesses running internally in TB at approximately in 5 min intervals ? as all whet config-shown/accessible seems set at 10 min (also as new-message rechecks, when not IDLE-receive ).
what suppose - related to "default-TB-tracking-of-users" which can not simple turn "fully off" ... aborted-session-ping. which sends data about my PC and installed TB without my explicit consent.
that is done at the same 5 min interval.
!!! SHIT !!! - please MAKE EXPLICIT USER-ENABLING instead of "DEFAULT ENABLE" of not-consent-tracking-of-me.
also as even when ALL checkboxes turned off in UI about DON'T collect/send any statistic about me
are still generated Files in:
Users\User\AppData\Roaming\Thunderbird\Profiles\XXXX.default-release\datareporting\archived\2024-09
and aborted-session-ping in the same interval
STOP "hidden tracking" of users , which additionaly eats RAM, and not explicitly can be turned OFF fully with "SINGLE CLICK"
you must ASK my permission on ANY "research" or sending ANY of data without my permission
(if i overall will do that) not collect anything, not eating resources not doing any logs that user agreed explicitly. - memory issue seems was always related with such behavior, bu t "hiden by someone" hinter the long "memory issue troubleshooting guide" where all except TB itself have problem related to RAM.
NOT A OFFTOPIC - exactly problem exist in point of 5 min telemetry subprocess ...
TB collects data without permission - and send that in EXACT 5 minute intervals.
Comment 7•2 months ago
|
||
exactly problem exist in point of 5 min telemetry subprocess ...
I misunderstood. Thank you for the data.
I will do some research, but note data being stored on disk doesn't necessarily mean it is being transmitted.
Comment 8•2 months ago
|
||
Just to be clear, you have telemetry set to disabled, correct?
yes
UI - checkboxes is off . (send technical data... , send backlogged ...)
and more - that is done at present even depsite of policies.json - "DisableTelemetry": true
Reporter | ||
Comment 10•2 months ago
|
||
as interval is constant - need to go from that find exact subroutines that fired at that times.
no other than telemetry running every 5-min are found at present.
- no any other relation to 5min intervals exist in about:config (but suppose - not all visible there ...)
values like 300 or 300000 - which can mean time 5 min (if someone not set them similar to 299123 for example in code "to hide from simple search") are only next:
javascript.options.compact_on_user_inactive_delay 300000
javascript.options.mem.gc_high_frequency_small_heap_growth 300
mail.db.idle_limit 300000
media.benchmark.frames 300
messenger.options.messagesStyle.combineConsecutiveInterval 300
messenger.status.timeBeforeIdle 300
network.dns.negative_ttl_for_type_record 300
network.http.response.timeout 300
network.proxy.autoconfig_retry_interval_max 300
security.intermediate_preloading_healer.timer_interval_ms 300000
services.sync.scheduler.idleTime 300
telemetry.number_of_site_origin.min_interval 300000
webgl.max-contexts-per-principal 300
Comment 11•2 months ago
|
||
Start thunderbird with clean profile.
Implies you were also seeing this in production, with a production profile. So a couple more questions:
- Approximate date - when did you first noticed this, and with which version?
- What is the full version number you running prior that did not have the issue?
Reporter | ||
Comment 12•2 months ago
|
||
currently installed 128.2.3esr = 20240920043836
memory leakage by mozilla products are already long time.
OOM-killing occurred from times when FF was forced to process per window model - and systems was scripted to close gracefully "all opened inactive apps" and implemented daily shutdowns. there was clear about "source of problem", as same still exist, so from that times was not analyzed in detail,
now some PCs has taked out from daily-shutdowns and they running all programs for some days and that has shown that TB lead also to memory leakage (and even more that FF has already, also as detected that problem source is not a addons/plugins
therefore can not say about some exact version at which that firstly occurred - highly likely only very old versions below 78 are not affected.
if we searching bugs about "memory leakage" in TB can see that such reports are often and mostly was not solved - leaved without real solution and even problematic point detection.
here we can see that need possibility to find which subroutines are periodic called and investigate into them.
"aborted-session-ping" and other telemetry are based on file changes and they has exactly same periods as memory spikes - so can take them as primary possible related points currently..
Reporter | ||
Comment 13•2 months ago
|
||
so
added into user.js (and checked them afterwards in prefs.js):
user_pref("datareporting.healthreport.uploadEnabled",false);
user_pref("datareporting.policy.dataSubmissionEnabled",false);
user_pref("dom.security.unexpected_system_load_telemetry_enabled",false);
user_pref("toolkit.telemetry.bhrPing.enabled",false);
user_pref("toolkit.telemetry.firstShutdownPing.enabled",false);
user_pref("toolkit.telemetry.newProfilePing.enabled",false);
user_pref("toolkit.telemetry.shutdownPingSender.enabled",false);
user_pref("toolkit.telemetry.shutdownPingSender.enabledFirstSession",false);
user_pref("toolkit.telemetry.updatePing.enabled",false);
user_pref("toolkit.telemetry.archive.enabled",false);
===
still got changed "aborted-session-ping" and still leaking.
Comment 14•2 months ago
|
||
(In reply to DaLiV from comment #12)
...
if we searching bugs about "memory leakage" in TB can see that such reports are often and mostly was not solved - leaved without real solution and even problematic point detection.
I am familiar with most Thunderbird memory bug reports and many of the Firefox. Very few Thunderbird issues have this amount of memory usage, and correlated to a specific activity, so I doubt any are related. Also general comparisons to Firefox will not be useful. It would however be useful if you find FIrefox has the exact same memory usage correlated to telemetry.
Please obtain a Thunderbird performance profile using https://support.mozilla.org/en-US/kb/profiling-thunderbird-performance with "Native Allocations" enabled at step 4.5.
Reporter | ||
Comment 15•2 months ago
|
||
sadly memory growth occurs even without any user interactions (idle)
with profiler something wrong.
1 + Failed to get the active browserId while starting the profiler
2 + config - Disabled Features (grayed out) - think that need to be turned on in capture .
Memory Tracking
3 + that opens at "end" https://profiler.firefox.com/from-browser
are that will try to send all captured data before i'm has done revision of all their content ? i need to examine all before such is sent to outside ... all private data must be anonimized and revised on my behalf (need to see).
4 + last throw error (suppose related with 1-st
Firefox Profiler
Couldn’t retrieve the profile from Firefox.
Error: /from-browser only works in Firefox browsers
The full stack has been written to the Web Console.
Back to home
Comment 16•2 months ago
|
||
You can ignore the the warnings.
will try to send all captured data before i'm has done revision of all their content ? i need to examine all before such is sent to outside ... all private data must be anonimized and revised on my behalf (need to see).
You can uncheck any items under ""Include additional data that may be identifiable". If you prefer, use the "Download" button so that no information is uploaded to the cloud. "Download" will create a file which you can email to me.
Reporter | ||
Comment 17•2 months ago
|
||
there is no "Download" button
only "start recording" and "capture recording" - last opens "profiler url" and send data directly to "clouds" before inspection
Comment 18•2 months ago
|
||
Download appears after Capture > Upload local Profile. The choices then are Download and Upload
Reporter | ||
Comment 19•2 months ago
|
||
additional info:
5min is one half of memleak
but at this time noted also memory not released after notify about "new message arrived".
profiler data sent to email.
Comment 20•1 month ago
|
||
DaLiV has provided profiler data privately. We haven't yet figured out what is happening.
Comment 21•1 month ago
|
||
DaLiV, do you have server side message filters?
Reporter | ||
Comment 22•1 month ago
|
||
No. all filters are local only. however other thing - most accounts are connected from many devices.
But one PC that not using filtering at all and has only local imap account + after switching
- synchronize the most recent "1 week" to "6 days"
- [ON] Don't Download larger that "100Kb"
- [OFF] Always keep started messages
that in last 12 hours has received 10Messages, growth of memory was only 200Mb instead of more than 2Gb, but arrived message count is not comparable - may be related ... and may suppose some "notify" threads in this case also.
as same settings on other, but with many accounts in same period growth was 1.2Gb
still not clearly understandable full relations.
so while researching in parallel.
that growth is slow in time, but with big daily amount. so need firstly understand/find exact point related to that.
- hope in future releases will not be disabled "profiler options" as nightly builds "breaking oauth connections" and therefore real-world measurement is not possible (they are more informative for creating "lab-profile")
nightly give completely other "startup memory graph" even on "startup" with the SAME imap profile as on other PC(diff is on "test" win11 on "main" is win10). still leaking: 10:32 669,7M (already run ca 30min ) -> 13:02 677,8 ... not fast but going up (but that is completely without any new messages or actions at this time, simple staying in background, here will be problem to record profiling, as no exact memory-graph-spikes seen in this mode so no exact timings known.) ... therefore will try to find ocassionaly "at worktimes" best related points.
Description
•