Closed
Bug 445339
Opened 16 years ago
Closed 16 years ago
test_bug_406857.js / test_bug_395092.js crashed qm-centos5-moz2-01
Categories
(Toolkit :: Downloads API, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: mossop, Assigned: ted)
References
Details
(Keywords: crash, fixed1.9.0.2, intermittent-failure)
Attachments
(1 file)
1.09 KB,
patch
|
Gavin
:
review+
|
Details | Diff | Splinter Review |
../../../../_tests/xpcshell-simple/test_dm/unit/test_bug_406857.js: /builds/slave/linux/build/tools/test-harness/xpcshell-simple/test_all.sh: line 111: 1794 Segmentation fault (core dumped) NATIVE_TOPSRCDIR="$native_topsrcdir" TOPSRCDIR="$topsrcdir" $xpcshell -s $headfiles -f $t $tailfiles 2>$t.log 1>&2
FAIL
../../../../_tests/xpcshell-simple/test_dm/unit/test_bug_406857.js.log:
>>>>>>>
*** Throwing trying to get CurProcD
*** Throwing trying to get MozBinD
*** test pending
*** Throwing trying to get TmpD
*** Throwing trying to get cachePDir
*** Throwing trying to get ProfLD
*** Throwing trying to get cachePDir
*** Throwing trying to get ProfLD
*** test pending
*** test finished
*** running event loop
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_rc_get_style_by_paths: assertion `GTK_IS_SETTINGS (settings)' failed
(process:1794): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(process:1794): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_colormap_get_visual: assertion `GDK_IS_COLORMAP (colormap)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_enable_synchronized_configure: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_set_background: assertion `GTK_IS_STYLE (style)' failed
(process:1794): Gtk-CRITICAL **: gtk_paint_flat_box: assertion `GTK_IS_STYLE (style)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_type_hint: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_accept_focus: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_focus_on_map: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_modal_hint: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gtk-CRITICAL **: gtk_window_realize_icon: assertion `widget->window != NULL' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_colormap_get_visual: assertion `GDK_IS_COLORMAP (colormap)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_set_background: assertion `GTK_IS_STYLE (style)' failed
(process:1794): Gtk-CRITICAL **: gtk_style_set_background: assertion `GTK_IS_STYLE (style)' failed
(process:1794): Gtk-CRITICAL **: gtk_style_set_background: assertion `GTK_IS_STYLE (style)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_show: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_show: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: _gdk_window_destroy_hierarchy: assertion `window != NULL' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: _gdk_window_destroy_hierarchy: assertion `window != NULL' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: _gdk_window_destroy_hierarchy: assertion `window != NULL' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gtk-CRITICAL **: gtk_style_detach: assertion `GTK_IS_STYLE (style)' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gtk-CRITICAL **: gtk_style_detach: assertion `GTK_IS_STYLE (style)' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gtk-CRITICAL **: gtk_style_detach: assertion `GTK_IS_STYLE (style)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: _gdk_window_destroy_hierarchy: assertion `window != NULL' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gtk-CRITICAL **: gtk_style_detach: assertion `GTK_IS_STYLE (style)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: _gdk_window_destroy_hierarchy: assertion `window != NULL' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
(process:1794): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(process:1794): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_colormap_get_visual: assertion `GDK_IS_COLORMAP (colormap)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_enable_synchronized_configure: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_set_background: assertion `GTK_IS_STYLE (style)' failed
(process:1794): Gtk-CRITICAL **: gtk_paint_flat_box: assertion `GTK_IS_STYLE (style)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_type_hint: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_accept_focus: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_focus_on_map: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_modal_hint: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gtk-CRITICAL **: gtk_window_realize_icon: assertion `widget->window != NULL' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_colormap_get_visual: assertion `GDK_IS_COLORMAP (colormap)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_back_pixmap: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gdk-CRITICAL **: gdk_drawable_get_colormap: assertion `GDK_IS_DRAWABLE (drawable)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_background: assertion `GDK_IS_WINDOW (window)' failed
(process:1794): Gtk-CRITICAL **: gtk_style_set_background: assertion `GTK_IS_STYLE (style)' failed
(process:1794): GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed
(process:1794): Gdk-CRITICAL **: gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed
(process:1794): Gdk-CRITICAL **: gdk_window_set_user_data: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: gtk_style_attach: assertion `window != NULL' failed
(process:1794): Gtk-CRITICAL **: _gtk_style_peek_property_value: assertion `GTK_IS_STYLE (style)' failed
<<<<<<<
Comment 1•16 years ago
|
||
what on earth is gtk doing in an xpcshell test case? It'd be nice to be able to get a backtrace on this - perhaps someone in build can help?
Comment 2•16 years ago
|
||
Urgh, it looks like the machine was clobbered before I got a chance to look. Don't think we can get a backtrace now :(
Comment 3•16 years ago
|
||
We can keep this open in case it does it again I suppose.
Assignee | ||
Comment 4•16 years ago
|
||
As it happens, it does this fairly often: http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1216551755.1216555074.11888.gz
Assignee | ||
Comment 5•16 years ago
|
||
Just looking into this, and noting to myself that the "*** test finished" in the log is not the do_test_finished from the testcase, but from here: http://hg.mozilla.org/mozilla-central/index.cgi/annotate/15efbdafa0a7/tools/test-harness/xpcshell-simple/tail.js#l42 So the test harness starts pumping events, and then something breaks and it crashes, looks like before it ever hits the event listener in the test.
Comment 6•16 years ago
|
||
could we get a backtrace?
Assignee | ||
Comment 7•16 years ago
|
||
The linux unittest machines aren't even building with symbols currently: http://hg.mozilla.org/build/buildbot-configs/index.cgi/file/64f02c011ff8/mozilla2-unittest/mozconfig-firefox-linux We'd have to enable symbols at least, and even then I'm not sure what we'd do to catch the crash. We really do need a better way to handle this. robcee, bhearsum: any ideas?
Assignee | ||
Comment 8•16 years ago
|
||
I realized that I had a Linux VM with a m-c tree built, so I rebuilt and ran this test a few times, and got a core, and a stack: #0 0x417dfb21 in gtk_widget_style_get_valist () from /usr/lib/libgtk-x11-2.0.so.0 #1 0x417dfd12 in gtk_widget_style_get () from /usr/lib/libgtk-x11-2.0.so.0 #2 0x409a5505 in nsLookAndFeel::InitLookAndFeel () from ../../../../dist/bin/libxul.so #3 0x409a58d8 in nsLookAndFeel::nsLookAndFeel () from ../../../../dist/bin/libxul.so #4 0x409a3c5f in nsLookAndFeelConstructor () from ../../../../dist/bin/libxul.so #5 0x40a4843e in nsGenericFactory::CreateInstance () from ../../../../dist/bin/libxul.so #6 0x40a76f5d in nsComponentManagerImpl::CreateInstanceByContractID () from ../../../../dist/bin/libxul.so #7 0x40a763d5 in nsComponentManagerImpl::GetServiceByContractID () from ../../../../dist/bin/libxul.so #8 0x40a433ee in nsGetServiceByContractID::operator() () from ../../../../dist/bin/libxul.so #9 0x40a426d5 in nsCOMPtr_base::assign_from_gs_contractid () from ../../../../dist/bin/libxul.so #10 0x40885ed0 in nsAlertsService::ShowAlertNotification () from ../../../../dist/bin/libxul.so #11 0x40880c9a in nsDownload::SetState () from ../../../../dist/bin/libxul.so #12 0x408818b2 in nsDownload::OnStateChange () from ../../../../dist/bin/libxul.so #13 0x40850126 in nsWebBrowserPersist::OnStopRequest () from ../../../../dist/bin/libxul.so #14 0x402e1550 in nsStreamListenerTee::OnStopRequest () from ../../../../dist/bin/libxul.so #15 0x403342ff in nsHttpChannel::OnStopRequest () from ../../../../dist/bin/libxul.so #16 0x402c9b9c in nsInputStreamPump::OnStateStop () from ../../../../dist/bin/libxul.so #17 0x402c9e83 in nsInputStreamPump::OnInputStreamReady () from ../../../../dist/bin/libxul.so #18 0x40a64cb9 in nsInputStreamReadyEvent::Run () from ../../../../dist/bin/libxul.so #19 0x40a7a5a4 in nsThread::ProcessNextEvent () from ../../../../dist/bin/libxul.so #20 0x40a86e0d in NS_InvokeByIndex_P () from ../../../../dist/bin/libxul.so #21 0x402ac160 in XPCWrappedNative::CallMethod () from ../../../../dist/bin/libxul.so #22 0x402b1982 in XPC_WN_CallMethod () from ../../../../dist/bin/libxul.so #23 0x40085951 in js_Invoke () from ../../../../dist/bin/libmozjs.so #24 0x4007eb9a in js_Interpret () from ../../../../dist/bin/libmozjs.so #25 0x400852d5 in js_Execute () from ../../../../dist/bin/libmozjs.so #26 0x40050a70 in JS_ExecuteScript () from ../../../../dist/bin/libmozjs.so Looks like you're triggering the alerts service. Probably intermittent due to VM timing issues.
Assignee | ||
Comment 9•16 years ago
|
||
Looks like the same crash in test_bug_395092.js: http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1216742107.1216745473.26323.gz#err0
Summary: test_bug_406857.js crashed qm-centos5-moz2-01 → test_bug_406857.js / test_bug_395092.js crashed qm-centos5-moz2-01
Comment 10•16 years ago
|
||
Shawn now that we have a stack can you take a look?
Assignee: nobody → sdwilsh
Comment 11•16 years ago
|
||
in theory the test should be able to set browser.download.manager.showAlertOnComplete to false before it starts testing... i'm going to work w/ ted on chasing both ends...
Assignee | ||
Comment 12•16 years ago
|
||
I need to test this in my Linux VM, but all the tests still pass on Windows with this patch applied.
Assignee | ||
Comment 13•16 years ago
|
||
Comment on attachment 330812 [details] [diff] [review] disable alert service notifications in the xpcshell tests This appears to stop the crash for me. sdwilsh is probably not the best reviewer, seeing as how he's not around right now.
Attachment #330812 -
Flags: review?(sdwilsh)
Comment 14•16 years ago
|
||
Comment on attachment 330812 [details] [diff] [review] disable alert service notifications in the xpcshell tests >diff --git a/toolkit/components/downloads/test/unit/head_download_manager.js b/toolkit/components/downloads/test/unit/head_download_manager.js >+let ps = Cc['@mozilla.org/preferences-service;1'].getService(); >+ps instanceof Ci.nsIPrefBranch; Just put the Ci.nsIPrefBranch in the call to getService().
Attachment #330812 -
Flags: review?(sdwilsh) → review+
Assignee | ||
Comment 15•16 years ago
|
||
Pushed to mozilla-central: http://hg.mozilla.org/mozilla-central/index.cgi/rev/4e82fbde2583 I'll file a followup on figuring out why the alerts service crashes like this.
Assignee: sdwilsh → ted.mielczarek
Assignee | ||
Updated•16 years ago
|
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 16•16 years ago
|
||
Filed bug 446695 on the alerts service crash.
Updated•16 years ago
|
Product: Firefox → Toolkit
Assignee | ||
Comment 17•16 years ago
|
||
Checked into CVS: Checking in toolkit/components/downloads/test/unit//head_download_manager.js; /cvsroot/mozilla/toolkit/components/downloads/test/unit/head_download_manager.js ,v <-- head_download_manager.js new revision: 1.10; previous revision: 1.9 done
Keywords: fixed1.9.0.2
Updated•16 years ago
|
Whiteboard: [orange]
Updated•12 years ago
|
Keywords: intermittent-failure
Updated•12 years ago
|
Whiteboard: [orange]
You need to log in
before you can comment on or make changes to this bug.
Description
•