Closed Bug 1510744 Opened 6 years ago Closed 5 years ago

Intermittent Assertion failure: aIncrease || mBusyCount (Mismatched busy count mods!), at z:/build/build/src/dom/workers/WorkerPrivate.cpp:1893

Categories

(Core :: DOM: Workers, defect, P2)

defect

Tracking

()

RESOLVED DUPLICATE of bug 1564700

People

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

References

Details

(Keywords: intermittent-failure, Whiteboard: [stockwell unknown])

Filed by: ccoroiu [at] mozilla.com

https://treeherder.mozilla.org/logviewer.html#?job_id=214356121&repo=mozilla-central

https://queue.taskcluster.net/v1/task/BIAMURFKQIKhJBG0ZKtIPw/runs/1/artifacts/public/logs/live_backing.log

https://hg.mozilla.org/mozilla-central/raw-file/tip/layout/tools/reftest/reftest-analyzer.xhtml#logurl=https://queue.taskcluster.net/v1/task/BIAMURFKQIKhJBG0ZKtIPw/runs/1/artifacts/public/logs/live_backing.log&only_show_unexpected=1

12:10:31     INFO - Assertion failure: aIncrease || mBusyCount (Mismatched busy count mods!), at z:/build/build/src/dom/workers/WorkerPrivate.cpp:1893
12:10:31     INFO - #01: mozilla::ThrottledEventQueue::Inner::ExecuteRunnable() [xpcom/threads/ThrottledEventQueue.cpp:249]
12:10:31     INFO - 
12:10:31     INFO - #02: mozilla::ThrottledEventQueue::Inner::Executor::Run() [xpcom/threads/ThrottledEventQueue.cpp:85]
12:10:31     INFO - 
12:10:31     INFO - #03: nsThread::ProcessNextEvent(bool,bool *) [xpcom/threads/nsThread.cpp:1246]
12:10:31     INFO - 
12:10:31     INFO - #04: NS_ProcessNextEvent(nsIThread *,bool) [xpcom/threads/nsThreadUtils.cpp:530]
12:10:31     INFO - 
12:10:31     INFO - #05: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate *) [ipc/glue/MessagePump.cpp:97]
12:10:31     INFO - 
12:10:31     INFO - #06: mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate *) [ipc/glue/MessagePump.cpp:302]
12:10:31     INFO - 
12:10:31     INFO - #07: MessageLoop::RunInternal() [ipc/chromium/src/base/message_loop.cc:325]
12:10:31     INFO - 
12:10:31     INFO - #08: MessageLoop::RunHandler() [ipc/chromium/src/base/message_loop.cc:319]
12:10:31     INFO - 
12:10:31     INFO - #09: MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:299]
12:10:31     INFO - 
12:10:31     INFO - #10: nsBaseAppShell::Run() [widget/nsBaseAppShell.cpp:160]
12:10:31     INFO - 
12:10:31     INFO - #11: nsAppShell::Run() [widget/windows/nsAppShell.cpp:420]
12:10:31     INFO - 
12:10:31     INFO - #12: XRE_RunAppShell() [toolkit/xre/nsEmbedFunctions.cpp:961]
12:10:31     INFO - 
12:10:31     INFO - #13: mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate *) [ipc/glue/MessagePump.cpp:269]
12:10:31     INFO - 
12:10:31     INFO - #14: MessageLoop::RunInternal() [ipc/chromium/src/base/message_loop.cc:325]
12:10:31     INFO - 
12:10:31     INFO - #15: MessageLoop::RunHandler() [ipc/chromium/src/base/message_loop.cc:319]

12:11:02     INFO - REFTEST PROCESS-CRASH | file:///Z:/task_1543406384/build/tests/reftest/tests/dom/xbl/crashtests/205735-1.xhtml (finished) | application crashed [@ mozilla::dom::WorkerPrivate::ModifyBusyCount(bool)]
12:11:02     INFO - Crash dump filename: c:\users\task_1543406384\appdata\local\temp\tmpi3qkkx.mozrunner\minidumps\1c98194b-cf16-44eb-990f-d9bb2b00d787.dmp
12:11:02     INFO - Operating system: Windows NT
12:11:02     INFO -                   10.0.15063 
12:11:02     INFO - CPU: amd64
12:11:02     INFO -      family 6 model 85 stepping 3
12:11:02     INFO -      8 CPUs
12:11:02     INFO - 
12:11:02     INFO - GPU: UNKNOWN
12:11:02     INFO - 
12:11:02     INFO - Crash reason:  EXCEPTION_BREAKPOINT
12:11:02     INFO - Crash address: 0x7ff9f684ff2f
12:11:02     INFO - Assertion: Unknown assertion type 0x00000000
12:11:02     INFO - Process uptime: 391 seconds
12:11:02     INFO - 
12:11:02     INFO - Thread 0 (crashed)
12:11:02     INFO -  0  xul.dll!mozilla::dom::WorkerPrivate::ModifyBusyCount(bool) [WorkerPrivate.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 1893 + 0x0]
12:11:02     INFO -     rax = 0x00007ffa21d7ded0   rdx = 0x0000000000000000
12:11:02     INFO -     rcx = 0x00007ffa0169c018   rbx = 0x000000007f527000
12:11:02     INFO -     rsi = 0x000001d5106be000   rdi = 0x0000000000000001
12:11:02     INFO -     rbp = 0x000001d50ee0fe80   rsp = 0x000000a1bb5fe9b0
12:11:02     INFO -      r8 = 0x000000a1bb5f8ae8    r9 = 0x000000a1bb5fa130
12:11:02     INFO -     r10 = 0x0000000000000000   r11 = 0x000000a1bb5f9fb0
12:11:02     INFO -     r12 = 0x0000000000000001   r13 = 0x00007ffa04d0a6e0
12:11:02     INFO -     r14 = 0x00007ffa06eb2d00   r15 = 0x000000a1bb5fea78
12:11:02     INFO -     rip = 0x00007ff9f684ff2f
12:11:02     INFO -     Found by: given as instruction pointer in context
12:11:02     INFO -  1  xul.dll!mozilla::dom::WorkerRunnable::Run() [WorkerRunnable.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 387 + 0x12]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5fea30   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9f687a58d
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO -  2  xul.dll!mozilla::ThrottledEventQueue::Inner::ExecuteRunnable() [ThrottledEventQueue.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 249 + 0x6]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5fec50   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ee3797ad
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO -  3  xul.dll!mozilla::ThrottledEventQueue::Inner::Executor::Run() [ThrottledEventQueue.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 84 + 0x5]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5fece0   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ee378f9b
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO -  4  xul.dll!nsThread::ProcessNextEvent(bool,bool *) [nsThread.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 1244 + 0x6]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5fed10   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ee352e07
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO -  5  xul.dll!NS_ProcessNextEvent(nsIThread *,bool) [nsThreadUtils.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 530 + 0xd]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff310   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ee35c81d
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO -  6  xul.dll!mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate *) [MessagePump.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 97 + 0xa]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff360   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ef4c7e9e
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO -  7  xul.dll!mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate *) [MessagePump.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 301 + 0xb]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff3f0   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ef4c8e8c
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO -  8  xul.dll!MessageLoop::RunInternal() [message_loop.cc:5c66354bff282452a6f1a3c911fa8756b6e752af : 325 + 0x8]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff460   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ef3f5090
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO -  9  xul.dll!MessageLoop::RunHandler() [message_loop.cc:5c66354bff282452a6f1a3c911fa8756b6e752af : 318 + 0x8]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff4e0   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ef3f4e1a
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 10  xul.dll!MessageLoop::Run() [message_loop.cc:5c66354bff282452a6f1a3c911fa8756b6e752af : 298 + 0x8]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff530   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ef3f4c8a
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 11  xul.dll!nsBaseAppShell::Run() [nsBaseAppShell.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 158 + 0xd]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff5a0   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9f71012bd
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 12  xul.dll!nsAppShell::Run() [nsAppShell.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 420 + 0x8]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff5e0   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9f7259f26
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 13  xul.dll!XRE_RunAppShell() [nsEmbedFunctions.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 961 + 0x6]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff650   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9fb1780b9
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 14  xul.dll!mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate *) [MessagePump.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 269 + 0x5]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff6c0   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ef4c8d4a
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 15  xul.dll!MessageLoop::RunInternal() [message_loop.cc:5c66354bff282452a6f1a3c911fa8756b6e752af : 325 + 0x8]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff730   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ef3f5090
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 16  xul.dll!MessageLoop::RunHandler() [message_loop.cc:5c66354bff282452a6f1a3c911fa8756b6e752af : 318 + 0x8]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff7b0   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ef3f4e1a
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 17  xul.dll!MessageLoop::Run() [message_loop.cc:5c66354bff282452a6f1a3c911fa8756b6e752af : 298 + 0x8]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff800   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9ef3f4c8a
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 18  xul.dll!XRE_InitChildProcess(int,char * * const,XREChildData const *) [nsEmbedFunctions.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 787 + 0x5]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ff870   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff9fb1770e1
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 19  firefox.exe!NS_internal_main(int,char * *,char * *) [nsBrowserApp.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 287 + 0x93]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ffaa0   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff71e351876
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 20  firefox.exe!wmain [nsWindowsWMain.cpp:5c66354bff282452a6f1a3c911fa8756b6e752af : 143 + 0x15]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ffc60   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff71e35155d
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 21  firefox.exe!static int __scrt_common_main_seh() [exe_common.inl : 288 + 0x22]
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ffd20   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ff71e383218
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 22  kernel32.dll!BaseThreadInitThunk + 0x14
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ffd60   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ffa36cb2784
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 23  ntdll.dll!SortGetHashCode + 0xc1
12:11:02     INFO -     rbx = 0x000000007f527000   rbp = 0x000001d50ee0fe80
12:11:02     INFO -     rsp = 0x000000a1bb5ffd90   r12 = 0x0000000000000001
12:11:02     INFO -     r13 = 0x00007ffa04d0a6e0   r14 = 0x00007ffa06eb2d00
12:11:02     INFO -     r15 = 0x000000a1bb5fea78   rip = 0x00007ffa38f90c31
12:11:02     INFO -     Found by: call frame info
12:11:02     INFO - 24  KERNELBASE.dll + 0x67c0
12:11:02     INFO -     rbp = 0x000001d50ee0fe80   rsp = 0x000000a1bb5ffdc0
12:11:02     INFO -     rip = 0x00007ffa354c67c0
12:11:02     INFO -     Found by: stack scanning
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → INCOMPLETE
Status: REOPENED → RESOLVED
Closed: 5 years ago5 years ago
Resolution: --- → INCOMPLETE

Recent failures are on linux, windows, and macosx, and occur during dom/workers/test/test_bug949946.html. A significant increase in failures started around Aug 15. There were some changes to WorkerPrivate.cpp around that time, from bug 1231213.

:perry - Do you think your changes may have triggered this intermittent test failure?

Flags: needinfo?(perry)
See Also: → 1564700

It's very possible that my changes increased the failure rate. I'll take a look.

Assignee: nobody → perry
Flags: needinfo?(perry)
Priority: -- → P2

There are 21 failures in the last 7 days on windows7-32, macosx1014-64, linux64-qr, linux64 all debug:
https://treeherder.mozilla.org/intermittent-failures.html#/bugdetails?startday=2019-08-30&endday=2019-09-06&tree=trunk&bug=1510744

Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=265239507&repo=autoland&lineNumber=4742

Perry, are there any updates on this?

Flags: needinfo?(perry)

Sorry, I couldn't reproduce when I initially tried and I haven't had time recently to take a look again. It's still on the todo list though.

Flags: needinfo?(perry)

In the last 7 days there were 27 failures associated with this bug: https://treeherder.mozilla.org/intermittent-failures.html#/bugdetails?startday=2019-09-13&endday=2019-09-20&tree=all&bug=1510744
Recent failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=267610729&repo=autoland&lineNumber=7929
Occurs on linux64, linux64-qr, macosx1014-64, windows7-32 debug build type.

:perry, any update on this one?

Flags: needinfo?(perry)

There are 31 failures associated to this bug in the last 7 days. These are occurring on linux64, linux64-qr, macosx1014-64, windows7-32, debug builds

This bug failed 31 times in the last 7 days. Occurs on linux64, linux64-qr, macosx1014-64 and on windows7-32 on debug build types.

Recent log:
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=271255444&repo=mozilla-central&lineNumber=4253

Perry: Any updates on this bug?

Hi Dorel, unfortunately not yet. I haven't been able to get to this.

Flags: needinfo?(perry)

This bug failed 42 times in the last 7 days. Occurs on linux64, linux64-qr, macosx1014-64 and on windows7-32 on debug build type.

Recent log:
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=272935225&repo=mozilla-central&lineNumber=4436

jstutte: can you please take a look at this bug?

Flags: needinfo?(jstutte)
Flags: needinfo?(jstutte)
Regressions: 949946

This bug seems to violate a test explicitly made for bug 949946. The test looks like this:

new SharedWorker('sharedWorker_sharedWorker.js');
new SharedWorker('sharedWorker_sharedWorker.js', ':');
new SharedWorker('sharedWorker_sharedWorker.js', '|||');
ok(true, "3 SharedWorkers created!");

@asuth, any ideas, why this could happen intermittently ? Also the test might look weird without comments: I interpret ":" and "|||" to be just arbitrary names for the workers, I hope the special characters have no purpose here.

Flags: needinfo?(bugmail)

The choice of the ":" name was an arbitrary one made by a fuzzer. The choice of "|||" is because a compound name string is derived from the two arguments with "|" used as a delimiter and "|" gets normalized into "||" and edge-case coverage was desired. (This is for step 11.2 of https://html.spec.whatwg.org/multipage/workers.html#shared-workers-and-the-sharedworker-interface.) The test could indeed be improved by explaining why it exists and what it's testing.

It seems likely the general situation here is that:

  • The freshly created SharedWorker instances are not saved anywhere and do not add message listeners that could potentially keep them alive.
  • The workers are loading a real script at https://searchfox.org/mozilla-central/source/dom/workers/test/sharedWorker_sharedWorker.js that will process the connect event and add a message listener to the connected MessageChannel. (Although MessagePort doesn't do any DETH::KeepAliveIfHasListenersFor, it does an equivalent thing for being entangled.)
  • The real script and potential rapid GC plus the RemoteWorker mechanism potentially resulting in the events getting queued up in rapid succession means that we could run into a unique configuration of the various WorkerThreadModifyBusyCount edge-cases that attempt to adjust busycount in event of failed dispatch or cancellation.

I think the most pragmatic thing is to attempt to reproduce under rr.

Flags: needinfo?(bugmail)

Backtrace looks the same as bug 1564700 (WorkerPrivate::ModifyBusyCount).

Status: REOPENED → RESOLVED
Closed: 5 years ago5 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.