Closed
Bug 673017
Opened 13 years ago
Closed 12 years ago
Intermittent segfault while running test_IHistory.cpp on Linux, or bus error on OS X [***NOT: Expected true, got false***][*** [check] Error 139]
Categories
(Toolkit :: Places, defect)
Toolkit
Places
Tracking
()
RESOLVED
WORKSFORME
mozilla11
People
(Reporter: cmtalbert, Assigned: espindola)
References
Details
(Keywords: intermittent-failure)
Attachments
(3 files, 12 obsolete files)
(deleted),
patch
|
Details | Diff | Splinter Review | |
(deleted),
patch
|
mak
:
review+
espindola
:
checkin+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
dietrich
:
review+
|
Details | Diff | Splinter Review |
There is an intermittent segfault occurring when running the make check test test_nsIHistory.cpp on linux desktop mobile builds. It has happened so far on both a QT (Bq) and standard (Bm) build.
Re-running the Bm build on the same changeset caused it to go green, proving this is intermittent. I re-ran the build here: https://build.mozilla.org/buildapi/self-serve/mozilla-central/build/4656276
First known case of this (as far as I can tell) is changeset http://hg.mozilla.org/mozilla-central/rev/a80aa88ded45 today. The one I noticed it on and re-ran the build for was changeset: http://hg.mozilla.org/mozilla-central/rev/5c7a49dfa7f7
= Errors =
Changeset: a80aa88ded45
s: moz2-linux-slave16
Linux QT mozilla-central build on 2011/07/20 12:44:02
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_two_null_links_same_uri.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | 246 of 246 tests passed
/bin/sh: line 1: 18859 Segmentation fault XPCOM_DEBUG_BREAK=stack-and-abort ../../../../../dist/bin/run-mozilla.sh ../../../../../dist/bin/$f
NEXT ERROR make[5]: *** [check] Error 139
make[5]: Leaving directory `/builds/slave/m-cen-linuxqt/build/obj-firefox/toolkit/components/places/tests/cpp'
NEXT ERROR make[4]: *** [check] Error 2
make[4]: Leaving directory `/builds/slave/m-cen-linuxqt/build/obj-firefox/toolkit/components/places/tests'
NEXT ERROR make[3]: *** [check] Error 2
make[3]: Leaving directory `/builds/slave/m-cen-linuxqt/build/obj-firefox/toolkit/components/places'
make[2]: *** [check] Error 2
make[2]: Leaving directory `/builds/slave/m-cen-linuxqt/build/obj-firefox/toolkit/components'
make[1]: *** [check] Error 2
make[1]: Leaving directory `/builds/slave/m-cen-linuxqt/build/obj-firefox/toolkit'
make: *** [check] Error 2
program finished with exit code 2
Changeset: 5c7a49dfa7f7
s: moz2-linux-slave21
Linux Mobile Desktop mozilla-central build on 2011/07/20 13:37:57
TEST-INFO | (/builds/slave/m-cen-lnx-mb/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_two_null_links_same_uri.
TEST-INFO | (/builds/slave/m-cen-lnx-mb/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | 240 of 240 tests passed
/bin/sh: line 1: 15022 Segmentation fault XPCOM_DEBUG_BREAK=stack-and-abort ../../../../../dist/bin/run-mozilla.sh ../../../../../dist/bin/$f
NEXT ERROR make[5]: *** [check] Error 139
make[5]: Leaving directory `/builds/slave/m-cen-lnx-mb/build/obj-firefox/toolkit/components/places/tests/cpp'
NEXT ERROR make[4]: *** [check] Error 2
make[4]: Leaving directory `/builds/slave/m-cen-lnx-mb/build/obj-firefox/toolkit/components/places/tests'
NEXT ERROR make[3]: *** [check] Error 2
make[3]: Leaving directory `/builds/slave/m-cen-lnx-mb/build/obj-firefox/toolkit/components/places'
make[2]: *** [check] Error 2
make[2]: Leaving directory `/builds/slave/m-cen-lnx-mb/build/obj-firefox/toolkit/components'
make[1]: *** [check] Error 2
make[1]: Leaving directory `/builds/slave/m-cen-lnx-mb/build/obj-firefox/toolkit'
make: *** [check] Error 2
program finished with exit code 2
Comment 1•13 years ago
|
||
This looks like the same failure:
http://tinderbox.mozilla.org/showlog.cgi?log=Build-System/1311268102.1311273340.12134.gz#err0
It's on a regular desktop Firefox Linux64 build.
Linux x86-64 build-system build on 2011/07/21 10:08:22
Comment 2•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1311283026.1311287431.14880.gz
Linux mozilla-central build on 2011/07/21 14:17:06
make[5]: Entering directory `/builds/slave/m-cen-lnx/build/obj-firefox/toolkit/components/places/tests/cpp'
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Disabling Idle Service.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_set_places_enabled.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_unvisted_does_not_notify_part1.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visited_notifies.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_unvisted_does_not_notify_part2.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_same_uri_notifies_both.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_unregistered_visited_does_not_notify.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_new_visit_notifies_waiting_Link.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_RegisterVisitedCallback_returns_before_notifying.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_observer_topic_dispatched.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_inserts.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_updates.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_preserves_shown_and_typed.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_creates_visit.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_transition_typed.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_transition_embed.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_new_visit_adds_place_guid.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_two_null_links_same_uri.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | 240 of 240 tests passed
/bin/sh: line 1: 31114 Segmentation fault XPCOM_DEBUG_BREAK=stack-and-abort ../../../../../dist/bin/run-mozilla.sh ../../../../../dist/bin/$f
NEXT ERROR make[5]: *** [check] Error 139
make[5]: Leaving directory `/builds/slave/m-cen-lnx/build/obj-firefox/toolkit/components/places/tests/cpp'
NEXT ERROR make[4]: *** [check] Error 2
make[4]: Leaving directory `/builds/slave/m-cen-lnx/build/obj-firefox/toolkit/components/places/tests'
make[3]: *** [check] Error 2
make[3]: Leaving directory `/builds/slave/m-cen-lnx/build/obj-firefox/toolkit/components/places'
make[2]: Leaving directory `/builds/slave/m-cen-lnx/build/obj-firefox/toolkit/components'
make[2]: *** [check] Error 2
make[1]: *** [check] Error 2make[1]: Leaving directory `/builds/slave/m-cen-lnx/build/obj-firefox/toolkit'
make: *** [check] Error 2
program finished with exit code 2
elapsedTime=212.060998
Summary: Intermittent segfault while running test_nsIHistory.cpp on desktop mobile builds → Intermittent segfault while running test_nsIHistory.cpp on Linux
Comment 3•13 years ago
|
||
Comment 4•13 years ago
|
||
Comment 5•13 years ago
|
||
probably the same as bug 672493, or better, probably same glib bug.
we'll see when that patch lands.
Comment 6•13 years ago
|
||
Comment 7•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1311343144.1311360135.18974.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1311336986.1311345717.13943.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1311351756.1311362388.29372.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1311354122.1311367218.20093.gz
Comment 8•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1311415708.1311430306.5693.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1311423938.1311435491.31819.gz
Summary: Intermittent segfault while running test_nsIHistory.cpp on Linux → Intermittent segfault while running test_IHistory.cpp on Linux
Comment 9•13 years ago
|
||
(In reply to comment #5)
> probably the same as bug 672493, or better, probably same glib bug.
> we'll see when that patch lands.
For what its worth, SeaMonkey Linux64 Opt has been frequently hitting this, and that bug looks like its only protecting against a debug case at a quick glance.
Comment 10•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1311598589.1311601400.15247.gz
can you reproduce locally?
Comment 11•13 years ago
|
||
Comment 12•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Beta/1311667862.1311680970.17987.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Beta/1311645181.1311654363.1824.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Beta/1311635366.1311642368.11819.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Aurora/1311635382.1311640192.1759.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1311681843.1311689494.4181.gz
Comment 13•13 years ago
|
||
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 15•13 years ago
|
||
ignore comment 14 please, wrong bug.
Comment 16•13 years ago
|
||
Comment 17•13 years ago
|
||
Comment 18•13 years ago
|
||
Comment 19•13 years ago
|
||
Comment 20•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Beta/1311894183.1311907306.27883.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Beta/1311889208.1311899447.20910.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Beta/1311892922.1311896036.4192.gz
...and some others; I haven't bothered pasting every single one here.
Comment 21•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1311963497.1311975230.22235.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1311973543.1311988688.13468.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1311967982.1311977920.1956.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1311967982.1311978491.4551.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1311985531.1311988424.11969.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1311982082.1311991864.26084.gz
Comment 22•13 years ago
|
||
Comment 23•13 years ago
|
||
Comment 24•13 years ago
|
||
Comment 25•13 years ago
|
||
Comment 26•13 years ago
|
||
Comment 27•13 years ago
|
||
Comment 28•13 years ago
|
||
Comment 29•13 years ago
|
||
Comment 30•13 years ago
|
||
Comment 31•13 years ago
|
||
Comment 32•13 years ago
|
||
Comment 33•13 years ago
|
||
Comment 34•13 years ago
|
||
Comment 35•13 years ago
|
||
Comment 36•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1312450742.1312463476.7323.gz
tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1312452008.1312465643.19461.gz
tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1312429808.1312437099.15888.gz
Comment 37•13 years ago
|
||
Comment 38•13 years ago
|
||
Comment 39•13 years ago
|
||
Comment 40•13 years ago
|
||
Comment 41•13 years ago
|
||
Comment 42•13 years ago
|
||
Comment 43•13 years ago
|
||
Comment 44•13 years ago
|
||
Comment 45•13 years ago
|
||
Comment 46•13 years ago
|
||
Comment 47•13 years ago
|
||
Comment 48•13 years ago
|
||
Comment 49•13 years ago
|
||
Comment 50•13 years ago
|
||
Comment 51•13 years ago
|
||
Comment 52•13 years ago
|
||
Comment 53•13 years ago
|
||
Comment 54•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1312851288.1312855146.17745.gz&fulltext=1
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1312844897.1312849608.23228.gz&fulltext=1
http://tinderbox.mozilla.org/showlog.cgi?log=Thunderbird-Aurora/1312841129.1312848511.18186.gz&fulltext=1
Comment 55•13 years ago
|
||
Comment 56•13 years ago
|
||
Comment 57•13 years ago
|
||
Comment 58•13 years ago
|
||
Comment 59•13 years ago
|
||
Comment 60•13 years ago
|
||
Comment 61•13 years ago
|
||
Comment 62•13 years ago
|
||
Comment 63•13 years ago
|
||
Comment 64•13 years ago
|
||
Comment 65•13 years ago
|
||
Comment 66•13 years ago
|
||
Comment 67•13 years ago
|
||
Comment 68•13 years ago
|
||
Comment 69•13 years ago
|
||
Comment 70•13 years ago
|
||
Comment 71•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=Ionmonkey/1313022062.1313027057.19931.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Ionmonkey/1313022062.1313032713.13524.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Ionmonkey/1313022062.1313031313.7348.gz
http://tinderbox.mozilla.org/showlog.cgi?log=Ionmonkey/1313015882.1313029569.31908.gz
Comment 72•13 years ago
|
||
Comment 73•13 years ago
|
||
Comment 74•13 years ago
|
||
Comment 75•13 years ago
|
||
tinderbox.mozilla.org/showlog.cgi?log=Mozilla-Inbound/1313094896.1313097201.29198.gz
Comment 76•13 years ago
|
||
Comment 77•13 years ago
|
||
Comment 78•13 years ago
|
||
This one's different! It's a bus error!
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1313157524.1313168265.2882.gz
OS X 10.6.2 mozilla-central build on 2011/08/12 06:58:44
make[5]: Nothing to be done for `check'.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Disabling Idle Service.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_set_places_enabled.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_unvisted_does_not_notify_part1.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visited_notifies.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_unvisted_does_not_notify_part2.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_same_uri_notifies_both.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_unregistered_visited_does_not_notify.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_new_visit_notifies_waiting_Link.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_RegisterVisitedCallback_returns_before_notifying.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_observer_topic_dispatched.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_inserts.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_updates.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_preserves_shown_and_typed.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_creates_visit.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_transition_typed.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visituri_transition_embed.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_new_visit_adds_place_guid.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_two_null_links_same_uri.
TEST-INFO | (/builds/slave/m-cen-osx64/build/toolkit/components/places/tests/cpp/test_IHistory.cpp) | 246 of 246 tests passed
/bin/sh: line 1: 79922 Bus error XPCOM_DEBUG_BREAK=stack-and-abort ../../../../../dist/bin/run-mozilla.sh ../../../../../dist/bin/$f
make[5]: *** [check] Error 138
make[4]: *** [check] Error 2
make[3]: *** [check] Error 2
make[2]: *** [check] Error 2
make[1]: *** [check] Error 2
make: *** [check] Error 2
program finished with exit code 2
elapsedTime=946.137366
TinderboxPrint: check<br/>10574/0
Unknown Error: command finished with exit code: 2
=== Output ended ===
OS: Linux → All
Summary: Intermittent segfault while running test_IHistory.cpp on Linux → Intermittent segfault while running test_IHistory.cpp on Linux, or bus error on OS X
Comment 79•13 years ago
|
||
Comment 80•13 years ago
|
||
Comment 81•13 years ago
|
||
Comment 82•13 years ago
|
||
Comment 83•13 years ago
|
||
Comment 84•13 years ago
|
||
Comment 85•13 years ago
|
||
Comment 86•13 years ago
|
||
Comment 87•13 years ago
|
||
Comment 88•13 years ago
|
||
Comment 89•13 years ago
|
||
Comment 90•13 years ago
|
||
Comment 91•13 years ago
|
||
Comment 92•13 years ago
|
||
Comment 93•13 years ago
|
||
Comment 94•13 years ago
|
||
Comment 95•13 years ago
|
||
Comment 96•13 years ago
|
||
Comment 97•13 years ago
|
||
Comment 98•13 years ago
|
||
Comment 99•13 years ago
|
||
Comment 100•13 years ago
|
||
Comment 101•13 years ago
|
||
Comment 102•13 years ago
|
||
Comment 103•13 years ago
|
||
Comment 104•13 years ago
|
||
Comment 105•13 years ago
|
||
Comment 106•13 years ago
|
||
Comment 107•13 years ago
|
||
Comment 108•13 years ago
|
||
Comment 109•13 years ago
|
||
Comment 110•13 years ago
|
||
Comment 111•13 years ago
|
||
Comment 112•13 years ago
|
||
Comment 113•13 years ago
|
||
Comment 114•13 years ago
|
||
Comment 115•13 years ago
|
||
Comment 116•13 years ago
|
||
Comment 117•13 years ago
|
||
Comment 118•13 years ago
|
||
Comment 119•13 years ago
|
||
Comment 120•13 years ago
|
||
Comment 121•13 years ago
|
||
Comment 122•13 years ago
|
||
Comment 123•13 years ago
|
||
Comment 124•13 years ago
|
||
Comment 125•13 years ago
|
||
Comment 126•13 years ago
|
||
Comment 127•13 years ago
|
||
Comment 128•13 years ago
|
||
Comment 129•13 years ago
|
||
Comment 130•13 years ago
|
||
Comment 131•13 years ago
|
||
Comment 132•13 years ago
|
||
Comment 133•13 years ago
|
||
Comment 134•13 years ago
|
||
Comment 135•13 years ago
|
||
Comment 136•13 years ago
|
||
Comment 137•13 years ago
|
||
Comment 138•13 years ago
|
||
Comment 139•13 years ago
|
||
Comment 140•13 years ago
|
||
Comment 141•13 years ago
|
||
Comment 142•13 years ago
|
||
Comment 143•13 years ago
|
||
Comment 144•13 years ago
|
||
Comment 145•13 years ago
|
||
Comment 146•13 years ago
|
||
Comment 147•13 years ago
|
||
Assignee | ||
Comment 149•13 years ago
|
||
I am trying to run the test under valgrind to see if there is some non deterministic behavior in it.
Comment 150•13 years ago
|
||
Assignee | ||
Comment 151•13 years ago
|
||
This patch fixes the problems valgrind was finding.
Given the comment just after the memset I am inserting, it looks like the problem is xpc_UnmarkGrayObject being called before the first gc cycle.
I will try to debug this a bit more, but have just been preempted by another bug.
Comment 152•13 years ago
|
||
Comment 153•13 years ago
|
||
Comment 154•13 years ago
|
||
Comment 155•13 years ago
|
||
Comment 156•13 years ago
|
||
Assignee | ||
Comment 157•13 years ago
|
||
Comment on attachment 555813 [details] [diff] [review]
demo patch
This makes the program "valgrind clean", but it is probably not the fix we want. Do you think it is a good idea to check it in for a day or so to see if there is some other problem that is not seem by valgrind?
Attachment #555813 -
Flags: review?(ehsan)
Comment 158•13 years ago
|
||
Comment 159•13 years ago
|
||
Comment 160•13 years ago
|
||
Assignee | ||
Comment 161•13 years ago
|
||
I was unable to reproduce the problem on my desktop today. Will try it on one of the reference machines.
Updated•13 years ago
|
Attachment #555813 -
Flags: review?(ehsan) → review?(jorendorff)
Assignee | ||
Comment 162•13 years ago
|
||
The interesting bits from valgrind:
==12911== Conditional jump or move depends on uninitialised value(s)
==12911== at 0x5FDAADF: xpc_UnmarkGrayObject(JSObject*) (xpcpublic.h:177)
==12911== by 0x63CE437: _ZL12FinishCreateR14XPCCallContextP21XPCWrappedNativeScopeP18XPCNativeInterfaceP14nsWrapperCacheP16XPCWrappedNativePS8_.clone.173 (xpcprivate.h:2469)
==12911== by 0x63D0FC2: XPCWrappedNative::GetNewOrUsed(XPCCallContext&, xpcObjectHelper&, XPCWrappedNativeScope*, XPCNativeInterface*, int, XPCWrappedNative**) (xpcwrappednative.cpp:610)
==12911== by 0x63B85B0: nsXPCComponents::AttachNewComponentsObject(XPCCallContext&, XPCWrappedNativeScope*, JSObject*) (xpccomponents.cpp:4370)
==12911== by 0x63AB3E6: nsXPConnect::InitClasses(JSContext*, JSObject*) (nsXPConnect.cpp:1014)
==12911== by 0x63C7A26: XPCJSContextStack::GetSafeJSContext(JSContext**) (xpcthreadcontext.cpp:290)
==12911== by 0x623CA4D: nsScriptSecurityManager::GetSafeJSContext() (nsScriptSecurityManager.cpp:326)
....
==12911== Uninitialised value was created by a heap allocation
==12911== at 0x4A05016: memalign (vg_replace_malloc.c:532)
==12911== by 0x4A0506F: posix_memalign (vg_replace_malloc.c:660)
==12911== by 0x63C49B9: XPConnectGCChunkAllocator::doAlloc() (xpcjsruntime.cpp:1469)
==12911== by 0x6945024: void* js::gc::RefillTypedFreeList<JSObject>(JSContext*, unsigned int) (jsgcchunk.h:63)
==12911== by 0x6A419AB: js::GlobalObject::create(JSContext*, js::Class*) (jsgcinlines.h:219)
==12911== by 0x68D35EB: JS_NewCompartmentAndGlobalObject (jsapi.cpp:3044)
==12911== by 0x63AD3BE: CreateNewCompartment(JSContext*, JSClass*, nsIPrincipal*, xpc::CompartmentPrivate*, JSObject**, JSCompartment**) (nsXPConnect.cpp:1052)
==12911== by 0x63AE0C2: xpc_CreateMTGlobalObject(JSContext*, JSClass*, nsISupports*, JSObject**, JSCompartment**) (nsXPConnect.cpp:1122)
==12911== by 0x63C79B0: XPCJSContextStack::GetSafeJSContext(JSContext**) (xpcthreadcontext.cpp:264)
==12911== by 0x623CA4D: nsScriptSecurityManager::GetSafeJSContext() (nsScriptSecurityManager.cpp:326)
Assignee | ||
Comment 163•13 years ago
|
||
I think this is actually the correct fix.
If the bit is marked gray in the uninitiated memory, a call to xpc_UnmarkGrayObject will call xpc_UnmarkGrayObjectRecursive. I am not familiar with this part of the code, but even if the objects themselves are initialized and calling xpc_UnmarkGrayObjectRecursive is safe, it is probably more expensive than clearing the bitmap early.
Attachment #555813 -
Attachment is obsolete: true
Attachment #556095 -
Flags: review?(jorendorff)
Attachment #555813 -
Flags: review?(jorendorff)
Updated•13 years ago
|
Attachment #556095 -
Flags: review?(jorendorff) → review?(wmccloskey)
Comment on attachment 556095 [details] [diff] [review]
updated patch
Thanks, Rafael! This is a really scary bug. I'd like to fix it the other way though.
Attachment #556095 -
Flags: review?(wmccloskey)
This returns early from UnmarkGray if we haven't done the first GC yet.
Attachment #556134 -
Flags: review?(continuation)
Comment on attachment 556134 [details] [diff] [review]
alternate fix
Actually, I realize this won't fix the valgrind warning. It's still going to see those bits as undefined.
Maybe the other patch would be better. I'll try to measure the cost of zeroing out the mark bits while running V8, which allocates a lot of new chunks.
Attachment #556134 -
Flags: review?(continuation)
Comment 167•13 years ago
|
||
Yeah, I was just going to say that. We probably don't want to do any fancy tests in GetWrapper() either.
You don't need to do the zeroing after the GC has run once, so maybe you could guard the bitmap clearing with a check that the GC has run? I don't know the perf implications of any of it.
Can we zero out the mark bits for an object when it is put into a wrapper cache? If that only happens once per wrapper cache maybe it isn't so terrible? I'm not quite sure of their lifetime...
Comment 168•13 years ago
|
||
Comment 169•13 years ago
|
||
Comment on attachment 556095 [details] [diff] [review]
updated patch
Review of attachment 556095 [details] [diff] [review]:
-----------------------------------------------------------------
I have a few drive-by nits on the comments. Also, the comments should probably be // to match the rest of the file.
Good work, though! Pretty scary that this has been like this. I wonder how many random crashes this will fix...
::: js/src/jsgc.cpp
@@ +339,5 @@
> for (size_t i = 0; i != JS_ARRAY_LENGTH(markingDelay); ++i)
> markingDelay[i].init();
>
> + /* We clear the bitmap to guard againt xpc_UnmarkGrayObject being
> + called before the first gc cycle. */
The clearing is guarding against xpc_IsGrayGCThing being called on uninitialized data, not to keep xpc_UnmarkGrayObject from being called.
minor typo: against, not againt
capitalize "GC".
@@ +342,5 @@
> + /* We clear the bitmap to guard againt xpc_UnmarkGrayObject being
> + called before the first gc cycle. */
> + bitmap.clear();
> +
> + /* The rest of info fields is initailzied in PickChunk. */
is initailzied -> are initialized
Comment 170•13 years ago
|
||
Oops, sorry, I was confused about what file this is in. I think the two line comment should be formatted more like this:
/*
* foo...
* bar...
*/
The format of the single line one is okay.
Attachment #556134 -
Attachment is obsolete: true
Comment on attachment 556095 [details] [diff] [review]
updated patch
This doesn't seem to cause any V8 regressions.
I talked to Andrew about this. He realized that we have to worry about new chunks even after the first GC, since their mark bits will also be in an undefined state. So the patch I submitted wouldn't work at all. Given the difficulty of reasoning about this problem, I think this patch is the right way to go. r+ with Andrew's changes.
Attachment #556095 -
Flags: review+
Comment 172•13 years ago
|
||
Comment 173•13 years ago
|
||
Assignee: nobody → respindola
Component: Places → JavaScript Engine
Product: Toolkit → Core
QA Contact: places → general
Version: unspecified → Trunk
Comment 174•13 years ago
|
||
Comment 175•13 years ago
|
||
Comment 176•13 years ago
|
||
Comment 177•13 years ago
|
||
Comment 178•13 years ago
|
||
Comment 179•13 years ago
|
||
With this patch in place, we might be able to tear out some of the checking-for-GC-before-CC stuff. Though now that we use the GC to recover from UnmarkGrey overflow there's probably less that can be actually removed.
Assignee | ||
Comment 180•13 years ago
|
||
Comment 181•13 years ago
|
||
http://tbpl.allizom.org/php/getParsedLog.php?id=6179378 (four pushes later on inbound, so apparently that wasn't actually it)
Comment 182•13 years ago
|
||
http://tbpl.allizom.org/php/getParsedLog.php?id=6180632 (later on inbound again)
Comment 183•13 years ago
|
||
Weird. I tried running this test locally. Strangely, I don't get any valgrind warnings even without the patch. Instead I get this output:
...
TEST-INFO | (/home/billm/mozilla/in0/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_new_visit_adds_place_guid.
TEST-INFO | (/home/billm/mozilla/in0/toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_two_null_links_same_uri.
TEST-PASS | /home/billm/mozilla/in0/toolkit/components/places/tests/cpp/test_IHistory.cpp
TEST-INFO | (/home/billm/mozilla/in0/toolkit/components/places/tests/cpp/test_IHistory.cpp) | 240 of 240 tests passed
WARNING: nsExceptionService ignoring thread destruction after shutdown: file /home/billm/mozilla/in0/xpcom/base/nsExceptionService.cpp, line 197
WARNING: could not open zipfile for write: file /home/billm/mozilla/in0/startupcache/StartupCache.cpp, line 364
WARNING: An event was posted to a thread that will never run it (rejected): file /home/billm/mozilla/in0/xpcom/threads/nsThread.cpp, line 388
WARNING: An event was posted to a thread that will never run it (rejected): file /home/billm/mozilla/in0/xpcom/threads/nsThread.cpp, line 388
WARNING: An event was posted to a thread that will never run it (rejected): file /home/billm/mozilla/in0/xpcom/threads/nsThread.cpp, line 388
WARNING: NS_ENSURE_TRUE(asyncCloseWasCalled) failed: file /home/billm/mozilla/in0/storage/src/mozStorageConnection.cpp, line 822
WARNING: NS_ENSURE_TRUE(asyncCloseWasCalled) failed: file /home/billm/mozilla/in0/storage/src/mozStorageConnection.cpp, line 822
Finished running IHistory tests.
Am I maybe running the test incorrectly? I just did a Linux 64 build and then said:
make -C objdir-ff-dbg/toolkit/components/places/tests/cpp
Assignee | ||
Comment 185•13 years ago
|
||
I got different results in different systems, which I guess is because of the use before initialization problem was sensitive to the timing of the GC pass.
I will try to reproduce this again tomorrow.
Comment 186•13 years ago
|
||
Comment 187•13 years ago
|
||
Comment 188•13 years ago
|
||
Comment 189•13 years ago
|
||
http://hg.mozilla.org/mozilla-central/rev/f092ce58bc20
However leaving open given comment 181.
Status: NEW → ASSIGNED
Comment 190•13 years ago
|
||
Comment 191•13 years ago
|
||
Comment 192•13 years ago
|
||
Comment 193•13 years ago
|
||
Comment 194•13 years ago
|
||
Comment 195•13 years ago
|
||
Comment 196•13 years ago
|
||
Comment 197•13 years ago
|
||
Comment 198•13 years ago
|
||
Comment 199•13 years ago
|
||
Comment 200•13 years ago
|
||
Comment 201•13 years ago
|
||
The patch clearly did not fix this problem, but since the bug now has a landed patch associated with it, should we dupe this bug into a new one, use the new one for the orange, and turn this bug into something for just the landed patch?
Comment 202•13 years ago
|
||
Comment 203•13 years ago
|
||
Comment 204•13 years ago
|
||
(In reply to Andrew McCreight [:mccr8] from comment #201)
> The patch clearly did not fix this problem, but since the bug now has a
> landed patch associated with it, should we dupe this bug into a new one, use
> the new one for the orange, and turn this bug into something for just the
> landed patch?
No, we can keep it open. The patch landed in this bug has not fixed it.
Comment 205•13 years ago
|
||
Right, but how do we track the patch that we did land? I may want to request that we put the patch in Aurora and Beta, but it seems bizarre to request that in this bug that is basically unrelated. And setting "fixed in 8" here or whatever doesn't make any sense either.
Comment 206•13 years ago
|
||
It's quite common for orange bugs to have multiple patches because people try different things. I don't like multiple patches per bug myself, but if you do want to get this landed on Aurora, I suggest you file a new bug, attach the desired patch for branch and request approval there.
Comment 207•13 years ago
|
||
Comment 208•13 years ago
|
||
Comment 209•13 years ago
|
||
Comment 210•13 years ago
|
||
Comment 211•13 years ago
|
||
Comment 212•13 years ago
|
||
Comment 213•13 years ago
|
||
Assignee | ||
Comment 214•13 years ago
|
||
Not a fix, but this turns the the segmentation fault into a
test_IHistory: ../../../dist/include/nsTArray.h:171: nsTArray_base::size_type nsTArray_base<Alloc>::Length() const [with Alloc = nsTArrayDefaultAllocator, nsTArray_base::size_type = unsigned int]: Assertion `this' failed.
Comment 215•13 years ago
|
||
Comment 216•13 years ago
|
||
Comment 217•13 years ago
|
||
Comment 218•13 years ago
|
||
Comment 219•13 years ago
|
||
Comment 220•13 years ago
|
||
Comment 221•13 years ago
|
||
Comment 222•13 years ago
|
||
Comment 223•13 years ago
|
||
Comment 224•13 years ago
|
||
Comment 225•13 years ago
|
||
Comment 226•13 years ago
|
||
Comment 227•13 years ago
|
||
Comment 228•13 years ago
|
||
Comment 229•13 years ago
|
||
Comment 230•13 years ago
|
||
Comment 231•13 years ago
|
||
Comment 232•13 years ago
|
||
Comment 233•13 years ago
|
||
Comment 234•13 years ago
|
||
Comment 235•13 years ago
|
||
Comment 236•13 years ago
|
||
Assignee | ||
Comment 237•13 years ago
|
||
I have just been preempted by another bug, but will try to get back to this one this week. The backtrace I got was
#0 0x00237410 in __kernel_vsyscall ()
#1 0x0087bd26 in nanosleep () from /lib/libc.so.6
#2 0x0087bb4f in sleep () from /lib/libc.so.6
#3 0x080493e3 in crap_handler (signum=6) at /home/espindola/mozilla-central/toolkit/components/places/tests/cpp/test_IHistory.cpp:149
#4 <signal handler called>
#5 0x00237410 in __kernel_vsyscall ()
#6 0x00984e61 in raise () from /lib/libpthread.so.0
#7 0x0115b869 in nsContentUtils::AddScriptBlocker () at /home/espindola/mozilla-central/content/base/src/nsContentUtils.cpp:4354
#8 0x01784a3b in nsAutoScriptBlocker (this=0x9978110, aURI=0x9ba35e0) at ../../../dist/include/nsContentUtils.h:1947
#9 mozilla::places::History::NotifyVisited (this=0x9978110, aURI=0x9ba35e0) at /home/espindola/mozilla-central/toolkit/components/places/History.cpp:1325
#10 0x01784c5a in mozilla::places::(anonymous namespace)::VisitedQuery::NotifyVisitedStatus (this=0x9978cf0)
at /home/espindola/mozilla-central/toolkit/components/places/History.cpp:402
#11 0x01784d2d in mozilla::places::(anonymous namespace)::VisitedQuery::HandleCompletion (this=0x9978cf0, aReason=0)
at /home/espindola/mozilla-central/toolkit/components/places/History.cpp:394
#12 0x016f33ee in mozilla::storage::(anonymous namespace)::CompletionNotifier::Run (this=0x99cbf40)
at /home/espindola/mozilla-central/storage/src/mozStorageAsyncStatementExecution.cpp:179
#13 0x019004fc in nsThread::ProcessNextEvent (this=0x97edc98, mayWait=1, result=0xbfd7fc0c) at /home/espindola/mozilla-central/xpcom/threads/nsThread.cpp:631
#14 0x018cf4a4 in NS_ProcessNextEvent_P (thread=<value optimized out>, mayWait=1) at /home/espindola/mozilla-central/obj-i686-pc-linux-gnu/xpcom/build/nsThreadUtils.cpp:245
#15 0x01900821 in nsThread::Shutdown (this=0x9b5af48) at /home/espindola/mozilla-central/xpcom/threads/nsThread.cpp:494
#16 0x019042b2 in TimerThread::Shutdown (this=0x97ede10) at /home/espindola/mozilla-central/xpcom/threads/TimerThread.cpp:172
#17 0x019030c8 in nsTimerImpl::Shutdown () at /home/espindola/mozilla-central/xpcom/threads/nsTimerImpl.cpp:194
#18 0x018d38b2 in mozilla::ShutdownXPCOM (servMgr=0x0) at /home/espindola/mozilla-central/xpcom/build/nsXPComInit.cpp:612
#19 0x00609e99 in NS_ShutdownXPCOM (svcMgr=0x0) at /home/espindola/mozilla-central/xpcom/stub/nsXPComStub.cpp:167
#20 0x080496f5 in ScopedXPCOM::~ScopedXPCOM (this=0xbfd7fda8, __in_chrg=<value optimized out>) at ../../../../../dist/include/testing/TestHarness.h:204
#21 0x0804c6c3 in main (aArgc=Cannot access memory at address 0xb50
) at /home/espindola/mozilla-central/toolkit/components/places/tests/cpp/places_test_harness_tail.h:117
Attachment #557538 -
Attachment is obsolete: true
Comment 238•13 years ago
|
||
Comment 239•13 years ago
|
||
Comment 240•13 years ago
|
||
Comment 241•13 years ago
|
||
Assignee | ||
Comment 242•13 years ago
|
||
I noticed that a crash was happening when sBlockedScriptRunners was set to null in the following backtrace.
#0 nsContentUtils::Shutdown () at /home/espindola/mozilla-central/content/base/src/nsContentUtils.cpp:1031
#1 0x0134fae6 in nsLayoutStatics::Shutdown () at /home/espindola/mozilla-central/layout/build/nsLayoutStatics.cpp:326
#2 0x0134e43b in LayoutShutdownObserver::Observe (this=0x81e3c80, aSubject=0x8064ecc, aTopic=0x209fde1 "xpcom-shutdown", someData=0x0) at /home/espindola/mozilla-central/layout/build/nsLayoutModule.cpp:350
#3 0x01c636ca in nsObserverList::NotifyObservers (this=0x823835c, aSubject=0x8064ecc, aTopic=0x209fde1 "xpcom-shutdown", someData=0x0) at /home/espindola/mozilla-central/xpcom/ds/nsObserverList.cpp:130
#4 0x01c63af8 in nsObserverService::NotifyObservers (this=0x8179088, aSubject=0x8064ecc, aTopic=0x209fde1 "xpcom-shutdown", someData=0x0) at /home/espindola/mozilla-central/xpcom/ds/nsObserverService.cpp:182
#5 0x01c5888e in mozilla::ShutdownXPCOM (servMgr=0x0) at /home/espindola/mozilla-central/xpcom/build/nsXPComInit.cpp:595
#6 0x008bbe99 in NS_ShutdownXPCOM (svcMgr=0x0) at /home/espindola/mozilla-central/xpcom/stub/nsXPComStub.cpp:167
#7 0x080496f5 in ScopedXPCOM::~ScopedXPCOM (this=0xbfffe298, __in_chrg=<value optimized out>) at ../../../../../dist/include/testing/TestHarness.h:204
#8 0x0804c6c3 in main (aArgc=0, aArgv=0x0) at /home/espindola/mozilla-central/toolkit/components/places/tests/cpp/places_test_harness_tail.h:117
and the nsIOService was passed NS_XPCOM_SHUTDOWN_OBSERVER_ID after that.
The attached patch fixes the issue by having nsIOService react to NS_XPCOM_WILL_SHUTDOWN_OBSERVER_ID.
Thanks to ehsan for explaining the xpcom message passing semantics.
Attachment #558902 -
Flags: review?(bzbarsky)
Comment 243•13 years ago
|
||
Comment on attachment 558902 [details] [diff] [review]
proposed patch
I _think_ this should be ok, but I'd really like biesi or Jason to double-check it....
Attachment #558902 -
Flags: review?(jduell.mcbugs)
Attachment #558902 -
Flags: review?(cbiesinger)
Attachment #558902 -
Flags: review?(bzbarsky)
Attachment #558902 -
Flags: review+
Comment 244•13 years ago
|
||
Comment on attachment 558902 [details] [diff] [review]
proposed patch
Review of attachment 558902 [details] [diff] [review]:
-----------------------------------------------------------------
I don't know this code at all, so I'm hesitant to review it. But I can learn it if biesi can't get around to it (would ehsan also be a fair reviewer?)
Comment 245•13 years ago
|
||
Comment 246•13 years ago
|
||
Comment 247•13 years ago
|
||
Comment on attachment 558902 [details] [diff] [review]
proposed patch
Here's my drive-by r+. Here's the logic of this patch. The "xpcom-will-shutdown" event should be used for the components which may use other components that go away during shutdown. The IO service is currently shutting down during "xpcom-shutdown", but its successful shutdown really depends on whether the layout services are available or not. Those services die during "xpcom-shutdown", which means that nsIOService should self destruct during "xpcom-will-shutdown".
Attachment #558902 -
Flags: review+
Assignee | ||
Comment 248•13 years ago
|
||
Comment 249•13 years ago
|
||
Comment on attachment 558902 [details] [diff] [review]
proposed patch
Looks reasonable.
Attachment #558902 -
Flags: review?(cbiesinger) → review+
Comment 250•13 years ago
|
||
Comment 251•13 years ago
|
||
Comment 252•13 years ago
|
||
Comment 253•13 years ago
|
||
Comment 254•13 years ago
|
||
Comment 255•13 years ago
|
||
(In reply to Rafael Ávila de Espíndola (:espindola) from comment #237)
> #0 0x00237410 in __kernel_vsyscall ()
> #1 0x0087bd26 in nanosleep () from /lib/libc.so.6
> #2 0x0087bb4f in sleep () from /lib/libc.so.6
> #3 0x080493e3 in crap_handler (signum=6) at
> /home/espindola/mozilla-central/toolkit/components/places/tests/cpp/
> test_IHistory.cpp:149
> #4 <signal handler called>
> #5 0x00237410 in __kernel_vsyscall ()
> #6 0x00984e61 in raise () from /lib/libpthread.so.0
> #7 0x0115b869 in nsContentUtils::AddScriptBlocker () at
> /home/espindola/mozilla-central/content/base/src/nsContentUtils.cpp:4354
> #8 0x01784a3b in nsAutoScriptBlocker (this=0x9978110, aURI=0x9ba35e0) at
> ../../../dist/include/nsContentUtils.h:1947
> #9 mozilla::places::History::NotifyVisited (this=0x9978110, aURI=0x9ba35e0)
> at /home/espindola/mozilla-central/toolkit/components/places/History.cpp:1325
> #10 0x01784c5a in mozilla::places::(anonymous
> namespace)::VisitedQuery::NotifyVisitedStatus (this=0x9978cf0)
> at
> /home/espindola/mozilla-central/toolkit/components/places/History.cpp:402
> #11 0x01784d2d in mozilla::places::(anonymous
> namespace)::VisitedQuery::HandleCompletion (this=0x9978cf0, aReason=0)
> at
> /home/espindola/mozilla-central/toolkit/components/places/History.cpp:394
> #12 0x016f33ee in mozilla::storage::(anonymous
> namespace)::CompletionNotifier::Run (this=0x99cbf40)
> at
> /home/espindola/mozilla-central/storage/src/
> mozStorageAsyncStatementExecution.cpp:179
> #13 0x019004fc in nsThread::ProcessNextEvent (this=0x97edc98, mayWait=1,
> result=0xbfd7fc0c) at
> /home/espindola/mozilla-central/xpcom/threads/nsThread.cpp:631
> #14 0x018cf4a4 in NS_ProcessNextEvent_P (thread=<value optimized out>,
> mayWait=1) at
> /home/espindola/mozilla-central/obj-i686-pc-linux-gnu/xpcom/build/
> nsThreadUtils.cpp:245
> #15 0x01900821 in nsThread::Shutdown (this=0x9b5af48) at
> /home/espindola/mozilla-central/xpcom/threads/nsThread.cpp:494
> #16 0x019042b2 in TimerThread::Shutdown (this=0x97ede10) at
> /home/espindola/mozilla-central/xpcom/threads/TimerThread.cpp:172
> #17 0x019030c8 in nsTimerImpl::Shutdown () at
> /home/espindola/mozilla-central/xpcom/threads/nsTimerImpl.cpp:194
> #18 0x018d38b2 in mozilla::ShutdownXPCOM (servMgr=0x0) at
> /home/espindola/mozilla-central/xpcom/build/nsXPComInit.cpp:612
> #19 0x00609e99 in NS_ShutdownXPCOM (svcMgr=0x0) at
> /home/espindola/mozilla-central/xpcom/stub/nsXPComStub.cpp:167
> #20 0x080496f5 in ScopedXPCOM::~ScopedXPCOM (this=0xbfd7fda8,
> __in_chrg=<value optimized out>) at
> ../../../../../dist/include/testing/TestHarness.h:204
> #21 0x0804c6c3 in main (aArgc=Cannot access memory at address 0xb50
> ) at
> /home/espindola/mozilla-central/toolkit/components/places/tests/cpp/
> places_test_harness_tail.h:117
So, this backtrace is the sign of another problem. We try to shutdown the timer thread (and the rest of the threads) here: <http://mxr.mozilla.org/mozilla-central/source/xpcom/build/nsXPComInit.cpp#615>. At this point, "xpcom-shutdown" has been dispatched, and layout is dead. This causes us to lose.
I think that the thread shutdown code should be moved to after "xpcom-will-shutdown" and before "xpcom-shutdown". CCing some people who may know this code better than me.
Comment 256•13 years ago
|
||
Comment 257•13 years ago
|
||
Comment 258•13 years ago
|
||
Comment on attachment 558902 [details] [diff] [review]
proposed patch
http://hg.mozilla.org/mozilla-central/rev/1d1143dde4bb
Attachment #558902 -
Flags: review?(jduell.mcbugs) → checkin+
Comment 259•13 years ago
|
||
The XPCOM shutdown order is pretty precise, and I don't think we need to mess with it: https://wiki.mozilla.org/XPCOM_Shutdown
In this case the places (or storage?) code should be watching xpcom-shutdown and doing all of its cleanup during that notification.
Assignee | ||
Comment 260•13 years ago
|
||
(In reply to Benjamin Smedberg [:bsmedberg] from comment #259)
> The XPCOM shutdown order is pretty precise, and I don't think we need to
> mess with it: https://wiki.mozilla.org/XPCOM_Shutdown
>
> In this case the places (or storage?) code should be watching xpcom-shutdown
> and doing all of its cleanup during that notification.
So you think that sBlockedScriptRunners should not be delete in xpcom-shutdown instead of moving code that depend on it existing to will-shutdown?
Comment 261•13 years ago
|
||
I'm saying that it shouldn't be doing it *after* xpcom-shutdown like it is now, and that messing with the thread shutdown sequence is probably not a good idea. Although I also think we could clean up sBlockedScriptRunners from nsLayoutStatics::Shutdown.
Assignee | ||
Comment 262•13 years ago
|
||
(In reply to Benjamin Smedberg [:bsmedberg] from comment #261)
> I'm saying that it shouldn't be doing it *after* xpcom-shutdown like it is
> now, and that messing with the thread shutdown sequence is probably not a
> good idea. Although I also think we could clean up sBlockedScriptRunners
> from nsLayoutStatics::Shutdown.
Are you talking about the timer? Moving it to xpcom-shutdown would still have the same problem as we had with the IO service service, no? It can work or fail depending on the order xpcom-shutdown is delivered.
Comment 263•13 years ago
|
||
What timer? I'm talking about mozilla::places::History::NotifyVisited and mozilla::places::(anonymous namespace)::VisitedQuery::HandleCompletion. Presumably all those queries should be cancelled at shutdown.
The order of xpcom-shutdown is LIFO with AddObserver calls. Normally the order in which they are registered is pretty deterministic based on module load, but this is not well documented and there may be hidden dependencies.
Comment 264•13 years ago
|
||
Marco: do you know about how places shuts down these jobs?
Comment 265•13 years ago
|
||
Comment 266•13 years ago
|
||
Comment 267•13 years ago
|
||
Comment 268•13 years ago
|
||
Comment 269•13 years ago
|
||
Assignee | ||
Comment 270•13 years ago
|
||
> What timer?
The one in comment 237. See the TimerThread::Shutdown from nsXPComInit.cpp:612..
> The order of xpcom-shutdown is LIFO with AddObserver calls. Normally the
> order in which they are registered is pretty deterministic based on module
> load, but this is not well documented and there may be hidden dependencies.
Interesting. Do we want to document it? If so my previous patch can be changed to just change the order of AddObserver. IMHO it is better to not depend on it.
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 273•13 years ago
|
||
Comment 274•13 years ago
|
||
I don't see any interesting timer in comment 237, just a thread-shutdown stack which is pumping the event loop and running an unrelated event (a places event in this case).
We can certainly document the LIFO ordering of the observer service, since we depend on it. I'm not sure which observers you'd be reordering, though, since don't they depend on the order in which the module ctors run?
Assignee | ||
Comment 275•13 years ago
|
||
(In reply to Benjamin Smedberg [:bsmedberg] from comment #274)
> I don't see any interesting timer in comment 237, just a thread-shutdown
> stack which is pumping the event loop and running an unrelated event (a
> places event in this case).
The thread being shutdown from nsTimerImpl::Shutdown which is called from mozilla::ShutdownXPCOM.
> We can certainly document the LIFO ordering of the observer service, since
> we depend on it. I'm not sure which observers you'd be reordering, though,
> since don't they depend on the order in which the module ctors run?
If a reordering is done, it should make sure nsIOService gets the message before Layout. That is effective what the patch https://bug673017.bugzilla.mozilla.org/attachment.cgi?id=558902 did (but my using NS_XPCOM_WILL_SHUTDOWN_OBSERVER_ID).
Comment 276•13 years ago
|
||
Comment 277•13 years ago
|
||
Assignee | ||
Comment 278•13 years ago
|
||
This patch implements Ehsan's proposed solution in comment 255.
I was able to reproduce the crash. This time on a 64 bit bot. With the patch applied, I was able to run the test 1000 times with no crashes.
A try run is at https://tbpl.mozilla.org/?tree=Try&usebuildbot=1&rev=b617c8a868d1
Attachment #560031 -
Flags: review?(bzbarsky)
Comment 279•13 years ago
|
||
Comment on attachment 560031 [details] [diff] [review]
proposed patch
Absolutely not, this must occur after xpcom-shutdown-threads. Otherwise client code will try to use timers and cause very strange/unexpected errors.
Attachment #560031 -
Flags: review?(bzbarsky) → review-
Comment hidden (Legacy TBPL/Treeherder Robot) |
Assignee | ||
Comment 281•13 years ago
|
||
The connection were never being closed and their threads never being shut down. These threads were the one responsible for the events after xpcom shutdown.
I am no so sure about "calling" profile-change-teardown on ShutdownXPCOM, but I could not find a better place to put it.
It also reverts 1d1143dde4bb which is not needed any more.
Attachment #558902 -
Attachment is obsolete: true
Attachment #560031 -
Attachment is obsolete: true
Attachment #560185 -
Flags: review?(benjamin)
Assignee | ||
Comment 282•13 years ago
|
||
Comment 283•13 years ago
|
||
Comment on attachment 560185 [details] [diff] [review]
proposed patch
This is all fine except for the profile-change-teardown notification. That notification should only be sent if there is a profile selected, and it is sent during normal Firefox operation from here: http://mxr.mozilla.org/mozilla-central/source/toolkit/xre/nsXREDirProvider.cpp#776 called from here: http://mxr.mozilla.org/mozilla-central/source/toolkit/xre/nsAppRunner.cpp#1080
It's possible that this test is failing because xpcshell tests don't have a profile by default, and storage assumes that there is always a profile (and that therefore it only has to watch profile-change-teardown and not also one of the xpcom-shutdown observers).
Attachment #560185 -
Flags: review?(benjamin) → review-
Assignee | ||
Comment 284•13 years ago
|
||
This version changes nsNavHistory.cpp to react to NS_XPCOM_SHUTDOWN_OBSERVER_ID.
Attachment #556095 -
Attachment is obsolete: true
Attachment #560185 -
Attachment is obsolete: true
Attachment #560210 -
Flags: review?(benjamin)
Updated•13 years ago
|
Attachment #560210 -
Flags: review?(benjamin) → review+
Assignee | ||
Comment 285•13 years ago
|
||
Comment 286•13 years ago
|
||
Comment 287•13 years ago
|
||
Comment 288•13 years ago
|
||
Comment 289•13 years ago
|
||
Assignee | ||
Comment 290•13 years ago
|
||
The only difference from the previous one is
+ // Finalize all statements.
+ FinalizeInternalStatements();
That the debug builds found was missing.
Attachment #560210 -
Attachment is obsolete: true
Attachment #560420 -
Flags: review?(benjamin)
Assignee | ||
Updated•13 years ago
|
Attachment #560420 -
Attachment is patch: true
Comment 291•13 years ago
|
||
Assignee | ||
Comment 292•13 years ago
|
||
Comment 293•13 years ago
|
||
Comment 294•13 years ago
|
||
What component should this be in? It sounds like JS isn't appropriate any more.
Assignee | ||
Comment 295•13 years ago
|
||
(In reply to Andrew McCreight [:mccr8] from comment #294)
> What component should this be in? It sounds like JS isn't appropriate any
> more.
Toolkit/Places maybe?
Comment 296•13 years ago
|
||
Component: JavaScript Engine → Places
Product: Core → Toolkit
QA Contact: general → places
Comment 297•13 years ago
|
||
Comment 298•13 years ago
|
||
Comment 299•13 years ago
|
||
Comment 300•13 years ago
|
||
Assignee | ||
Comment 301•13 years ago
|
||
An update on the problems I am having patching this:
* We have to shutdown the threads used by the connections, or at least make sure that they are not producing new events.
* To do that, I am trying to close the connections.
* To do that, we need to finalize the sql statements.
* It is not clear how to know which ones have to be finalized.
Comment 302•13 years ago
|
||
Comment on attachment 560420 [details] [diff] [review]
new new patch
This looks ok to me, but mak should review it also.
Attachment #560420 -
Flags: review?(mak77)
Attachment #560420 -
Flags: review?(benjamin)
Attachment #560420 -
Flags: review+
Assignee | ||
Comment 303•13 years ago
|
||
Try at https://tbpl.mozilla.org/?tree=Try&rev=2984fcdfc0b2
The differences from the previous ones are:
* Add a way to get the services (Bookmark, Annotation, Favicon) if they exist.
* Notify that we are about to close the connection, so that nsPlacesExpiration.js can finish its statements.
I also added a bit of dead code removal. Let me know if you would like for that to be in another patch.
Attachment #560420 -
Attachment is obsolete: true
Attachment #560662 -
Flags: review?(dietrich)
Attachment #560662 -
Flags: feedback?(benjamin)
Attachment #560420 -
Flags: review?(mak77)
Comment 304•13 years ago
|
||
Assignee | ||
Updated•13 years ago
|
Attachment #560662 -
Attachment is obsolete: true
Attachment #560662 -
Flags: review?(dietrich)
Attachment #560662 -
Flags: feedback?(benjamin)
Assignee | ||
Comment 305•13 years ago
|
||
The last version of this patch is at
https://tbpl.mozilla.org/?tree=Try&rev=086453e7f478
but I think I have convinced myself that AsyncClose should not call Shutdown. That makes it not really async and causes the event loop to spin, which causes the callback to be called with AsyncClose still on the stack, which in turn can cause recursive generator invocations in javascript.
What should probably happen is that the history code should be refactored to use the closed callback as a continuation.
Assignee | ||
Comment 306•13 years ago
|
||
A version with shutdown that passed xpcshell-tests locally is at
https://tbpl.mozilla.org/?tree=Try&rev=1a1484638ae3
observing TOPIC_PLACES_CONNECTION_CLOSED is probably a hack, if that works I will try to use a lighter test.
I will also try to audit the other calls to AsyncClose.
Comment 307•13 years ago
|
||
Places tries to stop using the database at profile-change-teardown, but clearly there may still be runnables or queries on the async thread, canceling them may be bad for a lot of reasons, just think about clear history on shutdown for example.
I think the issue of possibly running after xpcom-shutdown is valid for any Storage consumer, not specific to Places (even if this may be visible here since we do lots of stuff for links coloring and visits, so the queue may be long). For this reason spinning the events loop in Places looks like just a workaround to something that may actually happen for any Storage consumer.
And actually, may not that be true for anyone relying on xpcom-shutdown-threads and implicit nsThread::shutdown spinning and merge the thread there?
Regarding the tests missing a profile (and thus profile notifications), that's a bug in the test, all Places tests ensure to call do_get_profile(), and xpcshell harness in such a case will take care to invoke the right profile shutdown notifications. Places is not supposed to work without a profile, so there's no point in supporting that special case. One interesting fact you found here, is that test_IHistory uses a separate cpp harness, that is indeed lacking profile creation and shutdown (and related notifications). Most likely fixing that harness would fix the randomness.
I'dd suggest for now to take your changes to tests and the removal of TOPIC_PLACES_CONNECTION_CLOSING (looks unused atm), that are safe and good fixes, apart the test_browserhistory one that you filed a separate bug for. I'd like the harness in toolkit/components/places/tests/cpp/ to correctly implement something like do_get_profile() and fire the right notifications.
The problem with Storage relying on thread shutdown to spin the events loop should most likely be moved and discusses in a Storage bug, Sdwilsh and Asuth have far better knowledge of the implications of changing that and this bug is too spammy to follow a discussion.
Assignee | ||
Comment 308•13 years ago
|
||
OK. I marked the test_browserhistory bug as a dependency of this one and created one just for the missing profile problem.
I will split the bits that are unrelated to the missing profile or spinning so that they can go first and then open a forth bug about spinning (I don't do a full shutdown in the last version of the patch patch).
Assignee | ||
Comment 309•13 years ago
|
||
Attachment #561069 -
Flags: review?(mak77)
Comment 310•13 years ago
|
||
Comment 311•13 years ago
|
||
Comment on attachment 561069 [details] [diff] [review]
the simple bits
Review of attachment 561069 [details] [diff] [review]:
-----------------------------------------------------------------
::: netwerk/base/src/nsIOService.cpp
@@ +969,4 @@
> }
> }
> }
> + else if (!strcmp(topic, NS_XPCOM_SHUTDOWN_OBSERVER_ID)) {
Hm is this undoing what Bug 673017 did? sounds like a bogus patch queue :)
::: services/sync/tests/unit/test_places_guid_downgrade.js
@@ +159,4 @@
> do_check_eq(result.length, 1);
> do_check_eq(result[0].id, tbid);
>
> + stmt.finalize();
nit: the newline before finalize() is not coherent with the others finalize() you added
::: toolkit/components/places/tests/head_common.js
@@ +614,4 @@
> aCallback.apply(scope, args);
> }
> });
> + commit.finalize();
could you please fix the same in all places where this code is duplicated?
see http://mxr.mozilla.org/mozilla-central/search?string=db.createAsyncStatement%28%22BEGIN%20EXCLUSIVE%22%29
Attachment #561069 -
Flags: review?(mak77)
Assignee | ||
Comment 312•13 years ago
|
||
The reversal of 1d1143dde4bb is intentional as that didn't fix this orange in the end.
https://tbpl.mozilla.org/?tree=Try&rev=ca044377525a
Attachment #561069 -
Attachment is obsolete: true
Attachment #561206 -
Flags: review?(mak77)
Assignee | ||
Comment 313•13 years ago
|
||
Attachment #561206 -
Attachment is obsolete: true
Attachment #561223 -
Flags: review?(mak77)
Attachment #561206 -
Flags: review?(mak77)
Assignee | ||
Comment 314•13 years ago
|
||
Comment 315•13 years ago
|
||
Assignee | ||
Updated•13 years ago
|
Attachment #561223 -
Attachment is patch: true
Updated•13 years ago
|
Attachment #561223 -
Flags: review?(mak77) → review+
Comment 316•13 years ago
|
||
Regarding bug 687726, while we wait for an answer and discussion results, if current patches won't fix this failure, we may evaluate a patch that spins the events loop in Places. But it should be a separate patch from the current ones, and I think it should spin the Storage async thread used by Places so that all queries and runnables on it are executed. This may be tricky though, since we can only spin the thread we are on, we may try to ->shutdown() it though (need to ensure how Storage reacts to such a thing though).
Assignee | ||
Comment 317•13 years ago
|
||
Comment on attachment 561223 [details] [diff] [review]
new with the nsNavHistory.cpp bits that were missing
[Checked in: Comment 319]
https://hg.mozilla.org/integration/mozilla-inbound/rev/02ce78afb984
Attachment #561223 -
Flags: checkin+
Assignee | ||
Updated•13 years ago
|
Whiteboard: [orange] → [orange] [more patches before this is fixed]
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 319•13 years ago
|
||
Comment on attachment 561223 [details] [diff] [review]
new with the nsNavHistory.cpp bits that were missing
[Checked in: Comment 319]
https://hg.mozilla.org/mozilla-central/rev/02ce78afb984
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 322•13 years ago
|
||
most of the last reported failures are not this bug, "Expected true, got false" is not the segfault
Updated•13 years ago
|
Summary: Intermittent segfault while running test_IHistory.cpp on Linux, or bus error on OS X → Intermittent segfault while running test_IHistory.cpp on Linux, or bus error on OS X [***NOT: Expected true, got false***]
Assignee | ||
Comment 323•13 years ago
|
||
(In reply to Marco Bonardo [:mak] from comment #322)
> most of the last reported failures are not this bug, "Expected true, got
> false" is not the segfault
This might be another Symptom of the same bug, but it is OK if we want to track it in another bug.
Comment 324•13 years ago
|
||
Comment 325•13 years ago
|
||
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 327•13 years ago
|
||
Oops, comment 326 is mis-starred. These are correct, though:
https://tbpl.mozilla.org/php/getParsedLog.php?id=6555124&tree=Firefox
https://tbpl.mozilla.org/php/getParsedLog.php?id=6554060&tree=Firefox
Comment 328•13 years ago
|
||
This is still happening very frequently; I haven't pasted every single build that I've starred. Here are some more:
https://tbpl.mozilla.org/php/getParsedLog.php?id=6559488&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6559453&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6552986&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6551991&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6550809&tree=Mozilla-Inbound
Comment 329•13 years ago
|
||
Comment 330•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=6557970&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6558683&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6560378&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6562802&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6561523&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6561690&tree=Mozilla-Inbound
Comment 331•13 years ago
|
||
Comment 332•13 years ago
|
||
Comment 333•13 years ago
|
||
Comment 334•13 years ago
|
||
Comment 335•13 years ago
|
||
Comment 336•13 years ago
|
||
Comment 337•13 years ago
|
||
Comment 338•13 years ago
|
||
Comment 339•13 years ago
|
||
Comment 340•13 years ago
|
||
Comment 341•13 years ago
|
||
Comment 342•13 years ago
|
||
Comment 343•13 years ago
|
||
Comment 344•13 years ago
|
||
Comment 345•13 years ago
|
||
Comment 346•13 years ago
|
||
Comment 347•13 years ago
|
||
Comment 348•13 years ago
|
||
Comment 349•13 years ago
|
||
Comment 350•13 years ago
|
||
Comment 351•13 years ago
|
||
Comment 352•13 years ago
|
||
Comment 353•13 years ago
|
||
Comment 354•13 years ago
|
||
Comment 355•13 years ago
|
||
Comment 356•13 years ago
|
||
Comment 357•13 years ago
|
||
Comment 358•13 years ago
|
||
Comment 359•13 years ago
|
||
Comment 360•13 years ago
|
||
Comment 361•13 years ago
|
||
Comment 362•13 years ago
|
||
Comment 363•13 years ago
|
||
Comment 364•13 years ago
|
||
Comment 365•13 years ago
|
||
Comment 366•13 years ago
|
||
Comment 367•13 years ago
|
||
Comment 368•13 years ago
|
||
Comment 369•13 years ago
|
||
Comment 370•13 years ago
|
||
Comment 371•13 years ago
|
||
Comment 372•13 years ago
|
||
Comment 373•13 years ago
|
||
Comment 374•13 years ago
|
||
Comment 375•13 years ago
|
||
Comment 376•13 years ago
|
||
Comment 377•13 years ago
|
||
Comment 378•13 years ago
|
||
Comment 379•13 years ago
|
||
Comment 380•13 years ago
|
||
Comment 381•13 years ago
|
||
Comment 382•13 years ago
|
||
Comment 383•13 years ago
|
||
Comment 384•13 years ago
|
||
Comment 385•13 years ago
|
||
Comment 386•13 years ago
|
||
Comment 387•13 years ago
|
||
Comment 388•13 years ago
|
||
Comment 389•13 years ago
|
||
Comment 390•13 years ago
|
||
Comment 391•13 years ago
|
||
Comment 392•13 years ago
|
||
Comment 393•13 years ago
|
||
Comment 394•13 years ago
|
||
Comment 395•13 years ago
|
||
Comment 396•13 years ago
|
||
Comment 397•13 years ago
|
||
Comment 398•13 years ago
|
||
Comment 399•13 years ago
|
||
Comment 400•13 years ago
|
||
Comment 401•13 years ago
|
||
Comment 402•13 years ago
|
||
Comment 403•13 years ago
|
||
Comment 404•13 years ago
|
||
Comment 405•13 years ago
|
||
Comment 406•13 years ago
|
||
Comment 407•13 years ago
|
||
Comment 408•13 years ago
|
||
Comment 409•13 years ago
|
||
Comment 410•13 years ago
|
||
Comment 411•13 years ago
|
||
Comment 412•13 years ago
|
||
Comment 413•13 years ago
|
||
Comment 414•13 years ago
|
||
Comment 415•13 years ago
|
||
Comment 416•13 years ago
|
||
Comment 417•13 years ago
|
||
Comment 418•13 years ago
|
||
Comment 419•13 years ago
|
||
Comment 420•13 years ago
|
||
Comment 421•13 years ago
|
||
Comment 422•13 years ago
|
||
Comment 423•13 years ago
|
||
Comment 424•13 years ago
|
||
Comment 425•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=6749963&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6750060&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6749942&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6750050&tree=Mozilla-Inbound
Comment 426•13 years ago
|
||
Comment 427•13 years ago
|
||
Comment 428•13 years ago
|
||
Comment 429•13 years ago
|
||
Comment 430•13 years ago
|
||
Comment 431•13 years ago
|
||
Comment 432•13 years ago
|
||
Comment 433•13 years ago
|
||
Comment 434•13 years ago
|
||
The frequency seems to have increased in the last 12 hours, or is it just me?
https://tbpl.mozilla.org/php/getParsedLog.php?id=6761568&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6761158&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6761122&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6761100&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6761622&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6761726&tree=Mozilla-Inbound
Comment 435•13 years ago
|
||
Comment 436•13 years ago
|
||
Comment 437•13 years ago
|
||
Comment 438•13 years ago
|
||
Comment 439•13 years ago
|
||
Comment 440•13 years ago
|
||
Comment 441•13 years ago
|
||
Comment 442•13 years ago
|
||
Comment 443•13 years ago
|
||
Comment 444•13 years ago
|
||
Comment 445•13 years ago
|
||
Comment 446•13 years ago
|
||
Comment 447•13 years ago
|
||
Comment 448•13 years ago
|
||
Comment 449•13 years ago
|
||
Comment 450•13 years ago
|
||
Comment 451•13 years ago
|
||
Comment 452•13 years ago
|
||
Comment 453•13 years ago
|
||
Comment 454•13 years ago
|
||
Comment 455•13 years ago
|
||
https://tbpl.mozilla.org/?tree=Try&usebuildbot=1&rev=b92894dab13b
linux & linuxqt segv
================
make -C cpp check
make[5]: Entering directory `/builds/slave/try-lnx/build/obj-firefox/toolkit/components/places/tests/cpp'
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_two_null_links_same_uri.
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | 247 of 247 tests passed
/bin/sh: line 1: 27772 Segmentation fault XPCOM_DEBUG_BREAK=stack-and-abort /builds/slave/try-lnx/build/obj-firefox/dist/bin/run-mozilla.sh ../../../../../dist/bin/$f
make[5]: *** [check] Error 139
make[5]: Leaving directory `/builds/slave/try-lnx/build/obj-firefox/toolkit/components/places/tests/cpp'
make[4]: Leaving directory `/builds/slave/try-lnx/build/obj-firefox/toolkit/components/places/tests'
make[4]: *** [check] Error 2
Comment 456•13 years ago
|
||
Comment 457•13 years ago
|
||
Comment 458•13 years ago
|
||
Comment 459•13 years ago
|
||
Comment 460•13 years ago
|
||
Comment 461•13 years ago
|
||
Comment 462•13 years ago
|
||
Comment 463•13 years ago
|
||
Comment 464•13 years ago
|
||
Comment 465•13 years ago
|
||
Comment 466•13 years ago
|
||
Comment 467•13 years ago
|
||
Comment 468•13 years ago
|
||
Comment 469•13 years ago
|
||
Comment 470•13 years ago
|
||
Comment 471•13 years ago
|
||
Comment 472•13 years ago
|
||
Comment 473•13 years ago
|
||
Comment 474•13 years ago
|
||
Comment 475•13 years ago
|
||
Comment 476•13 years ago
|
||
Comment 477•13 years ago
|
||
Comment 478•13 years ago
|
||
Comment 479•13 years ago
|
||
Comment 480•13 years ago
|
||
Comment 481•13 years ago
|
||
Comment 482•13 years ago
|
||
Comment 483•13 years ago
|
||
Comment 484•13 years ago
|
||
Comment 485•13 years ago
|
||
Comment 486•13 years ago
|
||
Comment 487•13 years ago
|
||
Comment 488•13 years ago
|
||
Comment 489•13 years ago
|
||
Comment 490•13 years ago
|
||
Comment 491•13 years ago
|
||
Comment 492•13 years ago
|
||
Comment 493•13 years ago
|
||
Comment 494•13 years ago
|
||
Comment 495•13 years ago
|
||
Comment 496•13 years ago
|
||
Comment 497•13 years ago
|
||
Comment 498•13 years ago
|
||
Comment 499•13 years ago
|
||
Comment 500•13 years ago
|
||
Comment 501•13 years ago
|
||
Comment 502•13 years ago
|
||
Comment 503•13 years ago
|
||
Comment 504•13 years ago
|
||
Comment 505•13 years ago
|
||
Comment 506•13 years ago
|
||
Comment 507•13 years ago
|
||
Comment 508•13 years ago
|
||
Comment 509•13 years ago
|
||
Comment 510•13 years ago
|
||
Comment 511•13 years ago
|
||
Comment 512•13 years ago
|
||
Comment 513•13 years ago
|
||
Comment 514•13 years ago
|
||
Comment 515•13 years ago
|
||
Comment 516•13 years ago
|
||
Comment 517•13 years ago
|
||
Comment 518•13 years ago
|
||
Comment 519•13 years ago
|
||
Comment 520•13 years ago
|
||
Comment 521•13 years ago
|
||
Comment 522•13 years ago
|
||
Comment 523•13 years ago
|
||
Comment 524•13 years ago
|
||
Comment 525•13 years ago
|
||
Comment 526•13 years ago
|
||
Seems pretty frequent for Tb.
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1318607533.1318613285.5219.gz
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1318615275.1318623446.25732.gz
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1318616329.1318624349.28097.gz
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1318620980.1318627092.491.gz
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1318615275.1318622804.24632.gz
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1318619779.1318627055.452.gz
Comment 527•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=6871842&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6869586&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6869761&tree=Mozilla-Inbound
https://tbpl.mozilla.org/php/getParsedLog.php?id=6869918&tree=Mozilla-Inbound
Comment 528•13 years ago
|
||
Comment 529•13 years ago
|
||
Comment 530•13 years ago
|
||
Comment 531•13 years ago
|
||
Comment 532•13 years ago
|
||
Comment 533•13 years ago
|
||
Comment 534•13 years ago
|
||
Comment 535•13 years ago
|
||
Comment 536•13 years ago
|
||
Comment 537•13 years ago
|
||
Comment 538•13 years ago
|
||
Comment 539•13 years ago
|
||
Comment 540•13 years ago
|
||
Comment 541•13 years ago
|
||
Comment 542•13 years ago
|
||
Comment 543•13 years ago
|
||
Comment 544•13 years ago
|
||
Comment 545•13 years ago
|
||
Comment 546•13 years ago
|
||
Comment 547•13 years ago
|
||
Comment 548•13 years ago
|
||
Comment 549•13 years ago
|
||
Comment 550•13 years ago
|
||
Comment 551•13 years ago
|
||
Comment 552•13 years ago
|
||
Comment 553•13 years ago
|
||
Comment 554•13 years ago
|
||
Comment 555•13 years ago
|
||
Comment 556•13 years ago
|
||
Comment 557•13 years ago
|
||
Comment 558•13 years ago
|
||
Comment 559•13 years ago
|
||
Comment 560•13 years ago
|
||
Comment 561•13 years ago
|
||
Comment 562•13 years ago
|
||
Comment 563•13 years ago
|
||
Comment 564•13 years ago
|
||
Comment 565•13 years ago
|
||
Comment 566•13 years ago
|
||
Comment 567•13 years ago
|
||
Comment 568•13 years ago
|
||
Comment 569•13 years ago
|
||
Comment 570•13 years ago
|
||
Comment 571•13 years ago
|
||
Comment 572•13 years ago
|
||
Comment 573•13 years ago
|
||
Comment 574•13 years ago
|
||
Comment 575•13 years ago
|
||
Comment 576•13 years ago
|
||
Comment 577•13 years ago
|
||
Comment 578•13 years ago
|
||
Comment 579•13 years ago
|
||
Comment 580•13 years ago
|
||
Comment 581•13 years ago
|
||
Comment 582•13 years ago
|
||
Comment 583•13 years ago
|
||
Comment 584•13 years ago
|
||
Comment 585•13 years ago
|
||
Comment 586•13 years ago
|
||
Comment 587•13 years ago
|
||
Comment 588•13 years ago
|
||
Comment 589•13 years ago
|
||
Comment 590•13 years ago
|
||
Comment 591•13 years ago
|
||
Comment 592•13 years ago
|
||
Comment 593•13 years ago
|
||
Comment 594•13 years ago
|
||
Comment 595•13 years ago
|
||
Comment 596•13 years ago
|
||
Comment 597•13 years ago
|
||
Comment 598•13 years ago
|
||
Comment 599•13 years ago
|
||
Comment 600•13 years ago
|
||
Comment 601•13 years ago
|
||
Daddy, is this where you keep your blog?
Comment 602•13 years ago
|
||
Hush, honey, Daddy's busy annoying people into inaction.
https://tbpl.mozilla.org/php/getParsedLog.php?id=6980097&tree=Mozilla-Inbound
Comment 603•13 years ago
|
||
Comment 604•13 years ago
|
||
Comment 605•13 years ago
|
||
Comment 606•13 years ago
|
||
Comment 607•13 years ago
|
||
Comment 608•13 years ago
|
||
Comment 609•13 years ago
|
||
Comment 610•13 years ago
|
||
Comment 611•13 years ago
|
||
Comment 612•13 years ago
|
||
Comment 613•13 years ago
|
||
Comment 614•13 years ago
|
||
Comment 615•13 years ago
|
||
Comment 616•13 years ago
|
||
Comment 617•13 years ago
|
||
Comment 618•13 years ago
|
||
Comment 619•13 years ago
|
||
Comment 620•13 years ago
|
||
Comment 621•13 years ago
|
||
Comment 622•13 years ago
|
||
Comment 623•13 years ago
|
||
Comment 624•13 years ago
|
||
Comment 625•13 years ago
|
||
Comment 626•13 years ago
|
||
Comment 627•13 years ago
|
||
Comment 628•13 years ago
|
||
Comment 629•13 years ago
|
||
Comment 630•13 years ago
|
||
Comment 631•13 years ago
|
||
Comment 632•13 years ago
|
||
Comment 633•13 years ago
|
||
Comment 634•13 years ago
|
||
Updated•13 years ago
|
Summary: Intermittent segfault while running test_IHistory.cpp on Linux, or bus error on OS X [***NOT: Expected true, got false***] → Intermittent segfault while running test_IHistory.cpp on Linux, or bus error on OS X [***NOT: Expected true, got false***][*** [check] Error 139]
Comment 635•13 years ago
|
||
Comment 636•13 years ago
|
||
Comment 637•13 years ago
|
||
Comment 638•13 years ago
|
||
Comment 639•13 years ago
|
||
Comment 640•13 years ago
|
||
Comment 641•13 years ago
|
||
Comment 642•13 years ago
|
||
Comment 643•13 years ago
|
||
Comment 644•13 years ago
|
||
Comment 645•13 years ago
|
||
Comment 646•13 years ago
|
||
Comment 647•13 years ago
|
||
Comment 648•13 years ago
|
||
Comment 649•13 years ago
|
||
Comment 650•13 years ago
|
||
Comment 651•13 years ago
|
||
Comment 652•13 years ago
|
||
Comment 653•13 years ago
|
||
Comment 654•13 years ago
|
||
Comment 655•13 years ago
|
||
Comment 656•13 years ago
|
||
Comment 657•13 years ago
|
||
Comment 658•13 years ago
|
||
Comment 659•13 years ago
|
||
Comment 660•13 years ago
|
||
Comment 661•13 years ago
|
||
Comment 662•13 years ago
|
||
Comment 663•13 years ago
|
||
Comment 664•13 years ago
|
||
Comment 665•13 years ago
|
||
Comment 666•13 years ago
|
||
Comment 667•13 years ago
|
||
Comment 668•13 years ago
|
||
Comment 669•13 years ago
|
||
Comment 670•13 years ago
|
||
Comment 671•13 years ago
|
||
Comment 672•13 years ago
|
||
Comment 673•13 years ago
|
||
Comment 674•13 years ago
|
||
Comment 675•13 years ago
|
||
Comment 676•13 years ago
|
||
Comment 677•13 years ago
|
||
Comment 678•13 years ago
|
||
Comment 679•13 years ago
|
||
Comment 680•13 years ago
|
||
Comment 681•13 years ago
|
||
Comment 682•13 years ago
|
||
Comment 683•13 years ago
|
||
Comment 684•13 years ago
|
||
Comment 685•13 years ago
|
||
Comment 686•13 years ago
|
||
Comment 687•13 years ago
|
||
Comment 688•13 years ago
|
||
Comment 689•13 years ago
|
||
Comment 690•13 years ago
|
||
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 692•13 years ago
|
||
Comment 693•13 years ago
|
||
Comment 694•13 years ago
|
||
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 696•13 years ago
|
||
Comment 697•13 years ago
|
||
Comment 698•13 years ago
|
||
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 700•13 years ago
|
||
Comment 701•13 years ago
|
||
Comment 702•13 years ago
|
||
Comment 703•13 years ago
|
||
Comment 704•13 years ago
|
||
Comment 705•13 years ago
|
||
Comment 706•13 years ago
|
||
Comment 707•13 years ago
|
||
Comment 708•13 years ago
|
||
Comment 709•13 years ago
|
||
Comment 710•13 years ago
|
||
Comment 711•13 years ago
|
||
Comment 712•13 years ago
|
||
Comment 713•13 years ago
|
||
Comment 714•13 years ago
|
||
Comment 715•13 years ago
|
||
Comment 716•13 years ago
|
||
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 718•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=7221641&tree=Mozilla-Inbound
Not like we're gaining anything by having this [orange]/randomorange, other than misstars, might as well take them off.
No longer blocks: 438871
Whiteboard: [orange] [more patches before this is fixed] → [more patches before this is fixed]
Comment 719•13 years ago
|
||
Comment 720•13 years ago
|
||
Comment 721•13 years ago
|
||
Comment 722•13 years ago
|
||
Comment 723•13 years ago
|
||
Comment 724•13 years ago
|
||
Comment 725•13 years ago
|
||
Comment 726•13 years ago
|
||
Comment 727•13 years ago
|
||
Comment 728•13 years ago
|
||
Comment 729•13 years ago
|
||
Comment 730•13 years ago
|
||
Comment 731•13 years ago
|
||
Comment 732•13 years ago
|
||
Comment 733•13 years ago
|
||
according to some Try logging, this may improve the situation, we try to notifyvisited really late, at that point the service may have gone.
Attachment #573153 -
Flags: review?(dietrich)
Comment 734•13 years ago
|
||
Comment 735•13 years ago
|
||
Comment 736•13 years ago
|
||
Comment 737•13 years ago
|
||
Updated•13 years ago
|
Attachment #573153 -
Flags: review?(dietrich) → review+
Comment 738•13 years ago
|
||
let's see how this behaves. On the other side in the last days the failure has greatly reduces, likely some different distribution of work in the process.
https://hg.mozilla.org/integration/mozilla-inbound/rev/c00340467919
Whiteboard: [more patches before this is fixed] → [please leave open, gathering failure stats]
Target Milestone: --- → mozilla11
Comment 739•13 years ago
|
||
Comment 740•13 years ago
|
||
Comment 741•13 years ago
|
||
Comment 742•13 years ago
|
||
Comment 743•13 years ago
|
||
Comment 744•13 years ago
|
||
Comment 745•13 years ago
|
||
Comment 746•13 years ago
|
||
Comment 747•13 years ago
|
||
Comment 748•13 years ago
|
||
Comment 749•13 years ago
|
||
Comment 750•13 years ago
|
||
Comment 751•13 years ago
|
||
Comment 752•13 years ago
|
||
Comment 753•13 years ago
|
||
Comment 754•13 years ago
|
||
Comment 755•13 years ago
|
||
Comment 756•13 years ago
|
||
Comment 757•13 years ago
|
||
Comment 758•13 years ago
|
||
Comment 759•13 years ago
|
||
Comment 760•13 years ago
|
||
Comment 761•13 years ago
|
||
Comment 762•13 years ago
|
||
Comment 763•13 years ago
|
||
Comment 764•13 years ago
|
||
hasResult is false but the call succeeded isn't the most exciting assertion ever, but still...
https://tbpl.mozilla.org/php/getParsedLog.php?id=7837063&tree=Mozilla-Inbound
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_same_uri_notifies_both.
###!!! ASSERTION: hasResult is false but the call succeeded?: 'hasResult', file ../../../../toolkit/components/places/nsNavHistory.cpp, line 587
UNKNOWN [/builds/slave/m-in-lnx-dbg/build/obj-firefox/dist/bin/libxul.so +0x00EA7BE9]
UNKNOWN [/builds/slave/m-in-lnx-dbg/build/obj-firefox/dist/bin/libxul.so +0x00EAF9C4]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00003A07]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00004E20]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x0000211C]
UNKNOWN [/builds/slave/m-in-lnx-dbg/build/obj-firefox/dist/bin/libxul.so +0x010FC2F8]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00008B34]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00006217]
__libc_start_main+0x000000DC [/lib/libc.so.6 +0x00015DEC]
###!!! ASSERTION: hasResult is false but the call succeeded?: 'hasResult', file ../../../../toolkit/components/places/nsNavHistory.cpp, line 587
/bin/sh: line 1: 6076 Segmentation fault XPCOM_DEBUG_BREAK=stack-and-abort /builds/slave/m-in-lnx-dbg/build/obj-firefox/dist/bin/run-mozilla.sh ../../../../../dist/bin/$f
Comment 765•13 years ago
|
||
Comment 766•13 years ago
|
||
Comment 767•13 years ago
|
||
Comment 768•13 years ago
|
||
Comment 769•13 years ago
|
||
Updated•13 years ago
|
Attachment #573153 -
Attachment description: check history → check history
[Checked in: Comment 739]
Updated•13 years ago
|
Attachment #561223 -
Attachment description: new with the nsNavHistory.cpp bits that were missing → new with the nsNavHistory.cpp bits that were missing
[Checked in: Comment 319]
Comment 770•13 years ago
|
||
Comment 771•13 years ago
|
||
Comment 772•13 years ago
|
||
Comment 773•13 years ago
|
||
Assignee | ||
Comment 774•13 years ago
|
||
A combined patch is under test in
https://tbpl.mozilla.org/?tree=Try&rev=1c8481e074d5
Comment 775•13 years ago
|
||
Comment 776•13 years ago
|
||
Comment 777•13 years ago
|
||
Comment 778•13 years ago
|
||
Comment 779•13 years ago
|
||
Comment 780•13 years ago
|
||
Comment 781•13 years ago
|
||
Comment 782•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=8074556&tree=Try
(Q: What's the last thing this bug wants to see? A. A bunch of pushes of mozilla-beta to try.)
Comment 783•13 years ago
|
||
Comment 784•13 years ago
|
||
Comment 785•13 years ago
|
||
Comment 786•13 years ago
|
||
Comment 787•13 years ago
|
||
Comment 788•13 years ago
|
||
Comment 789•13 years ago
|
||
Comment 790•13 years ago
|
||
Comment 791•13 years ago
|
||
Comment 792•13 years ago
|
||
Comment 793•13 years ago
|
||
Comment 794•13 years ago
|
||
Comment 795•13 years ago
|
||
Comment 796•13 years ago
|
||
Comment 797•13 years ago
|
||
Comment 798•13 years ago
|
||
Comment 799•13 years ago
|
||
Comment 800•13 years ago
|
||
Comment 801•13 years ago
|
||
Comment 802•13 years ago
|
||
Comment 803•13 years ago
|
||
Comment 804•13 years ago
|
||
Comment 805•13 years ago
|
||
Whiteboard: [please leave open, gathering failure stats] → [please leave open, gathering dust]
Comment 806•13 years ago
|
||
Comment 807•13 years ago
|
||
Comment 808•13 years ago
|
||
Comment 809•13 years ago
|
||
Comment 810•13 years ago
|
||
Comment 811•13 years ago
|
||
Comment 812•13 years ago
|
||
Comment 813•13 years ago
|
||
Comment 814•13 years ago
|
||
This is happening (quite frequently) on comm-central too:
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1326219071.1326232266.13250.gz
Linux comm-central build on 2012/01/10 10:11:11
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1325965928.1325970160.6313.gz
Linux x86-64 comm-central build on 2012/01/07 11:52:08
+
http://tinderbox.mozilla.org/showlog.cgi?log=SeaMonkey/1326237018.1326239351.28538.gz
Linux x86-64 comm-central-trunk build on 2012/01/10 15:10:18
Severity: normal → major
Hardware: x86 → All
Comment 815•13 years ago
|
||
Comment 816•13 years ago
|
||
Comment 817•13 years ago
|
||
Comment 818•13 years ago
|
||
Comment 819•13 years ago
|
||
Comment 820•13 years ago
|
||
Comment 821•13 years ago
|
||
Comment 822•13 years ago
|
||
Comment 823•13 years ago
|
||
Comment 824•13 years ago
|
||
Comment 825•13 years ago
|
||
Comment 826•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=8535052&tree=Firefox
Linux x86-64 mozilla-central pgo-build on 2012-01-13 12:45:08 PST for push 790cd9bba7f5
Comment 827•13 years ago
|
||
Comment 828•13 years ago
|
||
Comment 829•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=8628442&tree=Mozilla-Aurora
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_unvisited_does_not_notify_part1.
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 823
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 823
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 418
WARNING: NS_ENSURE_TRUE(mDB) failed: file ../../../../toolkit/components/places/nsNavHistory.cpp, line 382
WARNING: NS_ENSURE_TRUE(serv) failed: file ../../../../toolkit/components/places/nsNavHistory.h, line 152
WARNING: NS_ENSURE_TRUE(navHistory) failed: file ../../../../toolkit/components/places/History.cpp, line 348
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visited_notifies.
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 823
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 823
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 418
WARNING: NS_ENSURE_TRUE(mDB) failed: file ../../../../toolkit/components/places/nsNavHistory.cpp, line 382
###!!! ASSERTION: You can't dereference a NULL nsCOMPtr with operator->().: 'mRawPtr != 0', file ../../../../../dist/include/nsCOMPtr.h, line 809
NS_DebugBreak+0x00000026 [/builds/slave/m-aurora-lnx-dbg/build/obj-firefox/dist/bin/libxpcom.so +0x0000203C]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x000025AA]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00003A3B]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00004F7F]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x0000211C]
UNKNOWN [/builds/slave/m-aurora-lnx-dbg/build/obj-firefox/dist/bin/libxul.so +0x010F7C37]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00008B2C]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00006211]
__libc_start_main+0x000000DC [/lib/libc.so.6 +0x00015DEC]
###!!! ASSERTION: You can't dereference a NULL nsCOMPtr with operator->().: 'mRawPtr != 0', file ../../../../../dist/include/nsCOMPtr.h, line 809
/bin/sh: line 1: 32579 Segmentation fault XPCOM_DEBUG_BREAK=stack-and-abort /builds/slave/m-aurora-lnx-dbg/build/obj-firefox/dist/bin/run-mozilla.sh ../../../../../dist/bin/$f
Comment 830•13 years ago
|
||
So, something tries to resolve link status too late in the shutdown process. Though I was unable to find the null ptr, would be cool if we'd have decent stacks, maybe we could convert the null nsCOMPtr assertion to a MOZ_ASSERT to get them.
Comment 831•13 years ago
|
||
filed bug 718999 to make those assertions fatal
Comment 832•13 years ago
|
||
Comment 833•13 years ago
|
||
Comment 834•13 years ago
|
||
Comment 835•13 years ago
|
||
Comment 836•13 years ago
|
||
Comment 837•13 years ago
|
||
Comment 838•13 years ago
|
||
Comment 839•13 years ago
|
||
Comment 840•13 years ago
|
||
Comment 841•13 years ago
|
||
Comment 842•13 years ago
|
||
Comment 843•13 years ago
|
||
Comment 844•13 years ago
|
||
Comment 845•13 years ago
|
||
Comment 846•13 years ago
|
||
Comment 847•13 years ago
|
||
Comment 848•13 years ago
|
||
Comment 849•13 years ago
|
||
Comment 850•13 years ago
|
||
Comment 851•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=8900959&tree=Firefox
Linux x86-64 mozilla-central build on 2012-01-28 00:32:44 PST for push dba0b31edfbf
Comment 852•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=8919478&tree=Firefox
Linux x86-64 mozilla-central build on 2012-01-29 02:23:44 PST for push f35a3eb44138
Comment 853•13 years ago
|
||
Comment 854•13 years ago
|
||
Comment 855•13 years ago
|
||
Comment 856•13 years ago
|
||
Comment 857•13 years ago
|
||
Comment 858•13 years ago
|
||
Comment 859•13 years ago
|
||
Comment 860•13 years ago
|
||
Aurora 12:
http://tinderbox.mozilla.org/showlog.cgi?log=SeaMonkey-Aurora/1329840277.1329842126.6857.gz
Linux x86-64 comm-aurora build on 2012/02/21 08:04:37
status-firefox12:
--- → affected
Comment 861•13 years ago
|
||
(In reply to Phil Ringnalda (:philor) from comment #602)
> Hush, honey, Daddy's busy annoying people into inaction.
You're not very good at this daddy. :(
Comment 862•13 years ago
|
||
Sorry daddy I confused inaction with action. Like like inflammible! Sorry about the house, too.
Comment 863•13 years ago
|
||
Comment 864•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=9732423&tree=Mozilla-Beta
Linux mozilla-beta build on 2012-02-29 15:10:44 PST for push 529498671c4c
status-firefox11:
--- → affected
Comment 865•13 years ago
|
||
Comment 866•13 years ago
|
||
Comment 867•13 years ago
|
||
Comment 868•13 years ago
|
||
Comment 869•13 years ago
|
||
Comment 870•13 years ago
|
||
Comment 871•13 years ago
|
||
Comment 872•13 years ago
|
||
Comment 873•13 years ago
|
||
Comment 874•13 years ago
|
||
Comment 875•13 years ago
|
||
Comment 876•13 years ago
|
||
Comment 877•13 years ago
|
||
Comment 878•13 years ago
|
||
Comment 879•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=10673441&tree=Firefox
Linux mozilla-central build on 2012-04-05 12:03:25 PDT for push b7adf1bde2f6
Comment 880•13 years ago
|
||
Comment 881•13 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=ThunderbirdTrunk/1334052437.1334059616.13227.gz
Linux comm-central build on 2012/04/10 03:07:17
Comment 882•13 years ago
|
||
Comment 883•13 years ago
|
||
Comment 884•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=11141681&tree=Firefox
Linux QT mozilla-central build on 2012-04-23 18:11:54 PDT for push 21da3f655b30
slave: moz2-linux-slave09
Comment 885•13 years ago
|
||
Comment 886•13 years ago
|
||
Comment 887•13 years ago
|
||
Comment 888•13 years ago
|
||
Comment 889•13 years ago
|
||
Comment 890•13 years ago
|
||
Comment 891•13 years ago
|
||
Comment 892•13 years ago
|
||
Comment 893•13 years ago
|
||
Comment 894•13 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=11587063&tree=Mozilla-Inbound
You can't dereference a NULL nsCOMPtr with operator->(), but you already knew that.
Comment 895•13 years ago
|
||
This is that stack, FWIW:
###!!! ABORT: You can't dereference a NULL nsCOMPtr with operator->().: 'mRawPtr != 0', file ../../../../../dist/include/nsCOMPtr.h, line 809
libxpcom.so + 0x203c
nsCOMPtr<nsINavHistoryService>::operator-> [nsCOMPtr.h:809]
addURI [places_test_harness.h:193]
test_visited_notifies [mozalloc.h:229]
RunNextTest::Run [places_test_harness_tail.h:66]
nsThread::ProcessNextEvent [nsThread.cpp:656]
NS_ProcessNextEvent [nsThreadUtils.cpp:245]
main [places_test_harness_tail.h:138]
Comment 896•13 years ago
|
||
So in that particular assertion it's barfing here:
http://mxr.mozilla.org/mozilla-central/source/toolkit/components/places/tests/cpp/places_test_harness.h#193
because it's failing to get nsINavHistoryService.
called via this test: http://mxr.mozilla.org/mozilla-central/source/toolkit/components/places/tests/cpp/test_IHistory.cpp#185
Comment 897•13 years ago
|
||
(In reply to Ted Mielczarek [:ted] from comment #896)
> So in that particular assertion it's barfing here:
> http://mxr.mozilla.org/mozilla-central/source/toolkit/components/places/
> tests/cpp/places_test_harness.h#193
> because it's failing to get nsINavHistoryService.
>
> called via this test:
> http://mxr.mozilla.org/mozilla-central/source/toolkit/components/places/
> tests/cpp/test_IHistory.cpp#185
Presumably because InitSchema is failing here: http://mxr.mozilla.org/mozilla-central/source/toolkit/components/places/Database.cpp#456 which causes nsNavHistory::Init to fail as well.
Marco, do you know why this could happen?
Comment 898•13 years ago
|
||
(In reply to Ehsan Akhgari [:ehsan] from comment #897)
> Presumably because InitSchema is failing here:
> http://mxr.mozilla.org/mozilla-central/source/toolkit/components/places/
> Database.cpp#456 which causes nsNavHistory::Init to fail as well.
>
> Marco, do you know why this could happen?
The failures in comment 893 and comment 894 are different from the previous ones, did something change yesterday?
My previous assumption based on failures up to 892 was that some thread was running late, later than xpcom-shutdown, though these ones are quite the opposite.
Comment 899•13 years ago
|
||
Could be the spinning we do in bug 744294 that is changing a bit the rules here, the stack may be useful, will take a look at it.
Comment 900•13 years ago
|
||
Comment 901•13 years ago
|
||
Actually what fails is CreateBookmarkRoots, now if we'd have kept using NS_ENSURE_SUCCESS I'd have sort of a stack, but since we started using
if (NS_FAILED(rv)) return rv;
i have no idea where it bailed out.
Comment 902•13 years ago
|
||
though, the error is NS_ERROR_STORAGE_CONSTRAINT
Comment 903•13 years ago
|
||
The fact it started happening differently on Aurora too is puzzling, something must have changed in the tinderboxes or it's time sensitive.
The only constraints that I may think of are:
1. we generate a duplicate guid. Should not happen this often, we use /dev/urandom on Linux to generate random bytes.
2. we try to insert 2 identical roots, though this may happen only if CreateBookmarkRoots runs twice on the same database, that can't happen, we'd bail out earlier with a warning in InitSchema when failing to create existing tables, but I don't see any other warnings here.
I'll put back NS_ENSURE_SUCCESS and try to get a failure on try, to check which query is failing.
Comment 904•13 years ago
|
||
Comment 905•13 years ago
|
||
Comment 906•13 years ago
|
||
Comment 907•13 years ago
|
||
Comment 908•13 years ago
|
||
Comment 909•13 years ago
|
||
Comment 910•13 years ago
|
||
fwiw, I tried to reproduce this on try with some additional logging and error checking, but out of 100 runs I got no failures :(
Comment 911•12 years ago
|
||
Comment 912•12 years ago
|
||
Comment 913•12 years ago
|
||
Comment 914•12 years ago
|
||
Comment 915•12 years ago
|
||
Comment 916•12 years ago
|
||
Comment 917•12 years ago
|
||
Comment 918•12 years ago
|
||
Comment 919•12 years ago
|
||
Comment 920•12 years ago
|
||
Comment 921•12 years ago
|
||
Comment 922•12 years ago
|
||
Comment 923•12 years ago
|
||
http://tinderbox.mozilla.org/showlog.cgi?log=SeaMonkey/1341870379.1341872496.6327.gz
Linux x86-64 comm-central-trunk build on 2012/07/09 14:46:19
Comment 924•12 years ago
|
||
Comment 925•12 years ago
|
||
Comment 926•12 years ago
|
||
Comment 927•12 years ago
|
||
Comment 928•12 years ago
|
||
Comment 929•12 years ago
|
||
Comment 930•12 years ago
|
||
Comment 931•12 years ago
|
||
Comment 932•12 years ago
|
||
Comment 933•12 years ago
|
||
Comment 934•12 years ago
|
||
Comment 935•12 years ago
|
||
https://tbpl.mozilla.org/php/getParsedLog.php?id=14669171&tree=Mozilla-Inbound
Linux mozilla-inbound leak test build on 2012-08-24 05:50:43 PDT for push e048ac9eb279
slave: mv-moz2-linux-ix-slave04
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_unvisited_does_not_notify_part1.
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 818
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 818
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 410
WARNING: NS_ENSURE_TRUE(mDB) failed: file ../../../../toolkit/components/places/nsNavHistory.cpp, line 298
WARNING: NS_ENSURE_TRUE(serv) failed: file ../../../../toolkit/components/places/nsNavHistory.h, line 113
WARNING: NS_ENSURE_TRUE(navHistory) failed: file ../../../../toolkit/components/places/History.cpp, line 324
TEST-INFO | (../../../../../../toolkit/components/places/tests/cpp/test_IHistory.cpp) | Running test_visited_notifies.
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 818
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 818
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80630003: file ../../../../toolkit/components/places/Database.cpp, line 410
WARNING: NS_ENSURE_TRUE(mDB) failed: file ../../../../toolkit/components/places/nsNavHistory.cpp, line 298
###!!! ABORT: You can't dereference a NULL nsCOMPtr with operator->().: 'mRawPtr != 0', file ../../../../../dist/include/nsCOMPtr.h, line 781
NS_DebugBreak+0x00000026 [/builds/slave/m-in-lnx-dbg/build/obj-firefox/dist/bin/libxpcom.so +0x0000203C]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x0000335C]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x000048D9]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00005F93]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00002D96]
UNKNOWN [/builds/slave/m-in-lnx-dbg/build/obj-firefox/dist/bin/libxul.so +0x012E17C7]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x000132E0]
UNKNOWN [../../../../../dist/bin/test_IHistory +0x00007245]
__libc_start_main+0x000000DC [/lib/libc.so.6 +0x00015DEC]
###!!! ABORT: You can't dereference a NULL nsCOMPtr with operator->().: 'mRawPtr != 0', file ../../../../../dist/include/nsCOMPtr.h, line 781
/bin/sh: line 1: 30773 Segmentation fault XPCOM_DEBUG_BREAK=stack-and-abort /builds/slave/m-in-lnx-dbg/build/obj-firefox/dist/bin/run-mozilla.sh ../../../../../dist/bin/$f
make[5]: *** [check] Error 139
Comment 936•12 years ago
|
||
Comment 937•12 years ago
|
||
Updated•12 years ago
|
Keywords: intermittent-failure
Comment 938•12 years ago
|
||
Since I fixed bug 787176, we ought to be able to fix this test to generate a minidump and thus a usable stack. It should be as simple as copying this block of code:
http://mxr.mozilla.org/mozilla-central/source/media/mtransport/test/mtransport_test_utils.h#54
to somewhere in here:
http://mxr.mozilla.org/mozilla-central/source/toolkit/components/places/tests/cpp/places_test_harness_tail.h#84
Depends on: 787176
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 940•12 years ago
|
||
we don't see the segfault from September, closing.
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → WORKSFORME
Whiteboard: [please leave open, gathering dust]
You need to log in
before you can comment on or make changes to this bug.
Description
•