Closed Bug 1011211 Opened 5 years ago Closed 5 years ago

Intermittent test_301_redirect.html, test_302_redirect.html, test_303_redirect.html, test_307_redirect.html | Test timed out.

Categories

(Core :: Security, defect)

29 Branch
ARM
Gonk (Firefox OS)
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla33
Tracking Status
firefox31 --- unaffected
firefox32 --- fixed
firefox33 --- fixed
firefox-esr24 --- unaffected
b2g-v1.4 --- unaffected
b2g-v2.0 --- fixed
b2g-v2.1 --- fixed

People

(Reporter: RyanVM, Assigned: grobinson)

References

Details

(Keywords: intermittent-failure)

Attachments

(2 files)

https://tbpl.mozilla.org/php/getParsedLog.php?id=39749692&tree=Mozilla-Inbound

b2g_emulator_vm mozilla-inbound debug test mochitest-debug-1 on 2014-05-15 10:41:24 PDT for push a0d2fc4bb053
slave: tst-linux64-spot-448

10:59:03     INFO -  78 INFO TEST-START | /tests/content/base/test/csp/test_302_redirect.html
10:59:03     INFO -  [Child 726] WARNING: Transparent content with displayports can be expensive.: file ../../../gecko/layout/base/nsDisplayList.cpp, line 1349
10:59:04     INFO -  [Child 726] WARNING: Transparent content with displayports can be expensive.: file ../../../gecko/layout/base/nsDisplayList.cpp, line 1349
10:59:05     INFO -  [Child 726] WARNING: NS_ENSURE_TRUE(nsContentUtils::GetCurrentJSContext()) failed: file ../../../gecko/docshell/base/nsDocShell.cpp, line 8662
10:59:05     INFO -  [Child 726] WARNING: NS_ENSURE_TRUE(globalObject && globalObject->GetGlobalJSObject()) failed: file ../../../../../gecko/content/html/document/src/nsHTMLContentSink.cpp, line 740
10:59:05     INFO -  [Child 726] WARNING: Subdocument container has no frame: file ../../../gecko/layout/base/nsDocumentViewer.cpp, line 2442
10:59:06     INFO -  [Child 726] WARNING: Transparent content with displayports can be expensive.: file ../../../gecko/layout/base/nsDisplayList.cpp, line 1349
10:59:06     INFO -  [Parent 668] WARNING: Already have a paint with this sequence number: file ../../dist/include/mozilla/layers/APZTestData.h, line 50
10:59:08     INFO -  System JS : ERROR chrome://specialpowers/content/specialpowersAPI.js:1078 - TypeError: obj is null
10:59:08     INFO -  [Child 726] WARNING: Subdocument container has no frame: file ../../../gecko/layout/base/nsDocumentViewer.cpp, line 2442
10:59:08     INFO -  [Child 726] WARNING: Transparent content with displayports can be expensive.: file ../../../gecko/layout/base/nsDisplayList.cpp, line 1349
11:04:05     INFO -  79 INFO TEST-UNEXPECTED-FAIL | /tests/content/base/test/csp/test_302_redirect.html | Test timed out.
11:04:06     INFO -  80 INFO TEST-INFO | MEMORY STAT vsize after test: 113840128
11:04:06     INFO -  81 INFO TEST-INFO | MEMORY STAT residentFast after test: 55877632
11:04:06     INFO -  82 INFO TEST-INFO | MEMORY STAT heapAllocated after test: 17044744
11:04:07     INFO -  83 INFO TEST-END | /tests/content/base/test/csp/test_302_redirect.html | finished in 303664ms
https://tbpl.mozilla.org/php/getParsedLog.php?id=40967350&tree=Mozilla-Inbound
Summary: Intermittent test_302_redirect.html | Test timed out. → Intermittent test_302_redirect.html,test_303_redirect.html | Test timed out.
https://tbpl.mozilla.org/php/getParsedLog.php?id=41060099&tree=Mozilla-Inbound
Summary: Intermittent test_302_redirect.html,test_303_redirect.html | Test timed out. → Intermittent test_301_redirect.html,test_302_redirect.html,test_303_redirect.html | Test timed out.
https://tbpl.mozilla.org/php/getParsedLog.php?id=41197695&tree=B2g-Inbound

This were enabled shortly before this bug was filed, by bug 986077.

Garrett, would you mind taking a look? :-)
Flags: needinfo?(grobinson)
Summary: Intermittent test_301_redirect.html,test_302_redirect.html,test_303_redirect.html | Test timed out. → Intermittent test_301_redirect.html, test_302_redirect.html, test_303_redirect.html, test_307_redirect.html | Test timed out.
Here's what happened:

1. the "specialpowers-http-notify-request" proxy returns null for the observer subject
2. Previously, the observer subject was non-null (nsIHttpChannel for http-on-modify-request), but this was untenable on B2G so we switched to using the proxy.
3. Other tests had the "canQI" check removed, see https://bugzilla.mozilla.org/page.cgi?id=splinter.html&bug=945268&attachment=8358114
4. I forgot to remove this (now bogus, since you can't QI null) when I turned on these additional tests in bug 986077

The failures are intermittent because these tests should only be called for "csp-on-violate-policy" (which is not proxied, doesn't need to be). It appears that sometimes a http-on-modify-request => specialpowers-on-notify-request occurs before the csp-on-violate-policy, which triggers the failure (attempts to QI null). This could be due to other background request activity by the browser (Safe Browsing, update checks, etc.), or it could indicate that the redirect tests are intermittently failing (i.e., an actual failure).

Either way, this patch should resolve the intermittent oranges, and we can follow-up on the redirect tests later if needed.
Assignee: nobody → grobinson
Status: NEW → ASSIGNED
Attachment #8435949 - Flags: review?(sstamm)
Flags: needinfo?(grobinson)
Comment on attachment 8435949 [details] [diff] [review]
fix_redirect_tests.patch

Review of attachment 8435949 [details] [diff] [review]:
-----------------------------------------------------------------

Thanks for your analysis, Garrett.  No need to QI, so makes sense since the test wasn't finishing if can_QI failed.
Attachment #8435949 - Flags: review?(sstamm) → review+
Blocks: 988616
https://hg.mozilla.org/mozilla-central/rev/dea1f56f3feb

Leaving open given the more recent inbound failures above.
Flags: in-testsuite+
About to push patches for bug 988616 to inbound again. If it causes this to perma-orange again, I'm going to disable the CSP redirect tests on B2G and file a follow-up to investigate later.
So far, so good! I'll leave this open for now in case the intermittent oranges return.
(In reply to Garrett Robinson [:grobinson] from comment #33)
> So far, so good! I'll leave this open for now in case the intermittent
> oranges return.

(In reply to TBPL Robot from comment #37)
> Tomcat
> https://tbpl.mozilla.org/php/getParsedLog.php?id=41962638&tree=B2g-Inbound
> b2g_emulator_vm b2g-inbound opt test mochitest-1 on 2014-06-18 06:15:35
> revision: 0b686636b2a8
> slave: tst-linux64-spot-717
> 
> 89 INFO TEST-UNEXPECTED-FAIL |
> /tests/content/base/test/csp/test_303_redirect.html | Test timed out.
> 06-18 13:27:59.774   756   756 I GeckoDump: 89 INFO TEST-UNEXPECTED-FAIL |
> /tests/content/base/test/csp/test_303_redirect.html | Test timed out.
> 06-18 13:48:56.255   695   695 F libc    : Fatal signal 11 (SIGSEGV) at
> 0x00000000 (code=1)
> This usually indicates the B2G process has crashed
> Return code: 1
Flags: needinfo?(grobinson)
I do not have time to debug intermittent errors on B2G (*shudder*) right now. This patch disables these tests on B2G. bug 1028490 is the follow-up to investigate this at a later date.
Attachment #8443848 - Flags: review?(sstamm)
Flags: needinfo?(grobinson)
(In reply to Garrett Robinson [:grobinson] from comment #41)
> This patch disables these tests on B2G. bug 1028490 is the follow-up to
> investigate this at a later date.

Thank you for this :-)
Comment on attachment 8443848 [details] [diff] [review]
disable_redirect_tests.patch

Review of attachment 8443848 [details] [diff] [review]:
-----------------------------------------------------------------

Yeah.  I don't like disabling tests, but this is gonna take some time to resolve properly.
Attachment #8443848 - Flags: review?(sstamm) → review+
https://hg.mozilla.org/mozilla-central/rev/d2c29bcc2752
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla33
Note: this latest TBPL Robot comment refers to the same set of tests for xcsp. I did not disable the xcsp tests on B2G, but that is because they will be removed shortly (as soon as bug 949533 lands).
You need to log in before you can comment on or make changes to this bug.