Open Bug 1549729 Opened 5 years ago Updated 2 years ago

Assertion failure: table.empty(), at /Users/florian/buildhg/mozilla/js/src/vm/JSScript.cpp:3353 when stopping the profiler

Categories

(Core :: Gecko Profiler, defect, P2)

defect

Tracking

()

People

(Reporter: florian, Unassigned)

References

(Blocks 1 open bug)

Details

In bug 1549723 I'm disabling the tests from bug 1540135 and bug 1547018 because they fail on debug builds.

One of the failures I'm encountering intermittently on debug builds is:
Assertion failure: table.empty(), at /Users/florian/buildhg/mozilla/js/src/vm/JSScript.cpp:3353

Before this shutdown assertion, there are lots of GC errors in the test log:

ERROR: GC found live Cell 0x2a93bf608040 of kind FUNCTION at shutdown
ERROR: GC found live Cell 0x2a93bf608080 of kind FUNCTION at shutdown
ERROR: GC found live Cell 0x2a93bf6080c0 of kind FUNCTION at shutdown
ERROR: GC found live Cell 0x2a93bf608100 of kind FUNCTION at shutdown
ERROR: GC found live Cell 0x2a93bf608140 of kind FUNCTION at shutdown
ERROR: GC found 1474 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf609060 of kind FUNCTION_EXTENDED at shutdown
ERROR: GC found live Cell 0x2a93bf6090b0 of kind FUNCTION_EXTENDED at shutdown
ERROR: GC found live Cell 0x2a93bf609100 of kind FUNCTION_EXTENDED at shutdown
ERROR: GC found live Cell 0x2a93bf609150 of kind FUNCTION_EXTENDED at shutdown
ERROR: GC found live Cell 0x2a93bf6091a0 of kind FUNCTION_EXTENDED at shutdown
ERROR: GC found 375 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf607040 of kind OBJECT0_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf607060 of kind OBJECT0_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf607080 of kind OBJECT0_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf6070a0 of kind OBJECT0_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf6070c0 of kind OBJECT0_BACKGROUND at shutdown
ERROR: GC found 332 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf648040 of kind OBJECT2 at shutdown
ERROR: GC found live Cell 0x2a93bf6481f0 of kind OBJECT2 at shutdown
ERROR: GC found live Cell 0x2a93bf648220 of kind OBJECT2 at shutdown
ERROR: GC found live Cell 0x2a93bf648250 of kind OBJECT2 at shutdown
ERROR: GC found live Cell 0x2a93bf648280 of kind OBJECT2 at shutdown
ERROR: GC found 9 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf605040 of kind OBJECT2_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf605070 of kind OBJECT2_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf6050a0 of kind OBJECT2_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf6050d0 of kind OBJECT2_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf605100 of kind OBJECT2_BACKGROUND at shutdown
ERROR: GC found 48 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf60d040 of kind OBJECT4 at shutdown
ERROR: GC found live Cell 0x2a93bf60d080 of kind OBJECT4 at shutdown
ERROR: GC found 2 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf68b040 of kind OBJECT4_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf68b080 of kind OBJECT4_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf68b0c0 of kind OBJECT4_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf68b100 of kind OBJECT4_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf68b140 of kind OBJECT4_BACKGROUND at shutdown
ERROR: GC found 214 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf65a040 of kind OBJECT8 at shutdown
ERROR: GC found live Cell 0x2a93bf65a100 of kind OBJECT8 at shutdown
ERROR: GC found live Cell 0x2a93bf65a160 of kind OBJECT8 at shutdown
ERROR: GC found live Cell 0x2a93bf65a1c0 of kind OBJECT8 at shutdown
ERROR: GC found live Cell 0x2a93bf65a220 of kind OBJECT8 at shutdown
ERROR: GC found 23 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf620040 of kind OBJECT8_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf620160 of kind OBJECT8_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf620340 of kind OBJECT8_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf6203a0 of kind OBJECT8_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf620400 of kind OBJECT8_BACKGROUND at shutdown
ERROR: GC found 62 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf653080 of kind OBJECT12 at shutdown
ERROR: GC found live Cell 0x2a93bf653100 of kind OBJECT12 at shutdown
ERROR: GC found live Cell 0x2a93bf653180 of kind OBJECT12 at shutdown
ERROR: GC found live Cell 0x2a93bf653200 of kind OBJECT12 at shutdown
ERROR: GC found live Cell 0x2a93bf653280 of kind OBJECT12 at shutdown
ERROR: GC found 68 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf65d200 of kind OBJECT12_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf65d300 of kind OBJECT12_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf65d380 of kind OBJECT12_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf65d500 of kind OBJECT12_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf65d580 of kind OBJECT12_BACKGROUND at shutdown
ERROR: GC found 12 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf604060 of kind OBJECT16 at shutdown
ERROR: GC found 1 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf621060 of kind OBJECT16_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf621100 of kind OBJECT16_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf6211a0 of kind OBJECT16_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf621240 of kind OBJECT16_BACKGROUND at shutdown
ERROR: GC found live Cell 0x2a93bf6212e0 of kind OBJECT16_BACKGROUND at shutdown
ERROR: GC found 43 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf670088 of kind SCRIPT at shutdown
ERROR: GC found live Cell 0x2a93bf670100 of kind SCRIPT at shutdown
ERROR: GC found live Cell 0x2a93bf670178 of kind SCRIPT at shutdown
ERROR: GC found live Cell 0x2a93bf6701f0 of kind SCRIPT at shutdown
ERROR: GC found live Cell 0x2a93bf670268 of kind SCRIPT at shutdown
ERROR: GC found 61 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf671040 of kind LAZY_SCRIPT at shutdown
ERROR: GC found live Cell 0x2a93bf671088 of kind LAZY_SCRIPT at shutdown
ERROR: GC found live Cell 0x2a93bf6710d0 of kind LAZY_SCRIPT at shutdown
ERROR: GC found live Cell 0x2a93bf671118 of kind LAZY_SCRIPT at shutdown
ERROR: GC found live Cell 0x2a93bf671160 of kind LAZY_SCRIPT at shutdown
ERROR: GC found 198 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf631038 of kind SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf631060 of kind SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf631088 of kind SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf6310b0 of kind SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf6310d8 of kind SHAPE at shutdown
ERROR: GC found 2871 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf624040 of kind ACCESSOR_SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf624078 of kind ACCESSOR_SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf6240b0 of kind ACCESSOR_SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf6240e8 of kind ACCESSOR_SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf624120 of kind ACCESSOR_SHAPE at shutdown
ERROR: GC found 523 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf625040 of kind BASE_SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf625060 of kind BASE_SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf625080 of kind BASE_SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf6250a0 of kind BASE_SHAPE at shutdown
ERROR: GC found live Cell 0x2a93bf6250c0 of kind BASE_SHAPE at shutdown
ERROR: GC found 375 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf66b040 of kind OBJECT_GROUP at shutdown
ERROR: GC found live Cell 0x2a93bf66b070 of kind OBJECT_GROUP at shutdown
ERROR: GC found live Cell 0x2a93bf66b0a0 of kind OBJECT_GROUP at shutdown
ERROR: GC found live Cell 0x2a93bf66b0d0 of kind OBJECT_GROUP at shutdown
ERROR: GC found live Cell 0x2a93bf66b100 of kind OBJECT_GROUP at shutdown
ERROR: GC found 359 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf65f028 of kind EXTERNAL_STRING at shutdown
ERROR: GC found live Cell 0x2a93bf65f040 of kind EXTERNAL_STRING at shutdown
ERROR: GC found live Cell 0x2a93bf65f058 of kind EXTERNAL_STRING at shutdown
ERROR: GC found live Cell 0x2a93bf65f088 of kind EXTERNAL_STRING at shutdown
ERROR: GC found live Cell 0x2a93bf65f0a0 of kind EXTERNAL_STRING at shutdown
ERROR: GC found 6 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf606040 of kind SCOPE at shutdown
ERROR: GC found live Cell 0x2a93bf606060 of kind SCOPE at shutdown
ERROR: GC found live Cell 0x2a93bf6060a0 of kind SCOPE at shutdown
ERROR: GC found live Cell 0x2a93bf6060c0 of kind SCOPE at shutdown
ERROR: GC found live Cell 0x2a93bf6060e0 of kind SCOPE at shutdown
ERROR: GC found 147 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf688040 of kind FAT_INLINE_STRING at shutdown
ERROR: GC found live Cell 0x2a93bf688060 of kind FAT_INLINE_STRING at shutdown
ERROR: GC found live Cell 0x2a93bf688080 of kind FAT_INLINE_STRING at shutdown
ERROR: GC found live Cell 0x2a93bf6880a0 of kind FAT_INLINE_STRING at shutdown
ERROR: GC found 4 live Cells at shutdown
ERROR: GC found live Cell 0x2a93bf687040 of kind STRING at shutdown
ERROR: GC found live Cell 0x2a93bf687058 of kind STRING at shutdown
ERROR: GC found live Cell 0x2a93bf687070 of kind STRING at shutdown
ERROR: GC found live Cell 0x2a93bf687088 of kind STRING at shutdown
ERROR: GC found live Cell 0x2a93bf6870a0 of kind STRING at shutdown
ERROR: GC found 50 live Cells at shutdown
ERROR: GC found live SharedScriptData 0x13fbd5430 with ref count 2 at shutdown
ERROR: GC found live SharedScriptData 0x13fbd83a0 with ref count 2 at shutdown
ERROR: GC found live SharedScriptData 0x13f905800 with ref count 2 at shutdown
ERROR: GC found live SharedScriptData 0x1406603c0 with ref count 2 at shutdown
ERROR: GC found live SharedScriptData 0x13fbd7670 with ref count 7 at shutdown
ERROR: GC found 41 live SharedScriptData at shutdown

I've noticed that this assertion and these errors aren't present if I comment out the Services.profiler.StopProfiler(); line in startupRecorder.js

https://treeherder.mozilla.org/#/jobs?repo=try&resultStatus=testfailed&revision=3559475ad1656e9e74fcd8878cd51dc2b2584d45 shows these failures on try. They are on debug builds on all platforms. They are intermittent, but can be reproduced consistently in the TV jobs. When I tried locally on Mac I could reproduce all the time.

I wonder if the asan leakcheck failure in https://taskcluster-artifacts.net/PbwfUoWtS4Sc7tOkR7gs-Q/0/public/logs/live_backing.log could have the same root cause.

Jon, I'm told you may be able to help with these errors.
Any initial ideas?
How could we get more information about these errors, and find what caused them?
TIA

Flags: needinfo?(jcoppeard)

This is a browser leak that is keeping GC things alive past shutdown.

(In reply to Florian Quèze [:florian] from comment #1)

I wonder if the asan leakcheck failure ... could have the same root cause.

Yes, that's likely to be the root cause.

Flags: needinfo?(jcoppeard)

There's some information here about dumping the cycle collector graph which should show what's holding these things live:

https://developer.mozilla.org/en-US/docs/Mozilla/Performance/GC_and_CC_logs

Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.