New issue
Advanced search Search tips

Issue 900444 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner:
Closed: Nov 6
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 1
Type: Bug



Sign in to add a comment

PlzWorker: Make ServiceWorkerProviderHost execution-ready when browser-side shared worker script fetch is done

Project Member Reported by nhiroki@google.com, Oct 31

Issue description

ServiceWorkerProviderHost::CompleteSharedWorkerPreparation() is never called when PlzWorker for shared workers is enabled because script loading is handed over from the browser process to the render process before it's called from SharedWorkerScriptLoader::OnComplete().

Looks like this prevents from updating Service Worker controller and use counters. See ServiceWorkerProviderHost::UpdateController() for example.
 
For use counters, we may have to add test cases to confirm use counts on a service worker are propagated to controlled shared workers in LayoutTests/http/tests/serviceworker/usecounter.html.
Project Member

Comment 2 by bugdroid1@chromium.org, Oct 31

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9996ac8918c962212f2bac8dadfb3b250cb50c61

commit 9996ac8918c962212f2bac8dadfb3b250cb50c61
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Wed Oct 31 05:41:12 2018

ServiceWorker: Modernize http/tests/serviceworker/usecounter.html using async/await etc

This is a mechanical cleanup CL for making it easier to add new use counter tests.

Bug:  900444 
Change-Id: Ib8d3c708c0f6ed1fd00b00bbcc9e873097cccd64
Reviewed-on: https://chromium-review.googlesource.com/c/1308240
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#604166}
[modify] https://crrev.com/9996ac8918c962212f2bac8dadfb3b250cb50c61/third_party/WebKit/LayoutTests/http/tests/serviceworker/usecounter.html

Reg c#2, looks like use counter propagation from service workers to controlled dedicated workers and shared workers hasn't been working regardless of PlzWorker. See issue 901609 for details.
Hmmm... seemingly I misunderstood the behavior.

> ServiceWorkerProviderHost::CompleteSharedWorkerPreparation() is never called when PlzWorker for shared workers is enabled because script loading is handed over from the browser process to the render process before it's called from SharedWorkerScriptLoader::OnComplete().

SharedWorkerScriptLoader::OnComplete() is called even after script loading is handed over, while SharedWorkerScriptFetcher::OnComplete() is never called. Therefore, the provider host for a shared worker correctly gets execution-ready. I confirmed this by adding CHECKs in ServiceWorkerProviderHost::CompleteSharedWorkerPreparation().
Status: WontFix (was: Started)
Based on the observation (c#4), let me close this issue...

Sign in to add a comment