Closed Bug 1000190 Opened 11 years ago Closed 11 years ago

Permanent orange: test_dod.js,test_partsOnDemand.js | application crashed [@ nsStringBundleService::AddRef()] due to nsStringBundleService not thread-safe

Categories

(MailNews Core :: Networking: IMAP, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
Thunderbird 31.0

People

(Reporter: standard8, Assigned: jcranmer)

References

Details

(Keywords: intermittent-failure, regression)

Attachments

(1 file)

Bug 984125 changed the string bundle service to be marked as non-threadsafe (it apparently wasn't threadsafe before). We're now crashing on two tests: Hit MOZ_CRASH(nsStringBundleService not thread-safe) at /builds/slave/tb-c-cen-osx64-d-0000000000000/build/mozilla/intl/strres/src/nsStringBundle.cpp:501 <<<<<<< PROCESS-CRASH | /builds/slave/talos-slave/test/build/xpcshell/tests/mailnews/imap/test/unit/test_dod.js | application crashed [@ nsStringBundleService::AddRef()] Thread 22 (crashed) 0 XUL!nsStringBundleService::AddRef() [nsStringBundle.cpp:b8b7b62bc9e9 : 498 + 0x0] rbx = 0x00007fff7e8fbc68 r12 = 0x0000000000000000 r13 = 0x0000000000000078 r14 = 0x0000000106126520 r15 = 0x000000010622c890 rip = 0x00000001001065f6 rsp = 0x000000010ce80340 rbp = 0x000000010ce80350 Found by: given as instruction pointer in context 1 XUL!mozilla::services::GetStringBundleService() [nsAutoPtr.h:b8b7b62bc9e9 : 918 + 0x8] rbx = 0x0000000106126520 r12 = 0x0000000000000000 r13 = 0x0000000000000078 r14 = 0x000000010ce803b0 r15 = 0x000000010622c890 rip = 0x000000010002d719 rsp = 0x000000010ce80360 rbp = 0x000000010ce80390 Found by: call frame info 2 XUL!IMAPGetStringBundle [nsImapStringBundle.cpp:f169a340dd89 : 35 + 0x4] rbx = 0x000000010622c890 r12 = 0x0000000000000000 r13 = 0x0000000000000078 r14 = 0x000000010ce804f8 r15 = 0x000000010622c890 rip = 0x0000000102775147 rsp = 0x000000010ce803a0 rbp = 0x000000010ce803d0 Found by: call frame info 3 XUL!nsIMAPBodypart::GenerateEmptyFilling(nsIMAPBodyShell*, bool, bool) [nsIMAPBodyShell.cpp:f169a340dd89 : 514 + 0x4] rbx = 0x000000010622c890 r12 = 0x0000000000000000 r13 = 0x0000000000000078 r14 = 0x0000000000000000 r15 = 0x000000010622c890 rip = 0x00000001026d2d1b rsp = 0x000000010ce803e0 rbp = 0x000000010ce80530 Found by: call frame info Hit MOZ_CRASH(nsStringBundleService not thread-safe) at /builds/slave/tb-c-cen-osx64-d-0000000000000/build/mozilla/intl/strres/src/nsStringBundle.cpp:501 <<<<<<< PROCESS-CRASH | /builds/slave/talos-slave/test/build/xpcshell/tests/mailnews/imap/test/unit/test_partsOnDemand.js | application crashed [@ nsStringBundleService::AddRef()] Thread 21 (crashed) 0 XUL!nsStringBundleService::AddRef() [nsStringBundle.cpp:b8b7b62bc9e9 : 498 + 0x0] rbx = 0x00007fff7e8fbc68 r12 = 0x0000000000000000 r13 = 0x000000000000004e r14 = 0x0000000105580050 r15 = 0x000000010ec01a00 rip = 0x00000001001065f6 rsp = 0x000000010caa53e0 rbp = 0x000000010caa53f0 Found by: given as instruction pointer in context 1 XUL!mozilla::services::GetStringBundleService() [nsAutoPtr.h:b8b7b62bc9e9 : 918 + 0x8] rbx = 0x0000000105580050 r12 = 0x0000000000000000 r13 = 0x000000000000004e r14 = 0x000000010caa5450 r15 = 0x000000010ec01a00 rip = 0x000000010002d719 rsp = 0x000000010caa5400 rbp = 0x000000010caa5430 Found by: call frame info 2 XUL!IMAPGetStringBundle [nsImapStringBundle.cpp:f169a340dd89 : 35 + 0x4] rbx = 0x000000010ec01a00 r12 = 0x0000000000000000 r13 = 0x000000000000004e r14 = 0x000000010caa5598 r15 = 0x000000010ec01a00 rip = 0x0000000102775147 rsp = 0x000000010caa5440 rbp = 0x000000010caa5470 Found by: call frame info 3 XUL!nsIMAPBodypart::GenerateEmptyFilling(nsIMAPBodyShell*, bool, bool) [nsIMAPBodyShell.cpp:f169a340dd89 : 514 + 0x4] rbx = 0x000000010ec01a00 r12 = 0x0000000000000000 r13 = 0x000000000000004e r14 = 0x0000000000000000 r15 = 0x000000010ec01a00 rip = 0x00000001026d2d1b rsp = 0x000000010caa5480 rbp = 0x000000010caa55d0 Found by: call frame info
Summary: Permanent orange: TEST-UNEXPECTED-FAIL | test_dod.js | test_partsOnDemand.js | Application crashed due to nsStringBundleService not thread-safe → Permanent orange: test_dod.js,test_partsOnDemand.js | application crashed [@ nsStringBundleService::AddRef()] due to nsStringBundleService not thread-safe
FWIW the string bundle service just pretended to be thread-safe.
Yep, we saw that. We're looking at caching the string and passing it to the thread.
Assignee: nobody → Pidgeot18
Status: NEW → ASSIGNED
Attachment #8413309 - Flags: review?(standard8)
Comment on attachment 8413309 [details] [diff] [review] Run string bundle service on main thread Review of attachment 8413309 [details] [diff] [review]: ----------------------------------------------------------------- Looks good r=Standard8
Attachment #8413309 - Flags: review?(standard8) → review+
I've just pushed this to help clear up the tree before the merge: https://hg.mozilla.org/comm-central/rev/c8a51e3fbe7e
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 31.0
Depends on: 1002443
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: