[Webkit-unassigned] [Bug 181499] [iOS WK2] Layout Test imported/w3c/web-platform-tests/service-workers/service-worker/update-after-navigation-fetch-event.https.html is a flaky failure

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed May 23 09:00:26 PDT 2018


https://bugs.webkit.org/show_bug.cgi?id=181499

--- Comment #6 from Chris Dumez <cdumez at apple.com> ---
(In reply to Chris Dumez from comment #5)
> (In reply to Chris Dumez from comment #4)
> > (In reply to Chris Dumez from comment #3)
> > > Looking at the flakiness dashboard, it is almost all green. There is exactly
> > > one failure and it is a TEXT one, not a TIMEOUT:
> > > ---
> > > /Volumes/Data/slave/ios-simulator-11-debug-tests-wk2/build/layout-test-
> > > results/imported/w3c/web-platform-tests/service-workers/service-worker/
> > > update-after-navigation-fetch-event.https-expected.txt
> > > +++
> > > /Volumes/Data/slave/ios-simulator-11-debug-tests-wk2/build/layout-test-
> > > results/imported/w3c/web-platform-tests/service-workers/service-worker/
> > > update-after-navigation-fetch-event.https-actual.txt
> > > @@ -1,3 +1,3 @@
> > >  
> > > -PASS Update should be triggered after a navigation fetch event. 
> > > +FAIL Update should be triggered after a navigation fetch event.
> > > promise_test: Unhandled rejection with value: object "Error: wait_for_state
> > > must be passed a ServiceWorker"
> > 
> > The test looks like:
> > return service_worker_unregister_and_register(t, parsed_url, scope)
> >       .then(function(r) {
> >           registration = r;
> >           return wait_for_state(t, registration.installing, 'activated');
> >         })
> > 
> > wait_for_state() is given null so registration.installing is null. I believe
> > this means that the worker is already active. This can happen when
> > registering a service worker that is already registered. The test attempts
> > to unregister *then* register. However, because of the "Try Clear
> > Registration" algorithm, the registration might be kept, simply marked as
> > uninstalling.
> 
> Interestingly, this service worker is indeed used by several tests:
> LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/
> multiple-update.https.html:    var script =
> 'resources/update-nocookie-worker.py';
> LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/
> update-after-navigation-fetch-event.https.html:    var script =
> 'resources/update-nocookie-worker.py';
> LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/
> update-after-oneday.https.html:    var script =
> 'resources/update-nocookie-worker.py';

Looks like I may have been wrong that the issue is with tryClear not calling clear in some cases. I was able to reproduce the test failure without having a register job reusing an existing registration.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20180523/6ffb2c57/attachment-0001.html>


More information about the webkit-unassigned mailing list