Closed Bug 1439393 Opened 7 years ago Closed 7 years ago

Consistent OOM | small crash after upgrade to 59b1 with RSS feeds

Categories

(MailNews Core :: Feed Reader, defect)

defect
Not set
critical

Tracking

(thunderbird57 unaffected, thunderbird58 unaffected, thunderbird59 wontfix, thunderbird60+ fixed, thunderbird61 fixed)

VERIFIED FIXED
Thunderbird 61.0
Tracking Status
thunderbird57 --- unaffected
thunderbird58 --- unaffected
thunderbird59 --- wontfix
thunderbird60 + fixed
thunderbird61 --- fixed

People

(Reporter: matafagafo, Unassigned)

References

Details

(Keywords: crash, regression, Whiteboard: [regression:TB59])

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0 Build ID: 20180215111455 Steps to reproduce: Open TB and wait for about 1 minute, and TB crashes with OOM ie: 1e3d563e-a624-4e29-91df-def420180219 Looking to memory usage, it show a fast growth of heap-unclassified Actual results: TB crashes in about a minute after started Expected results: Use TB normally as before version upgrade
Does crash go away if you disable the lookout addon? Your crash history, all recent, all with 59.0b1 ... bp-80e0d57a-41ff-47c6-bf6e-464f20180219 2018-02-19 19:00:08 OOM | small bp-f23b4841-bcde-4926-bb42-3f7cd0180219 2018-02-19 18:04:32 OOM | small bp-bfe9f6cb-14ed-4375-a105-750e90180219 2018-02-19 17:17:03 mozilla::mailnews::MsgDBReporter::GetPath bp-faaff517-d915-4561-9113-a582e0180219 2018-02-19 16:59:09 PtrToNodeMatchEntry bp-f734544e-aff1-4087-9968-a5f290180219 2018-02-19 16:56:48 mozilla::mailnews::MsgDBReporter::CollectReports bp-1e3d563e-a624-4e29-91df-def420180219 2018-02-19 16:51:18 OOM | small bp-6d6b212a-75ba-48fb-9afd-417a10180219 2018-02-19 16:48:09 PtrToNodeMatchEntry bp-3bbe7cf8-9550-45ef-8313-176920180219 2018-02-19 16:45:39 OOM | small bp-527a85c8-090f-40d6-a6ba-d77890180219 2018-02-19 16:39:02 OOM | small bp-f1d6bb0a-d413-4c78-ba8b-600110180219 2018-02-19 16:03:11 OOM | small bp-672bb095-c514-4358-b8c3-d49bd0180219 2018-02-19 14:55:05 @0x0 | mozilla::mailnews::MsgDBReporter::CollectReports bp-ce4dff63-939d-4060-8786-7cdf70180219 2018-02-19 14:40:18 PtrToNodeMatchEntry bp-741b1ad7-d948-415f-9e28-23f000180219 2018-02-19 14:36:52 PtrToNodeMatchEntry bp-4f5dd1fb-edb9-45b6-85d2-95e0b0180219 2018-02-19 13:59:27 OOM | small bp-0152a450-4d59-489d-a09c-50ad70180219 2018-02-19 12:57:28 OOM | large | mozalloc_abort | mozalloc_handle_oom | moz_xrealloc | nsTArray_base<T>::EnsureCapacity<T> | nsTArray_Impl<T>::AppendElement<T> | mozilla::dom::FragmentOrElement::CanSkip bp-d0f4ee03-5871-43b0-ae0d-6c8ae0180219 2018-02-19 12:53:13 PtrToNodeMatchEntry bp-83c139c6-e124-4dce-8ce2-2ea560180219 2018-02-19 12:50:51 OOM | small
Severity: normal → critical
Flags: needinfo?(matafagafo)
Keywords: crash
(In reply to Wayne Mery (:wsmwk) from comment #1) > Does crash go away if you disable the lookout addon? No, I disabled lookout addon and the crash happened again ID: 34eaad1c-6f41-4232-95e6-15f8e0180219
Flags: needinfo?(matafagafo)
Status: UNCONFIRMED → NEW
Component: Untriaged → General
Ever confirmed: true
See Also: → 1353702
Summary: Consistent OOM crash after upgrade to 59b1 → Consistent OOM | small crash after upgrade to 59b1
Flags: needinfo?(matafagafo)
(In reply to Wayne Mery (:wsmwk) from comment #4) > Does crash go away if you install previous beta? > https://releases.mozilla.org/pub/thunderbird/releases/58.0b3/win32/en-US/ > Thunderbird%20Setup%2058.0b3.exe Yes, the crash got away when I installed the old (58b3) version over the 59b1.
Flags: needinfo?(matafagafo)
For the records, I just upgraded to 59b2 and the problem persist, crashes: * ID: c6fc94e8-66bb-4bec-9de2-1c08c0180302 * ID: 56b3d79a-8cdb-4faa-b426-221550180302 * ID: 44d78a17-0c44-4ca1-9c3e-2f7580180302
The same problem with TB 60b1 * ID: 058c6b31-f5a5-4860-a8cb-71a530180327 * ID: 043e66ad-272d-421e-8d53-7a51c0180327 * ID: aa562b73-6705-4cda-8b54-487500180327 If should I stop testing new beta version and publishing here, please let me know.
Feel free to stay on the beta if it is not a hardship. Unfortunately still no idea what the cause is. All the crashes you listed are OOM | small. If that should change, it might get interesting.
Do you have RSS feeds defined?
Flags: needinfo?(matafagafo)
Blocks: tb60found
(In reply to Wayne Mery (:wsmwk) from comment #9) > Do you have RSS feeds defined? Yes, actually I've 50+ RSS feeds divided in 3 accounts.
Flags: needinfo?(matafagafo)
bp-1e3d563e-a624-4e29-91df-def420180219 has XML parser on stack which jcranmer pointed out is on stack of his crash bp-594a5e05-0864-43c9-b3a2-d21580180328 and he has RSS feeds. ref also bug 1353704 comment 11 regarding RSS 0 mozglue.dll mozalloc_abort(char const* const) memory/mozalloc/mozalloc_abort.cpp:33 1 mozglue.dll mozalloc_handle_oom(unsigned int) memory/mozalloc/mozalloc_oom.cpp:54 2 mozglue.dll moz_xmalloc memory/mozalloc/mozalloc.cpp:72 3 xul.dll NS_NewXMLElement(mozilla::dom::Element**, already_AddRefed<mozilla::dom::NodeInfo>&&) dom/xml/nsXMLElement.cpp:19 4 xul.dll NS_NewElement(mozilla::dom::Element**, already_AddRefed<mozilla::dom::NodeInfo>&&, mozilla::dom::FromParser, nsTSubstring<char16_t> const*) dom/base/nsNameSpaceManager.cpp:220 5 xul.dll nsXMLContentSink::CreateElement(char16_t const**, unsigned int, mozilla::dom::NodeInfo*, unsigned int, nsIContent**, bool*, mozilla::dom::FromParser) dom/xml/nsXMLContentSink.cpp:460 6 xul.dll nsXMLContentSink::HandleStartElement(char16_t const*, char16_t const**, unsigned int, unsigned int, bool) dom/xml/nsXMLContentSink.cpp:992 7 xul.dll nsXMLContentSink::HandleStartElement(char16_t const*, char16_t const**, unsigned int, unsigned int) dom/xml/nsXMLContentSink.cpp:950 8 xul.dll nsExpatDriver::HandleStartElement(char16_t const*, char16_t const**) parser/htmlparser/nsExpatDriver.cpp:324 9 xul.dll Driver_HandleStartElement parser/htmlparser/nsExpatDriver.cpp:64 10 xul.dll doContent parser/expat/lib/xmlparse.c:2442 11 xul.dll contentProcessor parser/expat/lib/xmlparse.c:2098 12 xul.dll MOZ_XML_ParseBuffer parser/expat/lib/xmlparse.c:1658 13 xul.dll MOZ_XML_Parse parser/expat/lib/xmlparse.c:1629 14 xul.dll nsExpatDriver::ParseBuffer(char16_t const*, unsigned int, bool, unsigned int*) parser/htmlparser/nsExpatDriver.cpp:887 15 xul.dll nsExpatDriver::ConsumeToken(nsScanner&, bool&) parser/htmlparser/nsExpatDriver.cpp:985 16 xul.dll nsParser::Tokenize(bool) parser/htmlparser/nsParser.cpp:1539 17 xul.dll nsParser::ResumeParse(bool, bool, bool) parser/htmlparser/nsParser.cpp:1055 18 xul.dll nsParser::OnDataAvailable(nsIRequest*, nsISupports*, nsIInputStream*, unsigned __int64, unsigned int) parser/htmlparser/nsParser.cpp:1437 19 xul.dll mozilla::dom::XMLHttpRequestMainThread::StreamReaderFunc(nsIInputStream*, void*, char const*, unsigned int, unsigned int, unsigned int*) dom/xhr/XMLHttpRequestMainThread.cpp:1759 20 xul.dll nsPipeInputStream::ReadSegments(nsresult (*)(nsIInputStream*, void*, char const*, unsigned int, unsigned int, unsigned int*), void*, unsigned int, unsigned int*) xpcom/io/nsPipe3.cpp:1448 21 xul.dll mozilla::dom::XMLHttpRequestMainThread::OnDataAvailable(nsIRequest*, nsISupports*, nsIInputStream*, unsigned __int64, unsigned int) dom/xhr/XMLHttpRequestMainThread.cpp:1926 22 xul.dll mozilla::net::nsStreamListenerWrapper::OnDataAvailable(nsIRequest*, nsISupports*, nsIInputStream*, unsigned __int64, unsigned int) netwerk/base/nsStreamListenerWrapper.h:31 23 xul.dll nsBaseChannel::OnDataAvailable(nsIRequest*, nsISupports*, nsIInputStream*, unsigned __int64, unsigned int) netwerk/base/nsBaseChannel.cpp:904 24 xul.dll nsInputStreamPump::OnStateTransfer() netwerk/base/nsInputStreamPump.cpp:591 25 xul.dll nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) netwerk/base/nsInputStreamPump.cpp:424 26 xul.dll nsInputStreamReadyEvent::Run() xpcom/io/nsStreamUtils.cpp:97 27 xul.dll nsThread::ProcessNextEvent(bool, bool*) xpcom/threads/nsThread.cpp:1040 28 ntdll.dll TimeToDaysAndFraction 29 kernelbase.dll SystemTimeToFileTime 30 xul.dll NS_ProcessNextEvent(nsIThread*, bool) xpcom/threads/nsThreadUtils.cpp:517 31 xul.dll mozilla::dom::XMLHttpRequestMainThread::SendInternal(mozilla::dom::BodyExtractorBase const*) dom/xhr/XMLHttpRequestMainThread.cpp:3110
Whiteboard: [regression:TB59?]
(In reply to Wayne Mery (:wsmwk) from comment #11) > Have you tried these earlier betas? > https://archive.mozilla.org/pub/thunderbird/releases/58.0b1/win32/en-US/ > Thunderbird%20Setup%2058.0b1.exe > https://archive.mozilla.org/pub/thunderbird/releases/57.0b1/win32/en-US/ > Thunderbird%20Setup%2057.0b1.exe Yes, I tried them, and they worked without any OOM crash
Flags: needinfo?(matafagafo)
Component: General → Feed Reader
Product: Thunderbird → MailNews Core
Summary: Consistent OOM | small crash after upgrade to 59b1 → Consistent OOM | small crash after upgrade to 59b1 (RSS?)
Some more testing locally: * Disabling all feeds seems to make it more stable. * Most of the memory is stuck in heap-unclassified. 1,442.60MB of 1,719.06MB in one report I managed to extract. (Note that "normal" memory usage here should run about 150MB or so in Windows' memory column). * There's some logging information for RSS if you up the log level to debug in about:config (Feeds.logging.console, set it to debug). One of my feeds apparently had 10,000 items to parse. The RSS feed in question is: https://bugzilla.mozilla.org/buglist.cgi?chfieldfrom=-1&chfieldto=Now&component=Layout&component=Style%20System%20%28CSS%29&component=XForms&emailassigned_to1=1&emailassigned_to2=1&emailqa_contact2=1&emailreporter2=1&field-1-0-0=component&field-1-1-0=product&known_name=Core_update&product=Core&query_format=advanced&type-1-0-0=anyexact&type-1-1-0=anyexact&value-1-0-0=Layout%2CStyle%20System%20%28CSS%29%2CXForms&value-1-1-0=Core&title=Bug%20List:%20Style%20updates&ctype=atom It is a ~22MB file, I kind of see why the DOM construction might chew up a load of memory. After deleting the offending feed from the list of feeds to update, the near-immediate crashes don't seem to be an issue. I still have to see if there is a slower, more persistent leak though.
Will be fixed by partial backout in bug 1420473.
https://hg.mozilla.org/comm-central/rev/9f58c4a6ec4a Bug 1420473 - Partially backed out changeset 1654a1adc838 (FeedUtils.jsm) to fix crash (bug 1439393). a=jorgk
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 61.0
Jorg, thanks for the uplift. I have additional users confirming this patch helps
Status: RESOLVED → VERIFIED
Summary: Consistent OOM | small crash after upgrade to 59b1 (RSS?) → Consistent OOM | small crash after upgrade to 59b1 with RSS feeds
You need to log in before you can comment on or make changes to this bug.