Closed Bug 627985 Opened 9 years ago Closed 9 years ago

ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH test_geolocation_provider.js test_service_sync_updateEnabledEngines.js test_service_sync_remoteSetup.js test_service_detect_upgrade.js test_service_login.js test_corrupt_keys.js test_service_passwordUTF8.js

Categories

(Core :: XPConnect, defect, critical)

x86
Windows 7
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla6

People

(Reporter: khuey, Assigned: dbaron)

References

Details

(Keywords: intermittent-failure, Whiteboard: [room for more test names in bug 647490])

http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1295655337.1295658925.9281.gz&fulltext=1#err0

###!!! ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table): 'RECURSION_LEVEL_SAFE_TO_FINISH(table)', file e:/builds/moz2_slave/cen-w32-dbg/build/obj-firefox/xpcom/build/pldhash.c, line 406
<<<<<<<
PROCESS-CRASH | c:\talos-slave\test\build\xpcshell\tests\dom\tests\unit\test_geolocation_provider.js | application crashed (minidump found)
Operating system: Windows NT
                  6.1.7600 
CPU: x86
     GenuineIntel family 6 model 23 stepping 10
     2 CPUs

Crash reason:  EXCEPTION_BREAKPOINT
Crash address: 0x72551352

Thread 0 (crashed)
 0  mozalloc.dll!mozalloc_abort(char const * const) [mozalloc_abort.cpp:d341b2ece4e4 : 77 + 0x0]
    eip = 0x72551352   esp = 0x0014f7ac   ebp = 0x0014f7ac   ebx = 0x7ffdd000
    esi = 0x00018000   edi = 0x00000000   eax = 0x00000000   ecx = 0xce968195
    edx = 0x70151d40   efl = 0x00000206
    Found by: given as instruction pointer in context
 1  xul.dll!Abort [nsDebugImpl.cpp:d341b2ece4e4 : 379 + 0x9]
    eip = 0x69a5dcdd   esp = 0x0014f7b4   ebp = 0x0014f7b8
    Found by: call frame info
 2  xul.dll!NS_DebugBreak_P [nsDebugImpl.cpp:d341b2ece4e4 : 366 + 0xb]
    eip = 0x69a5da07   esp = 0x0014f7c0   ebp = 0x0014fbd0
    Found by: call frame info
 3  xul.dll!PL_DHashTableFinish [pldhash.c:d341b2ece4e4 : 406 + 0x6c]
    eip = 0x68ab1af8   esp = 0x0014fbd8   ebp = 0x0014fc00
    Found by: call frame info
 4  xul.dll!nsTHashtable<nsBaseHashtableET<nsIDHashKey,xptiInterfaceEntry *> >::~nsTHashtable<nsBaseHashtableET<nsIDHashKey,xptiInterfaceEntry *> >() [nsTHashtable.h:d341b2ece4e4 : 318 + 0x8]
    eip = 0x69a6ff79   esp = 0x0014fc08   ebp = 0x0014fc10
    Found by: call frame info
 5  xul.dll!nsBaseHashtable<nsIDHashKey,xptiInterfaceEntry *,xptiInterfaceEntry *>::~nsBaseHashtable<nsIDHashKey,xptiInterfaceEntry *,xptiInterfaceEntry *>() + 0xe
    eip = 0x69a6fecf   esp = 0x0014fc18   ebp = 0x0014fc1c
    Found by: call frame info
 6  xul.dll!nsDataHashtable<nsIDHashKey,xptiInterfaceEntry *>::~nsDataHashtable<nsIDHashKey,xptiInterfaceEntry *>() + 0xe
    eip = 0x69a6fe8f   esp = 0x0014fc24   ebp = 0x0014fc28
    Found by: call frame info
 7  xul.dll!xptiWorkingSet::~xptiWorkingSet() [xptiWorkingSet.cpp:d341b2ece4e4 : 82 + 0x15]
    eip = 0x69a6fe73   esp = 0x0014fc30   ebp = 0x0014fc34
    Found by: call frame info
 8  xul.dll!xptiInterfaceInfoManager::~xptiInterfaceInfoManager() [xptiInterfaceInfoManager.cpp:d341b2ece4e4 : 105 + 0x15]
    eip = 0x69a6cc78   esp = 0x0014fc3c   ebp = 0x0014fc40
    Found by: call frame info
 9  xul.dll!xptiInterfaceInfoManager::`scalar deleting destructor'(unsigned int) + 0xe
    eip = 0x69a6c9ef   esp = 0x0014fc48   ebp = 0x0014fc4c
    Found by: call frame info
10  xul.dll!xptiInterfaceInfoManager::Release() [xptiInterfaceInfoManager.cpp:d341b2ece4e4 : 52 + 0x89]
    eip = 0x69a6c9ba   esp = 0x0014fc54   ebp = 0x0014fc68
    Found by: call frame info
11  xul.dll!xptiInterfaceInfoManager::FreeInterfaceInfoManager() [xptiInterfaceInfoManager.cpp:d341b2ece4e4 : 75 + 0x1b]
    eip = 0x69a6caef   esp = 0x0014fc70   ebp = 0x0014fc74
    Found by: call frame info
12  xul.dll!mozilla::ShutdownXPCOM(nsIServiceManager *) [nsXPComInit.cpp:d341b2ece4e4 : 735 + 0x4]
    eip = 0x68aca82b   esp = 0x0014fc7c   ebp = 0x0014fd00
    Found by: call frame info
13  xul.dll!NS_ShutdownXPCOM_P [nsXPComInit.cpp:d341b2ece4e4 : 594 + 0x8]
    eip = 0x68aca3ec   esp = 0x0014fd08   ebp = 0x0014fd0c
    Found by: call frame info
14  xpcom.dll!NS_ShutdownXPCOM [nsXPComStub.cpp:d341b2ece4e4 : 167 + 0x9]
    eip = 0x7292133d   esp = 0x0014fd14   ebp = 0x0014fd18
    Found by: call frame info
15  xpcshell.exe!main [xpcshell.cpp:d341b2ece4e4 : 2046 + 0x7]
    eip = 0x00ed4ebc   esp = 0x0014fd20   ebp = 0x0014fe48
    Found by: call frame info
16  xpcshell.exe!__tmainCRTStartup [crtexe.c : 597 + 0x18]
    eip = 0x00ee3376   esp = 0x0014fe50   ebp = 0x0014fe98
    Found by: call frame info
17  xpcshell.exe!mainCRTStartup [crtexe.c : 413 + 0x4]
    eip = 0x00ee31cd   esp = 0x0014fea0   ebp = 0x0014fea0   ebx = 0x0014f394
    Found by: call frame info
18  kernel32.dll + 0x51173
    eip = 0x75d71174   esp = 0x0014fea8   ebp = 0x0014feac
    Found by: call frame info
19  ntdll.dll + 0x5b3f4
    eip = 0x7755b3f5   esp = 0x0014feb4   ebp = 0x0014feec
    Found by: previous frame's frame pointer
20  ntdll.dll + 0x5b3c7
    eip = 0x7755b3c8   esp = 0x0014fef4   ebp = 0x0014ff04
    Found by: previous frame's frame pointer
Blocks: 438871
Component: Geolocation → XPConnect
QA Contact: geolocation → xpconnect
Could be related to bug 614480.
Depends on: 614480
Summary: Intermittent crash in test_geolocation_provider.js → Intermittent crash in test_geolocation_provider.js, test_service_sync_updateEnabledEngines.js, test_service_sync_remoteSetup.js | ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table)
Duplicate of this bug: 633246
http://tinderbox.mozilla.org/showlog.cgi?log=TraceMonkey/1297975332.1297977122.10151.gz&fulltext=1
Rev3 Fedora 12x64 tracemonkey debug test xpcshell on 2011/02/17 12:42:12
s: talos-r3-fed64-040

TEST-UNEXPECTED-FAIL | /home/cltbld/talos-slave/test/build/xpcshell/tests/services/sync/tests/unit/test_service_detect_upgrade.js | test failed (with xpcshell return code: 1), see following log:
PROCESS-CRASH | /home/cltbld/talos-slave/test/build/xpcshell/tests/services/sync/tests/unit/test_service_detect_upgrade.js | application crashed (minidump found)
Summary: Intermittent crash in test_geolocation_provider.js, test_service_sync_updateEnabledEngines.js, test_service_sync_remoteSetup.js | ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table) → Intermittent crash in test_geolocation_provider.js, test_service_sync_updateEnabledEngines.js, test_service_sync_remoteSetup.js, test_service_detect_upgrade.js | ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table)
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1298068809.1298070327.9389.gz&fulltext=1
Summary: Intermittent crash in test_geolocation_provider.js, test_service_sync_updateEnabledEngines.js, test_service_sync_remoteSetup.js, test_service_detect_upgrade.js | ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table) → Intermittent crash in test_geolocation_provider.js, test_service_sync_updateEnabledEngines.js, test_service_sync_remoteSetup.js, test_service_detect_upgrade.js, test_service_login.js | ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table)
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1299085838.1299087598.30558.gz
Rev3 Fedora 12x64 mozilla-central debug test xpcshell on 2011/03/02 09:10:38 
s: talos-r3-fed64-052
TEST-UNEXPECTED-FAIL | /home/cltbld/talos-slave/test/build/xpcshell/tests/services/sync/tests/unit/test_service_sync_checkServerError.js | test failed (with xpcshell return code: 1), see following log:
PROCESS-CRASH | /home/cltbld/talos-slave/test/build/xpcshell/tests/services/sync/tests/unit/test_service_sync_checkServerError.js | application crashed (minidump found)
Duplicate of this bug: 597606
Yes, the explanation in bug 614480 would explain this as well -- if we've raced to set the recursion level on different threads and gotten it messed up as a result.
Summary: Intermittent crash in test_geolocation_provider.js, test_service_sync_updateEnabledEngines.js, test_service_sync_remoteSetup.js, test_service_detect_upgrade.js, test_service_login.js | ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table) → test_corrupt_keys.js | ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table) Intermittent crash in test_geolocation_provider.js, test_service_sync_updateEnabledEngines.js, test_service_sync_remoteSetup.js, test_service_detect_upgrade.js, test_service_login.js
I put a patch in bug 614480 that I hope fixes this.
We just hit what looks like this same bug in test_service_passwordUTF8.js.  Unfortunately the bug summary is already at its limit, so I'm updating it to replace "test_service_login.js" with "test_service_*.js" to be more inclusive.

http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1301679731.1301682068.24877.gz
Rev3 WINNT 5.1 mozilla-central debug test xpcshell on 2011/04/01 10:42:11

s: talos-r3-xp-023
TEST-UNEXPECTED-FAIL | C:\talos-slave\test\build\xpcshell\tests\services\sync\tests\unit\test_service_passwordUTF8.js | test failed (with xpcshell return code: -2147483645), see following log:
PROCESS-CRASH | C:\talos-slave\test\build\xpcshell\tests\services\sync\tests\unit\test_service_passwordUTF8.js | application crashed (minidump found)
Thread 0 (crashed)
[...]
###!!! ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table): 'RECURSION_LEVEL_SAFE_TO_FINISH(table)', file e:/builds/moz2_slave/cen-w32-dbg/build/obj-firefox/xpcom/build/pldhash.c, line 406
Summary: Intermittent crash in test_geolocation_provider.js, test_service_sync_updateEnabledEngines.js, test_service_sync_remoteSetup.js, test_service_detect_upgrade.js, test_service_login.js test_corrupt_keys.js | ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table) → Intermittent crash in test_geolocation_provider.js, test_service_sync_updateEnabledEngines.js, test_service_sync_remoteSetup.js, test_service_detect_upgrade.js, test_service_*.js, test_corrupt_keys.js | ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table)
Summary: Intermittent crash in test_geolocation_provider.js, test_service_sync_updateEnabledEngines.js, test_service_sync_remoteSetup.js, test_service_detect_upgrade.js, test_service_*.js, test_corrupt_keys.js | ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH(table) → ASSERTION: RECURSION_LEVEL_SAFE_TO_FINISH test_geolocation_provider.js test_service_sync_updateEnabledEngines.js test_service_sync_remoteSetup.js test_service_detect_upgrade.js test_service_login.js test_corrupt_keys.js test_service_passwordUTF8.js
Blocks: 647490
Whiteboard: [orange] → [orange][room for more test names in bug 647490]
David, is this something that you might be interested in looking into?
Ehsan, see comment 35.
Whiteboard: [orange][room for more test names in bug 647490] → [orange][room for more test names in bug 647490][patch in bug 614480]
I landed the patch to bug 614480 on the cedar branch.
Assignee: nobody → dbaron
Whiteboard: [orange][room for more test names in bug 647490][patch in bug 614480] → [orange][room for more test names in bug 647490][patch in bug 614480][fixed-in-cedar]
http://hg.mozilla.org/mozilla-central/rev/0680c776e806
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Whiteboard: [orange][room for more test names in bug 647490][patch in bug 614480][fixed-in-cedar] → [orange][room for more test names in bug 647490]
Target Milestone: --- → mozilla6
Whiteboard: [orange][room for more test names in bug 647490] → [room for more test names in bug 647490]
You need to log in before you can comment on or make changes to this bug.