New issue
Advanced search Search tips

Issue 683037 link

Starred by 8 users

Issue metadata

Status: Fixed
Owner:
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug

Blocked on:
issue 738310

Blocking:
issue 561209
issue 754139



Sign in to add a comment

Consider loading the service worker script before the renderer sends the resource request

Project Member Reported by falken@chromium.org, Jan 20 2017

Issue description

Currently service worker startup does this:
1) Browser asks renderer to start the service worker.
2) The renderer requests the browser to load the service worker script.
3) The browser responds with the service worker script.

It seems this could be faster if:
1) Browser asks renderer to start the service worker.
2) Browser starts loading the script without waiting for the renderer to request it.
3) Browser sends the renderer the script contents.

[Update]
Design doc by shimazu@
https://docs.google.com/document/d/1BbETxB2K1GeGUv4XIvGGforAJRRgYSNX5x4vPTGsCPU/edit#heading=h.ubqh39vcdj3n
 

Comment 1 by falken@chromium.org, Feb 16 2017

This bug tracks "service worker script streaming". Its expected benefit is by eliminating a blocking round-trip between browser-renderer for at least the main script, can be extended to cover importScripts as well later.
Labels: -Pri-3 M-61 Pri-1
Cc: falken@chromium.org
Owner: shimazu@chromium.org
Status: Started (was: Assigned)
Started to consider the design. I'll write a rough design doc after I can confirm it would be good enough. 
Creating a prototype: https://chromium-review.googlesource.com/c/538477/
The prototype mostly works except for CSP and other headers. 
I started to split the patch into smaller chunks with addressing them.
Project Member

Comment 6 by bugdroid1@chromium.org, Jun 30 2017

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

commit 203a2bad8062d170441af80f574e897bc586f180
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Fri Jun 30 12:20:01 2017

ServiceWorker: create SWInstalledScriptsManager on the worker thread

This is the first patch of script streaming project split off from
https://chromium-review.googlesource.com/c/538477.
This implements the worker thread behavior of SWInstalledScriptsManager.
Currently it's no-op, but clarifies how the scripts will be served. The
importScripts has not been implemented yet.

Bug:  683037 
Change-Id: I3aac636c21c2d9c5f5c122c6feea606155b0d4d2
Reviewed-on: https://chromium-review.googlesource.com/551518
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#483682}
[modify] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/content/browser/service_worker/embedded_worker_instance.cc
[modify] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/content/browser/service_worker/embedded_worker_instance.h
[modify] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/core/workers/BUILD.gn
[add] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/core/workers/InstalledScriptsManager.h
[modify] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/core/workers/WorkerThread.h
[modify] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.h
[modify] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/modules/serviceworkers/BUILD.gn
[add] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerInstalledScriptsManager.cpp
[add] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerInstalledScriptsManager.h
[modify] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerThread.cpp
[modify] https://crrev.com/203a2bad8062d170441af80f574e897bc586f180/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerThread.h

Blocking: 561209
Project Member

Comment 8 by bugdroid1@chromium.org, Jul 4 2017

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

commit eda73f285f0156eafd74d6970a05de4d9f1b7768
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Tue Jul 04 08:20:09 2017

ServiceWorker: create WebSWInstalledScriptsManager in content/renderer

This is the second patch of script streaming project split off from
https://chromium-review.googlesource.com/c/538477.
This implements a receiver of the data named
WebSWInstalledScriptsManager. It'll have a mojo endpoint passed through
the StartWorker message.

Bug:  683037 
Change-Id: Ib21334876dd4387853920ac0ebc42dd5184a9aa9
Reviewed-on: https://chromium-review.googlesource.com/551140
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#484065}
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/content/renderer/BUILD.gn
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/content/renderer/service_worker/embedded_worker_instance_client_impl.cc
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/content/renderer/service_worker/embedded_worker_instance_client_impl.h
[add] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc
[add] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.h
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.h
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerInstalledScriptsManager.cpp
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerInstalledScriptsManager.h
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/third_party/WebKit/Source/modules/serviceworkers/WebEmbeddedWorkerImplTest.cpp
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/third_party/WebKit/Source/platform/BUILD.gn
[add] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/third_party/WebKit/Source/platform/exported/WebServiceWorkerInstalledScriptsManager.cpp
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/third_party/WebKit/public/BUILD.gn
[add] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/third_party/WebKit/public/platform/modules/serviceworker/WebServiceWorkerInstalledScriptsManager.h
[modify] https://crrev.com/eda73f285f0156eafd74d6970a05de4d9f1b7768/third_party/WebKit/public/web/WebEmbeddedWorker.h

Project Member

Comment 9 by bugdroid1@chromium.org, Jul 5 2017

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

commit 4f97acb0c6972d787e3f4dbc83992e43ffe0a912
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Wed Jul 05 06:43:08 2017

Adding a feature flag for ServiceWorkerScriptStreaming

This patch adds a flag parameter named ServiceWorkerScriptStreaming. You can try
it out by --enable-features=ServiceWorkerScriptStreaming. It's disabled by
default for now.

Bug:  683037 
Change-Id: I33e5be2f0ba0079f316bc1b62cf61b80df05d7e1
Reviewed-on: https://chromium-review.googlesource.com/554510
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#484199}
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/content/child/runtime_features.cc
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/content/common/service_worker/service_worker_utils.cc
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/content/common/service_worker/service_worker_utils.h
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/content/public/common/content_features.cc
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/content/public/common/content_features.h
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/content/renderer/service_worker/embedded_worker_instance_client_impl.cc
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/LayoutTests/VirtualTestSuites
[add] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/external/wpt/service-workers/README.txt
[add] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/http/tests/fetch/serviceworker-proxied/README.txt
[add] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/http/tests/fetch/serviceworker/README.txt
[add] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/http/tests/serviceworker/README.txt
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/Source/modules/serviceworkers/WebEmbeddedWorkerImplTest.cpp
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.json5
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/Source/platform/exported/WebRuntimeFeatures.cpp
[modify] https://crrev.com/4f97acb0c6972d787e3f4dbc83992e43ffe0a912/third_party/WebKit/public/platform/WebRuntimeFeatures.h

Project Member

Comment 10 by bugdroid1@chromium.org, Jul 5 2017

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

commit 321354ccd946aa1223f8a3351bcd187b5578fc97
Author: Kentaro Hara <haraken@chromium.org>
Date: Wed Jul 05 11:40:43 2017

Revert "Adding a feature flag for ServiceWorkerScriptStreaming"

This reverts commit 4f97acb0c6972d787e3f4dbc83992e43ffe0a912.

Reason for revert: This caused memory leaks on the following tests:

* virtual/service-worker-script-streaming/http/tests/serviceworker/chromium/resolve-after-window-close.html
* virtual/service-worker-script-streaming/http/tests/serviceworker/chromium/window-close-during-registration.html

See https://uberchromegw.corp.google.com/i/chromium.webkit/builders/WebKit%20Linux%20Trusty%20Leak/builds/6371 for more details.



Original change's description:
> Adding a feature flag for ServiceWorkerScriptStreaming
> 
> This patch adds a flag parameter named ServiceWorkerScriptStreaming. You can try
> it out by --enable-features=ServiceWorkerScriptStreaming. It's disabled by
> default for now.
> 
> Bug:  683037 
> Change-Id: I33e5be2f0ba0079f316bc1b62cf61b80df05d7e1
> Reviewed-on: https://chromium-review.googlesource.com/554510
> Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
> Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
> Reviewed-by: Matt Falkenhagen <falken@chromium.org>
> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#484199}

TBR=falken@chromium.org,kinuko@chromium.org,nhiroki@chromium.org,shimazu@chromium.org

Change-Id: I9d5f93be8d55de09352a19b0459d83038ff79b9e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  683037 
Reviewed-on: https://chromium-review.googlesource.com/559188
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#484245}
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/content/child/runtime_features.cc
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/content/common/service_worker/service_worker_utils.cc
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/content/common/service_worker/service_worker_utils.h
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/content/public/common/content_features.cc
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/content/public/common/content_features.h
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/content/renderer/service_worker/embedded_worker_instance_client_impl.cc
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/third_party/WebKit/LayoutTests/VirtualTestSuites
[delete] https://crrev.com/4c2d8f4406737b7863e0a61b8d1b0337a450ca9c/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/external/wpt/service-workers/README.txt
[delete] https://crrev.com/4c2d8f4406737b7863e0a61b8d1b0337a450ca9c/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/http/tests/fetch/serviceworker-proxied/README.txt
[delete] https://crrev.com/4c2d8f4406737b7863e0a61b8d1b0337a450ca9c/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/http/tests/fetch/serviceworker/README.txt
[delete] https://crrev.com/4c2d8f4406737b7863e0a61b8d1b0337a450ca9c/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/http/tests/serviceworker/README.txt
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/third_party/WebKit/Source/modules/serviceworkers/WebEmbeddedWorkerImplTest.cpp
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.json5
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/third_party/WebKit/Source/platform/exported/WebRuntimeFeatures.cpp
[modify] https://crrev.com/321354ccd946aa1223f8a3351bcd187b5578fc97/third_party/WebKit/public/platform/WebRuntimeFeatures.h

Project Member

Comment 11 by bugdroid1@chromium.org, Jul 6 2017

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

commit 6762b773876d08d5e6790a2715b45a3e485df4e5
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Thu Jul 06 09:54:54 2017

Reland "Adding a feature flag for ServiceWorkerScriptStreaming"

This reverts commit 321354ccd946aa1223f8a3351bcd187b5578fc97.

The original patch added a virtual test but missed several
TestExpections and LeakExpectations entries

TBR=falken@chromium.org,kinuko@chromium.org,nhiroki@chromium.org

Bug:  683037 
Change-Id: Idca0694bb7845bc8d6e80740981e13c6e288cdbf
Reviewed-on: https://chromium-review.googlesource.com/560802
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Makoto Shimazu <shimazu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#484521}
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/content/child/runtime_features.cc
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/content/common/service_worker/service_worker_utils.cc
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/content/common/service_worker/service_worker_utils.h
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/content/public/common/content_features.cc
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/content/public/common/content_features.h
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/content/renderer/service_worker/embedded_worker_instance_client_impl.cc
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/LayoutTests/LeakExpectations
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/LayoutTests/VirtualTestSuites
[add] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/external/wpt/service-workers/README.txt
[add] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/http/tests/fetch/serviceworker-proxied/README.txt
[add] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/http/tests/fetch/serviceworker/README.txt
[add] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/LayoutTests/virtual/service-worker-script-streaming/http/tests/serviceworker/README.txt
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/Source/modules/serviceworkers/WebEmbeddedWorkerImplTest.cpp
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.json5
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/Source/platform/exported/WebRuntimeFeatures.cpp
[modify] https://crrev.com/6762b773876d08d5e6790a2715b45a3e485df4e5/third_party/WebKit/public/platform/WebRuntimeFeatures.h

Blockedon: 738310
Project Member

Comment 13 by bugdroid1@chromium.org, Jul 12 2017

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

commit 166906a0b37ae6500585e3680a299eb7c720a110
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Wed Jul 12 06:04:01 2017

ServiceWorker: add a Mojo interface for streaming installed scripts

This is 4th patch of script streaming project split off from
https://chromium-review.googlesource.com/c/538477.
This patch adds Mojo's interface to stream installed scripts to the renderer
during launching up. This patch implements:
- WebServiceWorkerInstalledScriptsManagerImpl::Internal as a receiver of
  streamed scripts which lives on the io thread on the renderer
- ServiceWorkerInstalledScriptsSender as a sender of installed scripts on the
  browser process

Bug:  683037 
Change-Id: I6d7ae63aea670c37fe00c0c81afceb71dd70c62a
Reviewed-on: https://chromium-review.googlesource.com/558529
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#485873}
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/BUILD.gn
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/embedded_worker_instance.cc
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/embedded_worker_instance.h
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/embedded_worker_instance_unittest.cc
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/embedded_worker_test_helper.cc
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/embedded_worker_test_helper.h
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/service_worker_context_unittest.cc
[add] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/service_worker_installed_scripts_sender.cc
[add] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/service_worker_installed_scripts_sender.h
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/service_worker_job_unittest.cc
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/service_worker_version.cc
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/browser/service_worker/service_worker_version.h
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/common/BUILD.gn
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/common/service_worker/embedded_worker.mojom
[add] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/common/service_worker/service_worker_installed_scripts_manager.mojom
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/renderer/render_thread_impl.cc
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/renderer/service_worker/embedded_worker_instance_client_impl.cc
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/renderer/service_worker/embedded_worker_instance_client_impl.h
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc
[modify] https://crrev.com/166906a0b37ae6500585e3680a299eb7c720a110/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.h

Project Member

Comment 14 by bugdroid1@chromium.org, Jul 13 2017

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

commit 8d98fd663e6990faef8f30a2c9acd4381ee2fe69
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Thu Jul 13 07:17:40 2017

ServiceWorker: Implements WebSWInstalledScriptsManagerImpl

This is 5th patch of script streaming project split off from
https://chromium-review.googlesource.com/c/538477.
Design doc: 
https://docs.google.com/document/d/1BbETxB2K1GeGUv4XIvGGforAJRRgYSNX5x4vPTGsCPU/edit#heading=h.ubqh39vcdj3n

Internal in web_service_worker_installed_scripts_manager_impl.cc receives
installed scripts on the IO thread which are streamed from the browser, and
WebServiceWorkerInstalledScriptsManagerImpl provides installed scripts on the
worker thread. ThreadSafeScriptContainer is a container shared among them which
can be accessed from the IO thread and the worker thread. Also, Receivers and
Receiver are implemented for receiving the installed scripts from the browser
through Mojo data pipes. After finishing script transfer, Internal stores the
received script data to ThreadSafeScriptContainer.

Bug:  683037 
Change-Id: I950a005918f73745497912b595fc90e4419120e7
Reviewed-on: https://chromium-review.googlesource.com/563280
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#486302}
[modify] https://crrev.com/8d98fd663e6990faef8f30a2c9acd4381ee2fe69/content/renderer/BUILD.gn
[add] https://crrev.com/8d98fd663e6990faef8f30a2c9acd4381ee2fe69/content/renderer/service_worker/thread_safe_script_container.cc
[add] https://crrev.com/8d98fd663e6990faef8f30a2c9acd4381ee2fe69/content/renderer/service_worker/thread_safe_script_container.h
[add] https://crrev.com/8d98fd663e6990faef8f30a2c9acd4381ee2fe69/content/renderer/service_worker/thread_safe_script_container_unittest.cc
[modify] https://crrev.com/8d98fd663e6990faef8f30a2c9acd4381ee2fe69/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc
[modify] https://crrev.com/8d98fd663e6990faef8f30a2c9acd4381ee2fe69/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.h
[add] https://crrev.com/8d98fd663e6990faef8f30a2c9acd4381ee2fe69/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl_unittest.cc
[modify] https://crrev.com/8d98fd663e6990faef8f30a2c9acd4381ee2fe69/content/test/BUILD.gn
[modify] https://crrev.com/8d98fd663e6990faef8f30a2c9acd4381ee2fe69/third_party/WebKit/Source/platform/exported/WebServiceWorkerInstalledScriptsManager.cpp
[modify] https://crrev.com/8d98fd663e6990faef8f30a2c9acd4381ee2fe69/third_party/WebKit/public/platform/modules/serviceworker/WebServiceWorkerInstalledScriptsManager.h

Status update: currently 5/9 patches have been landed, two are under review and two are under construction.

1 (Landed): https://crrev.com/c/551518 (Blink side)
2 (Landed): https://crrev.com/c/551140 (Renderer stub)
3 (Landed): https://crrev.com/c/560802 (Feature flag)
4 (Landed): https://crrev.com/c/558529 (Mojo interface)
5 (Landed): https://crrev.com/c/563280 (Renderer impl)
6 (Review): https://crrev.com/c/566781 (Bug fix)
7 (Review): https://crrev.com/c/563144 (Browser impl)
8 (Implementing): https://crrev.com/c/566783 (TRACE_EVENT fix)
9 (Not yet): Set Content Security Policy and Referrer Policy from the header

Design doc (sorry for late sharing! I've forgot to add a link here..):
https://docs.google.com/document/d/1BbETxB2K1GeGUv4XIvGGforAJRRgYSNX5x4vPTGsCPU/edit#

Project Member

Comment 16 by bugdroid1@chromium.org, Jul 18 2017

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

commit 60a85e751c9b8eee3fc8034bfa28c900a7fabdc7
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Tue Jul 18 06:52:37 2017

ServiceWorker: Move OnScriptLoaded to the right place

This is 6th patch of script streaming project split off from
https://chromium-review.googlesource.com/c/538477.

This patch:
 - Moves where OnScriptLoaded() is called to after calling
   InstalledScriptsManager::GetScriptData when script streaming is enabled.
 - Changes to use StringBuilder in ServiceWorker in
   ServiceWorkerInstalledScriptsManager.

The script streaming TRACE_EVENT is broken by this patch. I'll fix it in the
following patch (https://crrev.com/c/566783).

Bug:  683037 
Change-Id: Ice19b90bf32d007c8a25993b207f6eb5088047a7
Reviewed-on: https://chromium-review.googlesource.com/566781
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#487404}
[modify] https://crrev.com/60a85e751c9b8eee3fc8034bfa28c900a7fabdc7/content/renderer/service_worker/service_worker_context_client.cc
[modify] https://crrev.com/60a85e751c9b8eee3fc8034bfa28c900a7fabdc7/content/renderer/service_worker/service_worker_context_client.h
[modify] https://crrev.com/60a85e751c9b8eee3fc8034bfa28c900a7fabdc7/third_party/WebKit/Source/core/workers/WorkerReportingProxy.h
[modify] https://crrev.com/60a85e751c9b8eee3fc8034bfa28c900a7fabdc7/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/60a85e751c9b8eee3fc8034bfa28c900a7fabdc7/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/60a85e751c9b8eee3fc8034bfa28c900a7fabdc7/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScopeProxy.cpp
[modify] https://crrev.com/60a85e751c9b8eee3fc8034bfa28c900a7fabdc7/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScopeProxy.h
[modify] https://crrev.com/60a85e751c9b8eee3fc8034bfa28c900a7fabdc7/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerInstalledScriptsManager.cpp
[modify] https://crrev.com/60a85e751c9b8eee3fc8034bfa28c900a7fabdc7/third_party/WebKit/public/web/modules/serviceworker/WebServiceWorkerContextClient.h

Comment 17 Deleted

Update: 6/10 patches have been landed and two are about to land. 9, 10 are the only remaining tasks.

1 (Landed): https://crrev.com/c/551518 (Blink side)
2 (Landed): https://crrev.com/c/551140 (Renderer stub)
3 (Landed): https://crrev.com/c/560802 (Feature flag)
4 (Landed): https://crrev.com/c/558529 (Mojo interface)
5 (Landed): https://crrev.com/c/563280 (Renderer impl)
6 (Landed): https://crrev.com/c/566781 (Bug fix)
7 (Wait for LGTM by SECURITY_OWNER): https://crrev.com/c/563144 (Browser impl)
8 (LGTM'd): https://crrev.com/c/577427 (TRACE_EVENT fix)
9 (Under Review): https://crrev.com/c/578972 (CSP/Referrer Policy)
10 (Implementing): https://crrev.com/c/579307 (Reporting errors to the renderer)
Project Member

Comment 19 by bugdroid1@chromium.org, Jul 21 2017

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

commit 5e4f0f6afdf869bdca0d648ff2152a977b2c8751
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Fri Jul 21 04:13:09 2017

ServiceWorker: Implement SWInstalledScriptsSender

This is 7th patch of script streaming project split off from
https://chromium-review.googlesource.com/c/538477.
Design doc:
https://docs.google.com/document/d/1BbETxB2K1GeGUv4XIvGGforAJRRgYSNX5x4vPTGsCPU/edit

This patch implements SWInstalledScriptsSender to push the installed scripts
over mojo pipes from the browser to the renderer. The sender is started when
ServiceWorkerVersion asks EmbeddedWorkerInstance to start the worker. That
means that scripts will be received on the io thread immediately after binding
the Mojo interface.

From this patch, "--enable-features=ServiceWorkerScriptStreaming" takes effect.
When LayoutTests under virtual/service-worker-script-streaming fail, please add
TestExpectations and report it to  https://crbug.com/683037 .

Bug:  683037 
Change-Id: I5aef2cff6026ae3afa004932f77064f24ba8bfc7
Reviewed-on: https://chromium-review.googlesource.com/563144
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#488576}
[modify] https://crrev.com/5e4f0f6afdf869bdca0d648ff2152a977b2c8751/content/browser/service_worker/service_worker_installed_scripts_sender.cc
[modify] https://crrev.com/5e4f0f6afdf869bdca0d648ff2152a977b2c8751/content/browser/service_worker/service_worker_installed_scripts_sender.h
[add] https://crrev.com/5e4f0f6afdf869bdca0d648ff2152a977b2c8751/content/browser/service_worker/service_worker_installed_scripts_sender_unittest.cc
[modify] https://crrev.com/5e4f0f6afdf869bdca0d648ff2152a977b2c8751/content/browser/service_worker/service_worker_storage.h
[modify] https://crrev.com/5e4f0f6afdf869bdca0d648ff2152a977b2c8751/content/browser/service_worker/service_worker_version.cc
[modify] https://crrev.com/5e4f0f6afdf869bdca0d648ff2152a977b2c8751/content/common/service_worker/service_worker_installed_scripts_manager.mojom
[modify] https://crrev.com/5e4f0f6afdf869bdca0d648ff2152a977b2c8751/content/renderer/service_worker/embedded_worker_instance_client_impl.cc
[modify] https://crrev.com/5e4f0f6afdf869bdca0d648ff2152a977b2c8751/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc
[modify] https://crrev.com/5e4f0f6afdf869bdca0d648ff2152a977b2c8751/content/test/BUILD.gn
[modify] https://crrev.com/5e4f0f6afdf869bdca0d648ff2152a977b2c8751/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp

Project Member

Comment 20 by bugdroid1@chromium.org, Jul 24 2017

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

commit 49f8ea43de492202ab9a3a2a24f7c23773dcbc9e
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Mon Jul 24 03:13:28 2017

Move TRACE_EVENTs for launching service workers to the renderer

Previously TRACE_EVENTs are tracked on the browser, but it contains the latency
of the IPCs. This patch tries to move the TRACE_EVENTs after sending StartWorker
message to the renderer for tracking more accurately. Also, this patch fixes the
TRACE_EVENTs broken by https://crrev.com/c/566781.

Bug:  683037 
Change-Id: I53520e172d67896b220f2c67211dd8135ba783c4
Reviewed-on: https://chromium-review.googlesource.com/577427
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#488906}
[modify] https://crrev.com/49f8ea43de492202ab9a3a2a24f7c23773dcbc9e/content/browser/service_worker/embedded_worker_instance.cc
[modify] https://crrev.com/49f8ea43de492202ab9a3a2a24f7c23773dcbc9e/content/renderer/service_worker/embedded_worker_instance_client_impl.cc
[modify] https://crrev.com/49f8ea43de492202ab9a3a2a24f7c23773dcbc9e/content/renderer/service_worker/service_worker_context_client.cc
[modify] https://crrev.com/49f8ea43de492202ab9a3a2a24f7c23773dcbc9e/content/renderer/service_worker/service_worker_context_client.h

Comment 21 Deleted

Description: Show this description
Labels: -M-61 M-62
Project Member

Comment 24 by bugdroid1@chromium.org, Jul 26 2017

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

commit 4cb4c97b708d54bea4b045c2519a2eb7017f900c
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Wed Jul 26 10:54:09 2017

Read CSP/ReferrerPolicy on WorkerThead when script streaming is enabled

This is 9th patch of script streaming project split off from
https://chromium-review.googlesource.com/c/538477.
Design doc:
https://docs.google.com/document/d/1BbETxB2K1GeGUv4XIvGGforAJRRgYSNX5x4vPTGsCPU/edit#heading=h.ubqh39vcdj3n

This patch sets ContentSecurityPolicy and ReferrerPolicy to the document and
SWGlobalScope correctly when script streaming is enabled. When script streaming
is enabled, the main script is provided on the worker thread, so this patch
posts the information to the main thread after calling
InstalledScriptsManager::GetScriptData on the worker thread.

Bug:  683037 
Change-Id: I2232804ae762e7886b171638443a1b08592e870c
Reviewed-on: https://chromium-review.googlesource.com/578972
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Mike West <mkwst@chromium.org>
Cr-Commit-Position: refs/heads/master@{#489603}
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/BUILD.gn
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/GlobalScopeCreationParams.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/GlobalScopeCreationParams.h
[add] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/InstalledScriptsManager.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/InstalledScriptsManager.h
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/WorkerGlobalScope.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/WorkerReportingProxy.h
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerGlobalScope.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.h
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScope.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScopeProxy.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScopeProxy.h
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerInstalledScriptsManager.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/platform/network/ContentSecurityPolicyResponseHeaders.cpp
[modify] https://crrev.com/4cb4c97b708d54bea4b045c2519a2eb7017f900c/third_party/WebKit/Source/platform/network/ContentSecurityPolicyResponseHeaders.h

Project Member

Comment 25 by bugdroid1@chromium.org, Aug 2 2017

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

commit 65db7edc2707a4bcafe3eec6bc883e6fce018619
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Wed Aug 02 10:11:03 2017

ServiceWorker: Simplify CSP handling in WebEmbeddedWorkerImpl

For simplifying CSP handling in WebEmbeddedWorkerImpl, this CL...

- parses ContentSecurityPolicyResponseHeaders in ServiceWorkerGlobalScopeProxy
  instead of WorkerShadowPage,
- excludes signal handling from WebEmbeddedWorkerImpl to
  ServiceWorkerGlobalScopeProxy, and
- unifies CSP handling between regular script loading (network) and installed
  script loading (script streaming) as
  WebEmbeddedWorkerImpl::SetContentSecurityPolicyAndReferrerPolicy().

Bug:  683037 
Change-Id: Id530b30fc0bc8ead0ff29f631dd4f2a52a8ecf72
Reviewed-on: https://chromium-review.googlesource.com/597033
Reviewed-by: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#491328}
[modify] https://crrev.com/65db7edc2707a4bcafe3eec6bc883e6fce018619/third_party/WebKit/Source/core/exported/WorkerShadowPage.cpp
[modify] https://crrev.com/65db7edc2707a4bcafe3eec6bc883e6fce018619/third_party/WebKit/Source/core/exported/WorkerShadowPage.h
[modify] https://crrev.com/65db7edc2707a4bcafe3eec6bc883e6fce018619/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/65db7edc2707a4bcafe3eec6bc883e6fce018619/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.h
[modify] https://crrev.com/65db7edc2707a4bcafe3eec6bc883e6fce018619/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScopeProxy.cpp

Project Member

Comment 26 by bugdroid1@chromium.org, Aug 8 2017

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

commit 765239ae75d08b5a09dddffa037747645e647abf
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Tue Aug 08 03:00:38 2017

ServiceWorker: Notify errors on sending installed scripts to renderer

This is 10th patch of script streaming project split off from
https://chromium-review.googlesource.com/c/538477.
Design doc:
https://docs.google.com/document/d/1BbETxB2K1GeGUv4XIvGGforAJRRgYSNX5x4vPTGsCPU/edit

This patch fixes error handling on ServiceWorkerInstalledScriptsSender. The
renderer can know the browser-side error by
- Disconnection of mojom::ServiceWorkerInstalledScriptsManager before
  TransferInstalledScript.
- Disconnection of each data pipe after TransferInstalledScript.

For telling the data transfer is completed successfully, this patch adds
body_size and meta_data_size to mojom::ServiceWorkerScriptInfo. If total amount
of received data is different from the size when the data pipe is closed, it
means an error happened during sending the body or meta data. In that case,
ThreadSafeScriptContainer returns nullptr. That results in fallback to the
ResourceLoader path (a follow-up patch will change this to result in error
instead). If an error happens for the main script, the worker will be
terminated.

Bug:  683037 
Change-Id: I3fddcab920d272be0187d3b48380aa9136ab0f4c
Reviewed-on: https://chromium-review.googlesource.com/579307
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Jesse Doherty <jwd@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#492514}
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/content/browser/service_worker/service_worker_installed_scripts_sender.cc
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/content/browser/service_worker/service_worker_installed_scripts_sender.h
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/content/browser/service_worker/service_worker_installed_scripts_sender_unittest.cc
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/content/browser/service_worker/service_worker_metrics.cc
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/content/browser/service_worker/service_worker_metrics.h
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/content/browser/service_worker/service_worker_version.cc
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/content/common/service_worker/service_worker_installed_scripts_manager.mojom
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl_unittest.cc
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/third_party/WebKit/Source/core/workers/InstalledScriptsManager.h
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/765239ae75d08b5a09dddffa037747645e647abf/tools/metrics/histograms/histograms.xml

Project Member

Comment 27 by bugdroid1@chromium.org, Aug 8 2017

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

commit d9f333ce132d963321c2ff0c04e9a8aa72f3ccc0
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Tue Aug 08 07:23:17 2017

ServiceWorker: Add chrome://flags#enable-service-worker-script-streaming

This patch adds a flag to enable script streaming for service workers.
Design doc:
https://docs.google.com/document/d/1BbETxB2K1GeGUv4XIvGGforAJRRgYSNX5x4vPTGsCPU/edit

Bug:  683037 
Change-Id: Iad104eb5497b4c2a904acae4a73e48545b39553e
Reviewed-on: https://chromium-review.googlesource.com/593707
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#492564}
[modify] https://crrev.com/d9f333ce132d963321c2ff0c04e9a8aa72f3ccc0/chrome/browser/about_flags.cc
[modify] https://crrev.com/d9f333ce132d963321c2ff0c04e9a8aa72f3ccc0/chrome/browser/flag_descriptions.cc
[modify] https://crrev.com/d9f333ce132d963321c2ff0c04e9a8aa72f3ccc0/chrome/browser/flag_descriptions.h
[modify] https://crrev.com/d9f333ce132d963321c2ff0c04e9a8aa72f3ccc0/tools/metrics/histograms/enums.xml

Project Member

Comment 28 by bugdroid1@chromium.org, Aug 8 2017

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

commit 5ed7a238580f54e7c74c832185ba887cb4948396
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Tue Aug 08 08:20:03 2017

ServiceWorker: Fixing traces when script streaming is enabled

This is 11th patch of script streaming project.
Design doc:
https://docs.google.com/document/d/1BbETxB2K1GeGUv4XIvGGforAJRRgYSNX5x4vPTGsCPU/edit

This patch fixes the order of TRACE_EVENTs in ServiceWorkerContextClient since
the place of loading script through InstalledScriptsManager was tweaked at the
CSP/ReferrerPolicy patch (https://crrev.com/c/578972).

Bug:  683037 
Change-Id: Icf3acaba1759fa4bbd9d3924d90fd6ac8289361a
Reviewed-on: https://chromium-review.googlesource.com/584634
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#492571}
[modify] https://crrev.com/5ed7a238580f54e7c74c832185ba887cb4948396/content/renderer/service_worker/service_worker_context_client.cc
[modify] https://crrev.com/5ed7a238580f54e7c74c832185ba887cb4948396/content/renderer/service_worker/service_worker_context_client.h

Project Member

Comment 29 by bugdroid1@chromium.org, Aug 9 2017

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

commit 105c6a16d72d7fca7168fb6fb655c82cb79e830f
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Wed Aug 09 00:25:17 2017

ServiceWorker: script streaming for importScripts

This is 12th patch of script streaming project.
Design doc:
https://docs.google.com/document/d/1BbETxB2K1GeGUv4XIvGGforAJRRgYSNX5x4vPTGsCPU/edit

This patch implements importScripts for installed scripts. When the script has
already been installed, importScripts firstly asks to an
InstalledScriptsManager. If there are two or more importScripts for the same
script, it falls back to the ResourceLoader path in this patch though
InstalledScriptsManager will take care of it and request the script to the
browser in future.

Bug:  683037 
Change-Id: I3ad47aa91433afcd8e38e32391a23b70ff993c66
Reviewed-on: https://chromium-review.googlesource.com/590633
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#492788}
[modify] https://crrev.com/105c6a16d72d7fca7168fb6fb655c82cb79e830f/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc
[modify] https://crrev.com/105c6a16d72d7fca7168fb6fb655c82cb79e830f/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl_unittest.cc
[modify] https://crrev.com/105c6a16d72d7fca7168fb6fb655c82cb79e830f/third_party/WebKit/Source/core/workers/InstalledScriptsManager.h
[modify] https://crrev.com/105c6a16d72d7fca7168fb6fb655c82cb79e830f/third_party/WebKit/Source/core/workers/WorkerGlobalScope.cpp
[modify] https://crrev.com/105c6a16d72d7fca7168fb6fb655c82cb79e830f/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
[modify] https://crrev.com/105c6a16d72d7fca7168fb6fb655c82cb79e830f/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/105c6a16d72d7fca7168fb6fb655c82cb79e830f/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerInstalledScriptsManager.cpp
[modify] https://crrev.com/105c6a16d72d7fca7168fb6fb655c82cb79e830f/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerInstalledScriptsManager.h
[modify] https://crrev.com/105c6a16d72d7fca7168fb6fb655c82cb79e830f/third_party/WebKit/Source/platform/exported/WebServiceWorkerInstalledScriptsManager.cpp
[modify] https://crrev.com/105c6a16d72d7fca7168fb6fb655c82cb79e830f/third_party/WebKit/public/platform/modules/serviceworker/WebServiceWorkerInstalledScriptsManager.h

Project Member

Comment 30 by bugdroid1@chromium.org, Aug 14 2017

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

commit f72c84cf918a8c9d07ad6b9722c94591115a510c
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Mon Aug 14 06:32:37 2017

Record service worker's script sizes for script streaming

ServiceWorkerInstalledScriptsManager starts to record following two metrics by
this patch:
- ServiceWorker.ScriptSize
- ServiceWorker.ScriptCachedMetadataSize

Bug:  683037 
Change-Id: I2a941ae97e62a4c198dccc4a9ac0e769251ddf94
Reviewed-on: https://chromium-review.googlesource.com/609621
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#494017}
[modify] https://crrev.com/f72c84cf918a8c9d07ad6b9722c94591115a510c/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/f72c84cf918a8c9d07ad6b9722c94591115a510c/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScope.cpp
[modify] https://crrev.com/f72c84cf918a8c9d07ad6b9722c94591115a510c/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScope.h
[modify] https://crrev.com/f72c84cf918a8c9d07ad6b9722c94591115a510c/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScopeProxy.cpp

Project Member

Comment 31 by bugdroid1@chromium.org, Aug 15 2017

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

commit d8c05a18f2c8df295e9e729152465971249c1506
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Tue Aug 15 04:54:54 2017

Add LayoutTest for CSP on fetches from an installed service worker

This patch adds tests of Content Security Policy.
Currently we have tests
(wpt/service-workers/service-worker/service-worker-csp-*.https.html) for a
service worker which is registered just before issuing network requests for the
test, and this patch adds the similar test for installed service workers since
the path to provide installed scripts is different when the scripts have already
been installed and script streaming is enabled.

The tests are in http/tests because internals.terminateServiceWorker is needed
for testing installed scripts.

BUG= 683037 

Change-Id: Ie68e59a8ee66d866accfd2a8e367f5eb2489af6b
Reviewed-on: https://chromium-review.googlesource.com/613001
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#494326}
[modify] https://crrev.com/d8c05a18f2c8df295e9e729152465971249c1506/third_party/WebKit/LayoutTests/external/wpt/payment-request/payment-request-constructor-crash.https-expected.txt
[modify] https://crrev.com/d8c05a18f2c8df295e9e729152465971249c1506/third_party/WebKit/LayoutTests/external/wpt/resources/testharness.js
[modify] https://crrev.com/d8c05a18f2c8df295e9e729152465971249c1506/third_party/WebKit/LayoutTests/fast/dom/custom/svg-use-shadow-tree-expected.txt
[add] https://crrev.com/d8c05a18f2c8df295e9e729152465971249c1506/third_party/WebKit/LayoutTests/http/tests/serviceworker/chromium.csp-fetch-from-installed-service-worker-connect.html
[add] https://crrev.com/d8c05a18f2c8df295e9e729152465971249c1506/third_party/WebKit/LayoutTests/http/tests/serviceworker/chromium.csp-fetch-from-installed-service-worker-default.html
[add] https://crrev.com/d8c05a18f2c8df295e9e729152465971249c1506/third_party/WebKit/LayoutTests/http/tests/serviceworker/chromium.csp-fetch-from-installed-service-worker-script.html
[add] https://crrev.com/d8c05a18f2c8df295e9e729152465971249c1506/third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/fetch-with-csp-worker.php
[modify] https://crrev.com/d8c05a18f2c8df295e9e729152465971249c1506/third_party/WebKit/LayoutTests/http/tests/webaudio/autoplay-crossorigin-expected.txt
[modify] https://crrev.com/d8c05a18f2c8df295e9e729152465971249c1506/third_party/WebKit/LayoutTests/resources/testharness.js

Blocking: 754139
Status: Fixed (was: Started)
Implementation has been done. I think it's ready to experiment.
Project Member

Comment 34 by bugdroid1@chromium.org, Aug 18 2017

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

commit 746a4637784766cdf7e316a074c58a115dad3f04
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Fri Aug 18 10:55:03 2017

ServiceWorker: better error reporting for script streaming

This patch is to pass a couple of content_browsertests for testing disk cache
errors. In the current implementation, a service worker is shut down if the
disk cache is broken, and as a result, |start_worker_status_| in
ServiceWorkerVersion is recorded as SERVICE_WORKER_ERROR_ABORT. This patch is to
shut down the worker on the browser side and remove the ServiceWorkerVersion.
It's the same behavior with ServiceWorkerReadFromCacheJob.

Test: content_browsertests  -f  --gtest_filter="ServiceWorkerVersionBrowserTest.ReadResourceFailure*" --enable-features=ServiceWorkerScriptStreaming

Bug:  683037 , 754139
Change-Id: Ibde6743434ddd88bec46721decec0f67ab0698bf
Reviewed-on: https://chromium-review.googlesource.com/616540
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#495522}
[modify] https://crrev.com/746a4637784766cdf7e316a074c58a115dad3f04/content/browser/service_worker/service_worker_installed_scripts_sender.cc
[modify] https://crrev.com/746a4637784766cdf7e316a074c58a115dad3f04/content/renderer/service_worker/thread_safe_script_container.cc
[modify] https://crrev.com/746a4637784766cdf7e316a074c58a115dad3f04/content/renderer/service_worker/thread_safe_script_container.h
[modify] https://crrev.com/746a4637784766cdf7e316a074c58a115dad3f04/content/renderer/service_worker/thread_safe_script_container_unittest.cc
[modify] https://crrev.com/746a4637784766cdf7e316a074c58a115dad3f04/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc
[modify] https://crrev.com/746a4637784766cdf7e316a074c58a115dad3f04/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl_unittest.cc
[modify] https://crrev.com/746a4637784766cdf7e316a074c58a115dad3f04/third_party/WebKit/public/platform/modules/serviceworker/WebServiceWorkerInstalledScriptsManager.h

Project Member

Comment 35 by bugdroid1@chromium.org, Aug 18 2017

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

commit 7273568734cc4ab4e1ac6a3097329531a5370eaa
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Fri Aug 18 16:29:11 2017

Update fieldtrial_testing_config.json for ServiceWorkerScriptStreaming

Bug:  683037 ,754139
Change-Id: I02d76701eb0dcaeb9bedfe3e5241fadbf67c691c
Reviewed-on: https://chromium-review.googlesource.com/614824
Reviewed-by: Jesse Doherty <jwd@chromium.org>
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#495572}
[modify] https://crrev.com/7273568734cc4ab4e1ac6a3097329531a5370eaa/testing/variations/fieldtrial_testing_config.json

Project Member

Comment 36 by bugdroid1@chromium.org, Aug 22 2017

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

commit 10c49d72428d58647f5f73712edcd2c40b3169ab
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Tue Aug 22 06:01:34 2017

Renamed mismatching histogram: InstalledScriptsSender.FinishedReason

ServiceWorker.StartWorker.InstalledScriptsSender.Status has never been recorded
since it's actually recorded as
ServiceWorker.StartWorker.InstalledScriptsSender.FinishedReason. This
patch is to fix the mismatching name of the histogram for recording it appropriately.

Bug:  683037 
Change-Id: I282526cd8813ee6c5a015c76da38545df9a3077a
Reviewed-on: https://chromium-review.googlesource.com/625501
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#496228}
[modify] https://crrev.com/10c49d72428d58647f5f73712edcd2c40b3169ab/tools/metrics/histograms/histograms.xml

Project Member

Comment 37 by bugdroid1@chromium.org, Aug 28 2017

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

commit b349bba6d264b9fcc0f9ade2d3ae4c3ff0183f7a
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Mon Aug 28 08:26:55 2017

ServiceWorker: Fix metrics for script streaming

This patch is to set FinishedReason::kSuccess if there is no installed script.
UpdateStatus is added for ensuring to update both of |state_| and
|finished_reason_|.
Also, this patch adds recording CountReadResponseResult for recording errors of
disk cache which used to be recorded in ServiceWorkerReadFromCacheJob.

Bug: 754139,  683037 
Change-Id: I9e3141892aca9f88d2ed1a56b27976dc3a985e57
Reviewed-on: https://chromium-review.googlesource.com/634788
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#497711}
[modify] https://crrev.com/b349bba6d264b9fcc0f9ade2d3ae4c3ff0183f7a/content/browser/service_worker/service_worker_installed_scripts_sender.cc
[modify] https://crrev.com/b349bba6d264b9fcc0f9ade2d3ae4c3ff0183f7a/content/browser/service_worker/service_worker_installed_scripts_sender.h
[modify] https://crrev.com/b349bba6d264b9fcc0f9ade2d3ae4c3ff0183f7a/content/browser/service_worker/service_worker_installed_scripts_sender_unittest.cc

Project Member

Comment 38 by bugdroid1@chromium.org, Oct 17 2017

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

commit aa790f23882a363d7ff6ad6d1003e800dfada89b
Author: Makoto Shimazu <shimazu@chromium.org>
Date: Tue Oct 17 06:17:56 2017

ServiceWorker: Fix all unit tests to run with script streaming

This patch ensures unit tests create valid disk cache entries for SWVersions
which could be started using SWInstalledScriptsSender. If unit tests don't
create valid entries for the worker scripts, SWInstalledScriptsSender detects it
and deletes the SWVersion, so some tests trying to dispatch events or something
would be aborted.

Bug:  683037 
Change-Id: I0f226767454db46d5112b48ed2bdbb6999ac384c
Reviewed-on: https://chromium-review.googlesource.com/712674
Commit-Queue: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#509296}
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/payments/payment_app_content_unittest_base.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/payments/payment_app_provider_impl_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/embedded_worker_instance_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/embedded_worker_test_helper.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/embedded_worker_test_helper.h
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/foreign_fetch_request_handler_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_context_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_controllee_request_handler_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_installed_scripts_sender_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_job_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_registration_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_test_utils.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_test_utils.h
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_url_loader_job_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_url_request_job_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/browser/service_worker/service_worker_version_unittest.cc
[modify] https://crrev.com/aa790f23882a363d7ff6ad6d1003e800dfada89b/content/common/service_worker/service_worker_utils.h

Labels: -M-62 M-64
This is enabled by default in M64: https://chromium-review.googlesource.com/704421
Project Member

Comment 40 by bugdroid1@chromium.org, Jul 24

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

commit 7e956395ba71a3d226ce0b163dbe009623a02ebe
Author: Matt Falkenhagen <falken@chromium.org>
Date: Tue Jul 24 22:26:31 2018

Remove obsolete field trial testing configs for service worker experiments.

These have all been enabled by default client-side or removed for some time:
- PWAFullCodeCache in Chrome 67
- ServiceWorkerNavigationPreload in Chrome 59
- ServiceWorkerScriptFullCodeCache in Chrome 67
- ServiceWorkerScriptStreaming in Chrome 64
- SpeculativeLaunchServiceWorker was removed

Bug:  661071 ,  683037 ,  768705 , 640132
Change-Id: Id218f3882273063db7e4c358cac956ca54f362d8
Reviewed-on: https://chromium-review.googlesource.com/1147895
Reviewed-by: Mark Pearson <mpearson@chromium.org>
Commit-Queue: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#577711}
[modify] https://crrev.com/7e956395ba71a3d226ce0b163dbe009623a02ebe/testing/variations/fieldtrial_testing_config.json

Sign in to add a comment