This page describes how to perform tests that measure memory leaks and bloat for MailNews and its sub-components.
Current Method:
XPCOM_MEM_LEAK_LOG
and --trace-malloc
).Future improvements will be discussed on the discussion page of the Mozilla wiki.
Printed on tinderbox output, these consist of:
There are currently no graphs for these results.
Build Thunderbird or SeaMonkey with your standard mozconfig
file, but with the following options set:
ac_add_options --enable-debug
ac_add_options --enable-trace-malloc
In your <objdir>
run the following command:
make mailbloat
This will run the tests and produce some result files. See Debugging Memory Leaks for more information on what to do with this data.
TODO: add more information on processing output.
The files specific to Leak and Bloat testing are be stored in:
http://mxr.mozilla.org/comm-central/source/mailnews/test/performance
These files consist of:
bloat/bloatAddrOverlay.xul
bloat/bloatComposeOverlay.xul
bloat/bloatMainOverlay.xul
bloat/bloatAddrOverlay.js
bloat/bloatComposeOverlay.js
bloat/bloatMainOverlay.js
common/mailnewsTestPrefs.js
bloat/setUpBloatTest.py
bloat/runtest.py
common/setUpCommonMailNews.py
Initial Setup:
Future requirements/possibilities:
08/04/2008: prefs.js
created via TB with the above settings, the first section is for preferences included in tinderbox, the second section is ones which don't currently get set.
user_pref("mail.account.account1.server", "server1"); user_pref("mail.account.account2.identities", "id1"); user_pref("mail.account.account2.server", "server2"); user_pref("mail.accountmanager.accounts", "account1,account2"); user_pref("mail.accountmanager.defaultaccount", "account2"); user_pref("mail.accountmanager.localfoldersserver", "server1"); user_pref("mail.identity.id1.fullName", "Tinderbox"); user_pref("mail.identity.id1.smtpServer", "smtp1"); user_pref("mail.identity.id1.useremail", "tinderbox@invalid.com"); user_pref("mail.identity.id1.valid", true); user_pref("mail.root.none-rel", "[ProfD]Mail"); user_pref("mail.root.pop3-rel", "[ProfD]Mail"); user_pref("mail.server.server1.directory-rel", "[ProfD]Mail/Local Folders"); user_pref("mail.server.server1.hostname", "Local Folders"); user_pref("mail.server.server1.name", "Local Folders"); user_pref("mail.server.server1.type", "none"); user_pref("mail.server.server1.userName", "nobody"); user_pref("mail.server.server2.check_new_mail", false); user_pref("mail.server.server2.directory-rel", "[ProfD]Mail/tinderbox"); user_pref("mail.server.server2.download_on_biff", true); user_pref("mail.server.server2.hostname", "tinderbox"); user_pref("mail.server.server2.login_at_startup", false); user_pref("mail.server.server2.name", "tinderbox@invalid.com"); user_pref("mail.server.server2.type", "pop3"); user_pref("mail.server.server2.userName", "tinderbox"); user_pref("mail.smtp.defaultserver", "smtp1"); user_pref("mail.smtpserver.smtp1.hostname", "tinderbox"); user_pref("mail.smtpserver.smtp1.username", "tinderbox"); user_pref("mail.smtpservers", "smtp1"); user_pref("mail.startup.enabledMailCheckOnce", true); user_pref("mailnews.start_page_override.mstone", "1.9pre"); user_pref("mail.shell.checkDefaultClient", false); // Ensure OS X and Outlook/OE books are disabled user_pref("ldap_2.servers.osx.position", 0); user_pref("ldap_2.servers.oe.position", 0);
Preferences in generated profile, but not set:
user_pref("mail.root.none", "/home/moztest/.thunderbird/t7i1txfw.minimum/Mail"); user_pref("mail.root.pop3", "/home/moztest/.thunderbird/t7i1txfw.minimum/Mail"); user_pref("mail.server.server1.directory", "/home/moztest/.thunderbird/t7i1txfw.minimum/Mail/Local Folders"); user_pref("mail.server.server2.directory", "/home/moztest/.thunderbird/t7i1txfw.minimum/Mail/tinderbox"); user_pref("mail.attachment.store.version", 1); user_pref("mail.folder.views.version", 1); user_pref("mail.spam.version", 1); user_pref("mailnews.quotingPrefs.version", 1); user_pref("mailnews.ui.threadpane.version", 6);
Date and Time (PST) | Description | Approx Effect on Numbers |
Pre Dec 2008 | Initial Version | - |
2008/12/07 11:20 | bug 463594 Disabled OS X and Outlook address books via the preference settings | Mac Lk -56.2kb. |