Make the XUL alerts tests work in e10s

RESOLVED FIXED in Firefox 49

Status

()

RESOLVED FIXED
3 years ago
2 years ago

People

(Reporter: RyanVM, Assigned: lina)

Tracking

(Blocks: 1 bug)

unspecified
mozilla49
Unspecified
Windows
Points:
---

Firefox Tracking Flags

(e10s+, firefox49 fixed)

Details

Attachments

(2 attachments)

(Reporter)

Description

3 years ago
Created attachment 8741614 [details]
test screenshot

Looks like this got caught up in one of the mass disablings at one point and a bug never got filed for it. Some kind of permissions issue? William, do you have cycles to look into it?

https://treeherder.mozilla.org/logviewer.html#?job_id=19520076&repo=try

20:11:09     INFO -  1043 INFO TEST-START | toolkit/components/alerts/test/test_principal.html
20:11:09     INFO -  TEST-INFO | started process screenshot
20:11:10     INFO -  TEST-INFO | screenshot: exit 0
20:11:10     INFO -  1044 INFO TEST-PASS | toolkit/components/alerts/test/test_principal.html | Alerts service exists in this application
20:11:10     INFO -  1045 INFO TEST-PASS | toolkit/components/alerts/test/test_principal.html | Alerts should not be present at the start of the test.
20:11:10     INFO -  1046 INFO SpawnTask.js | Entering test testNoPrincipal
20:11:10     INFO -  1047 INFO TEST-UNEXPECTED-FAIL | toolkit/components/alerts/test/test_principal.html | Should show alert
20:11:10     INFO -      observe@toolkit/components/alerts/test/test_principal.html:31:9
20:11:10     INFO -  JavaScript error: http://mochi.test:8888/tests/toolkit/components/alerts/test/test_principal.html, line 33: TypeError: alertWindow is null
20:11:29     INFO -  1048 INFO TEST-PASS | toolkit/components/alerts/test/test_principal.html | Should hide alert
20:11:29     INFO -  1049 INFO TEST-PASS | toolkit/components/alerts/test/test_principal.html | Should omit source without principal
20:11:29     INFO -  1050 INFO SpawnTask.js | Leaving test testNoPrincipal
20:11:29     INFO -  1051 INFO SpawnTask.js | Entering test testSystemPrincipal
20:11:29     INFO -  Not taking screenshot here: see the one that was previously logged
20:11:29     INFO -  1052 INFO TEST-UNEXPECTED-FAIL | toolkit/components/alerts/test/test_principal.html | Should show alert
20:11:29     INFO -      observe@toolkit/components/alerts/test/test_principal.html:31:9
20:11:29     INFO -  JavaScript error: http://mochi.test:8888/tests/toolkit/components/alerts/test/test_principal.html, line 33: TypeError: alertWindow is null
20:11:49     INFO -  1053 INFO TEST-PASS | toolkit/components/alerts/test/test_principal.html | Should hide alert
20:11:49     INFO -  1054 INFO TEST-PASS | toolkit/components/alerts/test/test_principal.html | Should omit source for system principal
20:11:49     INFO -  1055 INFO SpawnTask.js | Leaving test testSystemPrincipal
20:11:49     INFO -  1056 INFO SpawnTask.js | Entering test testExpandedPrincipal
20:11:49     INFO -  [Child 2468] ###!!! ABORT: Unable to serialize principal.: file c:/builds/moz2_slave/try-w32-0000000000000000000000/build/src/dom/ipc/PermissionMessageUtils.cpp, line 32
20:11:49     INFO -  [Child 2468] ###!!! ABORT: Unable to serialize principal.: file c:/builds/moz2_slave/try-w32-0000000000000000000000/build/src/dom/ipc/PermissionMessageUtils.cpp, line 32
20:11:50     INFO -  ###!!! [Parent][MessageChannel] Error: (msgtype=0x2C0074,name=PBrowser::Msg_Destroy) Channel error: cannot send/recv
20:17:20  WARNING -  TEST-UNEXPECTED-TIMEOUT | toolkit/components/alerts/test/test_principal.html | application timed out after 330 seconds with no output
20:17:20     INFO -  Determining child pids from psutil
20:17:20     INFO -  Found child pids: []
20:17:20     INFO -  Killing process: 4016
20:17:20     INFO -  Not taking screenshot here: see the one that was previously logged
20:17:20     INFO -  TEST-INFO | Main app process: exit 1
20:17:20  WARNING -  TEST-UNEXPECTED-FAIL | toolkit/components/alerts/test/test_principal.html | application terminated with exit code 1
20:17:20     INFO -  runtests.py | Application ran for: 0:06:37.886000
20:17:20     INFO -  zombiecheck | Reading PID log: c:\docume~1\cltbld~1.t-x\locals~1\temp\tmpunqrotpidlog
20:17:20     INFO -  ==> process 4016 launched child process 2852 ("C:\slave\test\build\application\firefox\plugin-container.exe" --channel="4016.0.203445406\442341071" -greomni "C:\slave\test\build\application\firefox\omni.ja" -appomni "C:\slave\test\build\application\firefox\browser\omni.ja" -sandbox -appdir "C:\slave\test\build\application\firefox\browser"  4016 "\\.\pipe\gecko-crash-server-pipe.4016" tab)
20:17:20     INFO -  ==> process 4016 launched child process 2468 ("C:\slave\test\build\application\firefox\plugin-container.exe" --channel="4016.5.459562118\752332525" -greomni "C:\slave\test\build\application\firefox\omni.ja" -appomni "C:\slave\test\build\application\firefox\browser\omni.ja" -sandbox -appdir "C:\slave\test\build\application\firefox\browser"  4016 "\\.\pipe\gecko-crash-server-pipe.4016" tab)
20:17:20     INFO -  zombiecheck | Checking for orphan process with PID: 2852
20:17:20     INFO -  zombiecheck | Checking for orphan process with PID: 2468
20:17:20     INFO -  mozcrash Downloading symbols from: https://queue.taskcluster.net/v1/task/Us3N80OXRUq2wC5PYeY9QA/artifacts/public/build/firefox-48.0a1.en-US.win32.crashreporter-symbols.zip
20:17:26     INFO -  mozcrash Copy/paste: C:\slave\test\build\win32-minidump_stackwalk.exe c:\docume~1\cltbld~1.t-x\locals~1\temp\tmpffogbr.mozrunner\minidumps\6cc828fe-ba57-420c-8852-686960bd4d3c.dmp c:\docume~1\cltbld~1.t-x\locals~1\temp\tmpdn7xsc
20:17:34     INFO -  mozcrash Saved minidump as C:\slave\test\build\blobber_upload_dir\6cc828fe-ba57-420c-8852-686960bd4d3c.dmp
20:17:34     INFO -  mozcrash Saved app info as C:\slave\test\build\blobber_upload_dir\6cc828fe-ba57-420c-8852-686960bd4d3c.extra
20:17:34  WARNING -  PROCESS-CRASH | toolkit/components/alerts/test/test_principal.html | application crashed [@ mozalloc_abort(char const * const)]
20:17:34     INFO -  Crash dump filename: c:\docume~1\cltbld~1.t-x\locals~1\temp\tmpffogbr.mozrunner\minidumps\6cc828fe-ba57-420c-8852-686960bd4d3c.dmp
20:17:34     INFO -  Operating system: Windows NT
20:17:34     INFO -                    5.1.2600 Service Pack 3
20:17:34     INFO -  CPU: x86
20:17:34     INFO -       GenuineIntel family 6 model 30 stepping 5
20:17:34     INFO -       8 CPUs
20:17:34     INFO -  Crash reason:  EXCEPTION_BREAKPOINT
20:17:34     INFO -  Crash address: 0x34a28ad
20:17:34     INFO -  Assertion: Unknown assertion type 0x00000000
20:17:34     INFO -  Process uptime: 64 seconds
20:17:34     INFO -  Thread 0 (crashed)
20:17:34     INFO -   0  mozglue.dll!mozalloc_abort(char const * const) [mozalloc_abort.cpp:38e66d0f656e : 33 + 0x0]
20:17:34     INFO -      eip = 0x034a28ad   esp = 0x00129050   ebp = 0x00129050   ebx = 0x00000002
20:17:34     INFO -      esi = 0x00000000   edi = 0x036e45b0   eax = 0x00000000   ecx = 0x03737c83
20:17:34     INFO -      edx = 0x03786140   efl = 0x00000216
20:17:34     INFO -      Found by: given as instruction pointer in context
20:17:34     INFO -   1  xul.dll!NS_DebugBreak [nsDebugImpl.cpp:38e66d0f656e : 434 + 0xd]
20:17:34     INFO -      eip = 0x00c389ce   esp = 0x00129058   ebp = 0x00129488
20:17:34     INFO -      Found by: call frame info
20:17:34     INFO -   2  xul.dll!IPC::ParamTraits<IPC::Principal>::Write(IPC::Message *,IPC::Principal const &) [PermissionMessageUtils.cpp:38e66d0f656e : 32 + 0x14]
20:17:34     INFO -      eip = 0x01ade03e   esp = 0x00129490   ebp = 0x001294bc
20:17:34     INFO -      Found by: call frame info
20:17:34     INFO -   3  xul.dll!IPC::ParamTraits<nsIAlertNotification *>::Write(IPC::Message *,nsIAlertNotification * const &) [AlertNotificationIPCSerializer.h:38e66d0f656e : 67 + 0x17]
20:17:34     INFO -      eip = 0x01036401   esp = 0x001294c4   ebp = 0x00129544
20:17:34     INFO -      Found by: call frame info
20:17:34     INFO -   4  xul.dll!mozilla::dom::PContentChild::SendShowAlert(nsIAlertNotification * const &) [PContentChild.cpp:38e66d0f656e : 2784 + 0x6]
20:17:34     INFO -      eip = 0x010356ba   esp = 0x0012954c   ebp = 0x00129568
20:17:34     INFO -      Found by: call frame info
20:17:34     INFO -   5  xul.dll!nsAlertsService::ShowAlert(nsIAlertNotification *,nsIObserver *) [nsAlertsService.cpp:38e66d0f656e : 223 + 0xe]
20:17:34     INFO -      eip = 0x02066b20   esp = 0x00129570   ebp = 0x00129620
20:17:34     INFO -      Found by: call frame info
20:17:34     INFO -   6  xul.dll!nsXULAlerts::ShowAlertNotification(nsAString_internal const &,nsAString_internal const &,nsAString_internal const &,bool,nsAString_internal const &,nsIObserver *,nsAString_internal const &,nsAString_internal const &,nsAString_internal const &,nsAString_internal const &,nsIPrincipal *,bool) [nsAlertsService.cpp:38e66d0f656e : 204 + 0xf]
20:17:34     INFO -      eip = 0x02066c66   esp = 0x00129628   ebp = 0x0012964c
20:17:34     INFO -      Found by: call frame info
20:17:34     INFO -   7  xul.dll!NS_InvokeByIndex + 0x27
20:17:34     INFO -      eip = 0x00c7ac07   esp = 0x00129654   ebp = 0x001296b8
20:17:34     INFO -      Found by: call frame info
20:17:34     INFO -   8  xul.dll!XPCWrappedNative::CallMethod(XPCCallContext &,XPCWrappedNative::CallMode) [XPCWrappedNative.cpp:38e66d0f656e : 1367 + 0xb17]
20:17:34     INFO -      eip = 0x01091225   esp = 0x001296c0   ebp = 0x00129848
20:17:34     INFO -      Found by: previous frame's frame pointer
20:17:34     INFO -   9  xul.dll!XPC_WN_CallMethod(JSContext *,unsigned int,JS::Value *) [XPCWrappedNativeJSOps.cpp:38e66d0f656e : 1128 + 0xb]
20:17:34     INFO -      eip = 0x0109ecc8   esp = 0x00129850   ebp = 0x001298e8
20:17:34     INFO -      Found by: previous frame's frame pointer
20:17:34     INFO -  10  xul.dll!js::InternalCallOrConstruct(JSContext *,JS::CallArgs const &,js::MaybeConstruct) [Interpreter.cpp:38e66d0f656e : 480 + 0x5d]
20:17:34     INFO -      eip = 0x025a6663   esp = 0x001298f0   ebp = 0x00129938
20:17:34     INFO -      Found by: call frame info
Flags: needinfo?(wchen)

Updated

2 years ago
tracking-e10s: ? → +
(Assignee)

Comment 1

2 years ago
It looks like there are a couple of issues here...

* Expanded principals can't be sent over IPC. That's OK; we don't expect content to show alerts using an expanded principal, anyway, so we can remove this.
* The tests use `nsIWindowWatcher` and `nsIWindowMediator`, which I think need to be updated for e10s.
Assignee: nobody → kcambridge
Status: NEW → ASSIGNED
Flags: needinfo?(wchen)
Summary: toolkit/components/alerts/test/test_principal.html fails on Windows e10s → Fix XUL alert tests to support e10s
(Assignee)

Comment 2

2 years ago
Created attachment 8746143 [details]
MozReview Request: Bug 1264842 - Make the XUL alerts tests work in e10s. r=jaws

Review commit: https://reviewboard.mozilla.org/r/49265/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/49265/
Attachment #8746143 - Flags: review?(MattN+bmo)
Attachment #8746143 - Flags: review?(MattN+bmo) → review?(jaws)
Comment on attachment 8746143 [details]
MozReview Request: Bug 1264842 - Make the XUL alerts tests work in e10s. r=jaws

https://reviewboard.mozilla.org/r/49265/#review46813

::: toolkit/components/alerts/test/test_alerts_noobserve.html:86
(Diff revision 1)
> +ok(!chromeScript.sendSyncMessage("anyXULAlertsVisible")[0][0],
> +   "Alerts should not be present at the start of the test.");

What is the [0][0] for here? I'm assuming this is related to the {x, y} that is used elsewhere. Please use [0]["x"] here, at the least.
Attachment #8746143 - Flags: review?(jaws) → review+
(Assignee)

Comment 4

2 years ago
https://reviewboard.mozilla.org/r/49265/#review46813

> What is the [0][0] for here? I'm assuming this is related to the {x, y} that is used elsewhere. Please use [0]["x"] here, at the least.

I think the first [0] is the index of the nsIMessageListener, and the second is the chrome script listener, per MattN's comment: https://dxr.mozilla.org/mozilla-central/rev/1461a4071341c282afcf7b72e33036412d2251d4/testing/mochitest/tests/Harness_sanity/test_SpecialPowersLoadChromeScript.html#37-42. I'll add a comment here to clarify.
(Assignee)

Updated

2 years ago
Summary: Fix XUL alert tests to support e10s → Make the XUL alerts tests work in e10s
(Assignee)

Comment 6

2 years ago
Comment on attachment 8746143 [details]
MozReview Request: Bug 1264842 - Make the XUL alerts tests work in e10s. r=jaws

Review request updated; see interdiff: https://reviewboard.mozilla.org/r/49265/diff/1-2/
Attachment #8746143 - Attachment description: MozReview Request: Bug 1264842 - Fix XUL alert tests to support e10s. r?MattN → MozReview Request: Bug 1264842 - Make the XUL alerts tests work in e10s. r=jaws
(Assignee)

Updated

2 years ago
Keywords: checkin-needed

Comment 8

2 years ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/95d1ed3bea77
Status: ASSIGNED → RESOLVED
Last Resolved: 2 years ago
status-firefox49: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla49
You need to log in before you can comment on or make changes to this bug.