Bug 41871

Summary: fast/loader/recursive-before-unload-crash.html is flakey on leopard
Product: WebKit Reporter: Eric Seidel (no email) <eric>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED DUPLICATE    
Severity: Normal CC: abarth, ap, beidson, darin
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   

Description Eric Seidel (no email) 2010-07-08 10:45:55 PDT
fast/loader/recursive-before-unload-crash.html is flakey on leopard

This has caused at least 10 commit-queue false-failures and certainly more than that delays (we test things twice on the commit-queue to avoid being sensitive to flaky tests, but the second test is only needed if we have flaky tests, thus causing delays).

To see 11 bugs which failed from this:
https://bugs.webkit.org/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__all__&product=&content=fast/loader/recursive-before-unload-crash.html
Comment 1 Eric Seidel (no email) 2010-07-08 10:47:14 PDT
https://trac.webkit.org/browser/trunk/LayoutTests/fast/loader/recursive-before-unload-crash.html

I can get you failure logs from the bot.
Comment 2 Alexey Proskuryakov 2010-07-09 12:11:40 PDT
> I can get you failure logs from the bot.

Of course, please do.
Comment 3 Eric Seidel (no email) 2010-07-09 13:53:58 PDT
My apologies.  I got distracted.  Here it is:


--- /tmp/layout-test-results/fast/loader/recursive-before-unload-crash-expected.txt     2010-07-09 13:38:55.000000000 -0700
+++ /tmp/layout-test-results/fast/loader/recursive-before-unload-crash-actual.txt       2010-07-09 13:38:55.000000000 -0700
@@ -6,8 +6,8 @@
 main frame - didStartProvisionalLoadForFrame
 ALERT: Adding iframe
 frame "<!--framePath //<!--frame0-->-->" - didStartProvisionalLoadForFrame
-main frame - didCancelClientRedirectForFrame
 frame "<!--framePath //<!--frame0-->-->" - didFailProvisionalLoadWithError
+main frame - didCancelClientRedirectForFrame
 main frame - didFailProvisionalLoadWithError
 This test demonstrates a problem with our handling of the beforeunload event.
 If a script manages to try and navigate the frame from beforeunload - when a navigation is already pending - we end up blowing out the stack by recursively consulting the policy delegate then running onbeforeunloa
d repeatedly.
Comment 4 Eric Seidel (no email) 2010-07-09 13:55:43 PDT
Looks like a race in the frame loader callbacks.
Comment 5 Adam Barth 2010-07-11 13:52:08 PDT
The frame loader callbacks are quite racy.  It's very difficult to design a test that doesn't race them.
Comment 6 Eric Seidel (no email) 2010-09-02 12:05:46 PDT

*** This bug has been marked as a duplicate of bug 43840 ***