Closed Bug 935419 Opened 11 years ago Closed 11 years ago

Intermittent shutdown "Assertion failure: false (Ran out of memory in ScanRoots), at build/xpcom/base/nsCycleCollector.cpp:2270"

Categories

(Core :: General, defect)

x86
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla28
Tracking Status
firefox26 --- unaffected
firefox27 --- unaffected
firefox28 --- fixed
firefox-esr24 --- unaffected

People

(Reporter: cbook, Assigned: mccr8)

References

()

Details

(Keywords: crash, intermittent-failure)

Crash Data

Windows 7 32-bit mozilla-inbound debug test mochitest-2 on 2013-11-05 22:51:52 PST for push 86903c68a81a

slave: t-w732-ix-052

https://tbpl.mozilla.org/php/getParsedLog.php?id=30188706&tree=Mozilla-Inbound

TEST-UNEXPECTED-FAIL | Shutdown | application terminated with exit code 214748365123:09:02  WARNING -  PROCESS-CRASH | Shutdown | application crashed [@ xul.dll + 0x1378297]
23:09:02     INFO -  Crash dump filename: c:\users\cltbld\appdata\local\temp\tmpo4jr8c\minidumps\1046a100-02d5-4cae-ad90-df2654838b72.dmp
23:09:02     INFO -  Operating system: Windows NT
23:09:02     INFO -                    6.1.7601 Service Pack 1
23:09:02     INFO -  CPU: x86
23:09:02     INFO -       GenuineIntel family 6 model 30 stepping 5
23:09:02     INFO -       8 CPUs
23:09:02     INFO -  Crash reason:  EXCEPTION_BREAKPOINT
23:09:02     INFO -  Crash address: 0x66af8297
23:09:02     INFO -  Thread 0 (crashed)
23:09:02     INFO -   0  xul.dll + 0x1378297
23:09:02     INFO -      eip = 0x66af8297   esp = 0x0014ae64   ebp = 0x0014ae90   ebx = 0x00000000
23:09:02     INFO -      esi = 0x00634b44   edi = 0x00634b20   eax = 0x00000000   ecx = 0x43fedb59
23:09:02     INFO -      edx = 0x692be4d8   efl = 0x00000212
23:09:02     INFO -      Found by: given as instruction pointer in context
23:09:02     INFO -   1  xul.dll + 0x137a4a4
23:09:02     INFO -      eip = 0x66afa4a5   esp = 0x0014ae98   ebp = 0x0014af20
23:09:02     INFO -      Found by: previous frame's frame pointer
23:09:02     INFO -   2  xul.dll + 0x137a6bd
23:09:02     INFO -      eip = 0x66afa6be   esp = 0x0014af28   ebp = 0x0014af38
23:09:02     INFO -      Found by: previous frame's frame pointer
23:09:02     INFO -   3  xul.dll + 0x137a834
23:09:02     INFO -      eip = 0x66afa835   esp = 0x0014af40   ebp = 0x0014ede4
23:09:02     INFO -      Found by: previous frame's frame pointer
23:09:02     INFO -   4  xul.dll + 0x137a8ee
23:09:02     INFO -      eip = 0x66afa8ef   esp = 0x0014edec   ebp = 0x0014edfc
23:09:02     INFO -      Found by: previous frame's frame pointer
23:09:02     INFO -   5  xul.dll + 0x132ec1c
23:09:02     INFO -      eip = 0x66aaec1d   esp = 0x0014ee04   ebp = 0x0014ee28
23:09:02     INFO -      Found by: previous frame's frame pointer
23:09:02     INFO -   6  xul.dll + 0xefff
23:09:02     INFO -      eip = 0x6578f000   esp = 0x0014ee30   ebp = 0x0014ee48
23:09:02     INFO -      Found by: previous frame's frame pointer
23:09:02     INFO -   7  xul.dll + 0x14e79
23:09:02     INFO -      eip = 0x65794e7a   esp = 0x0014ee50   ebp = 0x0014ee64
23:09:02     INFO -      Found by: previous frame's frame pointer
23:09:02     INFO -   8  xul.dll + 0x150f3
23:09:02     INFO -      eip = 0x657950f4   esp = 0x0014ee6c   ebp = 0x0014ef74
23:09:02     INFO -      Found by: previous frame's frame pointer
23:09:02     INFO -   9  firefox.exe!do_main [nsBrowserApp.cpp:86903c68a81a : 275 + 0x1c]
Blocks: 934568
OS: Mac OS X → Windows 7
We could disable the MOZ_ASSERT for this one place if it is a big problem.  Inserting some manual GCs before the big shutdown GC would also help.  I should see what is in the shutdown graph for debug M2.  As a better fix, we could make ScanRoots use a segmented array for its work list and maybe it would fail less.
I disabled the MOZ_ASSERT until we figure something out.
So it turns out a bunch of these are also "Ran out of memory while building cycle collector graph", so I guess we need to back this patch out entirely for the moment.  Olli had a theory about what is happening here.  (Comment 9 is an unrelated crash.)
Depends on: 938945
That last one was mis-starred.  It crashed here:
xul.dll!mozilla::storage::Service::Observe(nsISupports *,char const *,wchar_t const *) [mozStorageService.cpp:b159af3edf46 : 903 + 0x17]

Also, it was in M1.
Assignee: nobody → continuation
Since we've filed that crash three times now, you'd think it'd get suggested :)
The last two here are bug 931642, so I'm going to call this fixed for now.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla28
Flags: needinfo?(bugs)
Flags: needinfo?(bugs)
(Adjusting summary so this doesn't appear as a suggestion in TBPL for unrelated non-zero exit code shutdown failures).
Summary: Intermittent TEST-UNEXPECTED-FAIL | Shutdown | application terminated with exit code 2147483651 | Assertion failure: false (Ran out of memory in ScanRoots), at build/xpcom/base/nsCycleCollector.cpp:2270 → Intermittent shutdown "Assertion failure: false (Ran out of memory in ScanRoots), at build/xpcom/base/nsCycleCollector.cpp:2270"
You need to log in before you can comment on or make changes to this bug.