Closed Bug 1646996 Opened 4 years ago Closed 4 years ago

Intermittent Assertion failure: !mDocuments.IsEmpty(), at /builds/worker/checkouts/gecko/dom/base/DocGroup.cpp:301

Categories

(Core :: DOM: Core & HTML, defect, P5)

defect

Tracking

()

RESOLVED FIXED
82 Branch
Tracking Status
firefox-esr68 --- unaffected
firefox-esr78 --- unaffected
firefox79 --- wontfix
firefox80 --- wontfix
firefox81 --- wontfix
firefox82 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: farre)

References

Details

(Keywords: assertion, intermittent-failure)

Attachments

(1 file)

Filed by: nerli [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer.html#?job_id=306918332&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/eZwoathuSKOfoEeNfttrdg/runs/0/artifacts/public/logs/live_backing.log


[task 2020-06-19T18:10:15.696Z] 18:10:15 INFO - GECKO(6388) | [Child 8504: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 4 (000001D144C6BC00) [pid = 8504] [serial = 25] [outer = 0000000000000000] [url = about:blank]
[task 2020-06-19T18:10:15.697Z] 18:10:15 INFO - GECKO(6388) | [Child 8504: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 3 (000001D13DFACC00) [pid = 8504] [serial = 22] [outer = 0000000000000000] [url = about:blank]
[task 2020-06-19T18:10:15.697Z] 18:10:15 INFO - GECKO(6388) | [Child 8504: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 2 (000001D144C65400) [pid = 8504] [serial = 28] [outer = 0000000000000000] [url = about:blank]
[task 2020-06-19T18:10:15.702Z] 18:10:15 INFO - GECKO(6388) | [Child 8504: Main Thread]: I/DocShellAndDOMWindowLeak --DOCSHELL 000001D144C5F800 == 0 [pid = 8504] [id = {6ef504c8-c52e-4fa1-b456-1d3970eed78a}] [url = http://example.com/]
[task 2020-06-19T18:10:15.702Z] 18:10:15 INFO - GECKO(6388) | [Child 7380: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 9 (0000026997180000) [pid = 7380] [serial = 53] [outer = 0000000000000000] [url = about:blank]
[task 2020-06-19T18:10:15.702Z] 18:10:15 INFO - GECKO(6388) | [Child 7380: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 8 (0000026999060400) [pid = 7380] [serial = 49] [outer = 0000000000000000] [url = about:blank]
[task 2020-06-19T18:10:15.703Z] 18:10:15 INFO - GECKO(6388) | [Child 7380: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 7 (000002699905B000) [pid = 7380] [serial = 47] [outer = 0000000000000000] [url = data:application/json,2]
[task 2020-06-19T18:10:15.703Z] 18:10:15 INFO - GECKO(6388) | [Child 7380: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 6 (0000026997184400) [pid = 7380] [serial = 44] [outer = 0000000000000000] [url = about:blank]
[task 2020-06-19T18:10:15.713Z] 18:10:15 INFO - GECKO(6388) | [Child 7380: Main Thread]: I/DocShellAndDOMWindowLeak --DOCSHELL 000002699717B800 == 1 [pid = 7380] [id = {2d9dbea9-5a16-4181-9791-3933ee486e7e}] [url = http://example.com/]
[task 2020-06-19T18:10:15.713Z] 18:10:15 INFO - GECKO(6388) | [Child 7380: Main Thread]: I/DocShellAndDOMWindowLeak --DOCSHELL 0000026990891000 == 0 [pid = 7380] [id = {69957c74-0add-42ae-bd5f-556edd775a41}] [url = about:blank]
[task 2020-06-19T18:10:15.772Z] 18:10:15 INFO - GECKO(6388) | [Child 8788: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 1 (0000022B5E577000) [pid = 8788] [serial = 14] [outer = 0000000000000000] [url = http://example.com/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa]
[task 2020-06-19T18:10:15.772Z] 18:10:15 INFO - GECKO(6388) | [Child 8788: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 0 (0000022B5DF37090) [pid = 8788] [serial = 12] [outer = 0000000000000000] [url = http://example.com/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa]
[task 2020-06-19T18:10:15.772Z] 18:10:15 INFO - GECKO(6388) | Assertion failure: !mDocuments.IsEmpty(), at /builds/worker/checkouts/gecko/dom/base/DocGroup.cpp:301
[task 2020-06-19T18:10:15.803Z] 18:10:15 INFO - GECKO(6388) | [Child 7456: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 2 (000001D5061A4400) [pid = 7456] [serial = 14] [outer = 0000000000000000] [url = about:blank]
[task 2020-06-19T18:10:15.803Z] 18:10:15 INFO - GECKO(6388) | [Child 7380: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 5 (0000026996C27600) [pid = 7380] [serial = 50] [outer = 0000000000000000] [url = about:blank]
[task 2020-06-19T18:10:15.804Z] 18:10:15 INFO - GECKO(6388) | [Child 7380: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 4 (0000026996CB7C00) [pid = 7380] [serial = 51] [outer = 0000000000000000] [url = about:blank]
[task 2020-06-19T18:10:15.854Z] 18:10:15 INFO - GECKO(6388) | [Child 1396: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 1 (0000028573CC2090) [pid = 1396] [serial = 1] [outer = 0000000000000000] [url = about:newtab]
[task 2020-06-19T18:10:15.854Z] 18:10:15 INFO - GECKO(6388) | [Child 1396: Main Thread]: I/DocShellAndDOMWindowLeak --DOCSHELL 0000028573C95400 == 0 [pid = 1396] [id = {2d589aa3-e9b1-4ae0-99a8-109b1ba1ed99}] [url = about:newtab]
[task 2020-06-19T18:10:15.855Z] 18:10:15 INFO - GECKO(6388) | [Child 1396: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 0 (0000028574172800) [pid = 1396] [serial = 3] [outer = 0000000000000000] [url = about:newtab]
[task 2020-06-19T18:10:15.893Z] 18:10:15 INFO - GECKO(6388) | [Child 7380: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 3 (0000026996C27F10) [pid = 7380] [serial = 52] [outer = 0000000000000000] [url = http://example.com/]
[task 2020-06-19T18:10:15.893Z] 18:10:15 INFO - GECKO(6388) | [Child 7456: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 1 (000001D50D065000) [pid = 7456] [serial = 15] [outer = 0000000000000000] [url = http://example.com/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa]
[task 2020-06-19T18:10:15.893Z] 18:10:15 INFO - GECKO(6388) | [Child 7456: Main Thread]: I/DocShellAndDOMWindowLeak --DOMWINDOW == 0 (000001D50D08B090) [pid = 7456] [serial = 13] [outer = 0000000000000000] [url = http://example.com/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa]
[task 2020-06-19T18:10:15.912Z] 18:10:15 INFO - GECKO(6388) | [Child 10160: Main Thread]: I/DocShellAndDOMWindowLeak --DOCSHELL 00000251F5523000 == 0 [pid = 10160] [id = {76687f44-a745-4c28-be43-3b562f4e63a8}] [url = data:application/json,["http://example.com/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"]]
[task 2020-06-19T18:10:15.941Z] 18:10:15 INFO - Initializing stack-fixing for the first stack frame, this may take a while...
[task 2020-06-19T18:10:28.747Z] 18:10:28 INFO - GECKO(6388) | #01: anonymous namespace'::LabellingEventTarget::Release() [dom/base/DocGroup.cpp:116] [task 2020-06-19T18:10:28.747Z] 18:10:28 INFO - GECKO(6388) | #02: TimerThread::PostTimerEvent(already_AddRefed<nsTimerImpl>) [xpcom/threads/TimerThread.cpp:738] [task 2020-06-19T18:10:28.747Z] 18:10:28 INFO - GECKO(6388) | #03: TimerThread::Run() [xpcom/threads/TimerThread.cpp:415] [task 2020-06-19T18:10:28.747Z] 18:10:28 INFO - GECKO(6388) | #04: nsThread::ProcessNextEvent(bool, bool*) [xpcom/threads/nsThread.cpp:1236] [task 2020-06-19T18:10:28.747Z] 18:10:28 INFO - GECKO(6388) | #05: NS_ProcessNextEvent(nsIThread*, bool) [xpcom/threads/nsThreadUtils.cpp:501] [task 2020-06-19T18:10:28.747Z] 18:10:28 INFO - GECKO(6388) | #06: mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*) [ipc/glue/MessagePump.cpp:303] [task 2020-06-19T18:10:28.747Z] 18:10:28 INFO - GECKO(6388) | #07: MessageLoop::RunHandler() [ipc/chromium/src/base/message_loop.cc:309] [task 2020-06-19T18:10:28.748Z] 18:10:28 INFO - GECKO(6388) | #08: MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:291] [task 2020-06-19T18:10:28.748Z] 18:10:28 INFO - GECKO(6388) | #09: static nsThread::ThreadFunc(void*) [xpcom/threads/nsThread.cpp:449] [task 2020-06-19T18:10:28.990Z] 18:10:28 INFO - GECKO(6388) | #10: PR_NativeRunThread(void*) [nsprpub/pr/src/threads/combined/pruthr.c:408] [task 2020-06-19T18:10:28.990Z] 18:10:28 INFO - GECKO(6388) | #11: pr_root(void*) [nsprpub/pr/src/md/windows/w95thred.c:140] [task 2020-06-19T18:10:28.991Z] 18:10:28 INFO - fix-stacks error: failed to read breakpad symbols dirZ:\task_1592587930\build\symbols\ucrtbase.pdbforC:\Windows\System32\ucrtbase.dll[task 2020-06-19T18:10:28.991Z] 18:10:28 INFO - fix-stacks note: this is expected and harmless for system libraries on debug automation runs [task 2020-06-19T18:10:28.992Z] 18:10:28 INFO - GECKO(6388) | #12: o_ceil [C:\Windows\System32\ucrtbase.dll + 0x1c4be] [task 2020-06-19T18:10:28.992Z] 18:10:28 INFO - fix-stacks error: failed to read breakpad symbols dirZ:\task_1592587930\build\symbols\KERNEL32.DLLforC:\Windows\System32\KERNEL32.DLL`

Flags: needinfo?(docfaraday)
See Also: → 1645219

There's no webrtc-related stuff in the test case from comment 1. Probably some other cause.

Flags: needinfo?(docfaraday)
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → INCOMPLETE
Status: RESOLVED → REOPENED
Resolution: INCOMPLETE → ---

Might this be related to bug 1644009, in particular patch 11 ?

Flags: needinfo?(jyavenard)

(In reply to Jens Stutte [:jstutte] (REO for FF 81) from comment #10)

Might this be related to bug 1644009, in particular patch 11 ?

I can't see how this could be related to direct task dispatching; there's none dispatching nor being dispatched; what make you think it could be related?

Looks like we have a task posted via a timer, and that task calls LabellingEventTarget::EventTargetFor

This is Andreas called

Flags: needinfo?(jyavenard) → needinfo?(afarre)

Yep, so this is akward. ~DocGroup calls EventTargetFor to get a target to proxy release the DocGroup on. EventTargetFor checks that !mDocuments.IsEmpty(), which it certainly is when destroying a DocGroup.

Assignee: nobody → afarre
Flags: needinfo?(afarre)

When destroying the DocGroup, it will most certainly have no documents
attached to it, which makes labelling them a strange thing to do. And
the event target in DocGroup would most certainly dispatch to release
on the main thread anyway, so switch to do that right away.

Pushed by afarre@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/7e9dde2d0236
Proxy to main thread in ~DocGroup. r=smaug
Status: REOPENED → RESOLVED
Closed: 4 years ago4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 82 Branch

Is there any possibly real-world impact to users here which would justify backport consideration or can this ride the 82 train to release?

Nope, no real world impact. It's a debug assert that really didn't protect from something bad in this particular case.

Flags: needinfo?(afarre)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: