Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(108)

Issue 2575523002: Prerender: Confirm ServiceWorkers are invoked for NoState Prefetch (Closed)

Created:
4 years ago by mattcary
Modified:
3 years, 11 months ago
Reviewers:
pasko, droger, clamy, falken, horo
CC:
chromium-reviews, tburkard+watch_chromium.org, gavinp+prer_chromium.org, cbentzel+watch_chromium.org, slightlyoff
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Prerender: Confirm ServiceWorkers are invoked for NoState Prefetch. Confirm that a SW is invoked for files loaded from NoState prefetch, even if a registered SW does not have a process. The caveats discussed in crbug/465200 still hold regarding the origin for which the SW is called. BUG=632368 Review-Url: https://codereview.chromium.org/2575523002 Cr-Commit-Position: refs/heads/master@{#442607} Committed: https://chromium.googlesource.com/chromium/src/+/0aed258863772ab7ba983993a2e1ce934d1caf66

Patch Set 1 #

Patch Set 2 : remove debugging code #

Total comments: 8

Patch Set 3 : check sw exist #

Total comments: 1

Patch Set 4 : comments #

Patch Set 5 : drop prefetch url request #

Total comments: 1

Patch Set 6 : Check that SW runs rather than disabling #

Total comments: 21

Patch Set 7 : comments #

Total comments: 6

Patch Set 8 : comments #

Patch Set 9 : comments #

Total comments: 13

Patch Set 10 : comments/big hammer #

Total comments: 2

Patch Set 11 : Kill SW via RenderProcessHostsb in test rather than through ServiceWorkerVersion #

Total comments: 6

Patch Set 12 : comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+92 lines, -0 lines) Patch
M chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +44 lines, -0 lines 0 comments Download
A chrome/test/data/prerender/service_worker.html View 1 2 3 4 5 6 7 1 chunk +21 lines, -0 lines 0 comments Download
A chrome/test/data/prerender/service_worker.js View 1 2 3 4 5 6 7 8 9 1 chunk +25 lines, -0 lines 0 comments Download
A chrome/test/data/prerender/service_worker.js.mock-http-headers View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 51 (8 generated)
mattcary
Here is the SW fix I proposed over the email thread. LMK.
4 years ago (2016-12-13 12:19:02 UTC) #2
droger
https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc File chrome/browser/prerender/prerender_contents.cc (right): https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc#newcode343 chrome/browser/prerender/prerender_contents.cc:343: void PrerenderContents::ContinuePrerenderIfNoServiceWorker( Naming nit (optional): there are cases where ...
4 years ago (2016-12-13 12:43:01 UTC) #3
mattcary
https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc File chrome/browser/prerender/prerender_contents.cc (right): https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc#newcode343 chrome/browser/prerender/prerender_contents.cc:343: void PrerenderContents::ContinuePrerenderIfNoServiceWorker( On 2016/12/13 12:43:01, droger wrote: > Naming ...
4 years ago (2016-12-13 12:58:37 UTC) #4
droger
https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc File chrome/browser/prerender/prerender_contents.cc (right): https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc#newcode347 chrome/browser/prerender/prerender_contents.cc:347: return; On 2016/12/13 12:58:36, mattcary wrote: > On 2016/12/13 ...
4 years ago (2016-12-13 13:25:48 UTC) #5
mattcary
https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc File chrome/browser/prerender/prerender_contents.cc (right): https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc#newcode347 chrome/browser/prerender/prerender_contents.cc:347: return; On 2016/12/13 13:25:48, droger wrote: > On 2016/12/13 ...
4 years ago (2016-12-13 13:30:51 UTC) #6
droger
https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc File chrome/browser/prerender/prerender_contents.cc (right): https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc#newcode347 chrome/browser/prerender/prerender_contents.cc:347: return; On 2016/12/13 13:30:50, mattcary wrote: > On 2016/12/13 ...
4 years ago (2016-12-13 13:36:36 UTC) #7
droger
Regardless of which implementation we chose: Note also that we're changing an assumption: we assumed ...
4 years ago (2016-12-13 13:38:55 UTC) #8
mattcary
https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc File chrome/browser/prerender/prerender_contents.cc (right): https://codereview.chromium.org/2575523002/diff/20001/chrome/browser/prerender/prerender_contents.cc#newcode347 chrome/browser/prerender/prerender_contents.cc:347: return; On 2016/12/13 13:36:36, droger wrote: > On 2016/12/13 ...
4 years ago (2016-12-13 13:53:46 UTC) #9
mattcary
On 2016/12/13 13:38:55, droger wrote: > Regardless of which implementation we chose: > > Note ...
4 years ago (2016-12-13 13:54:50 UTC) #10
mattcary
https://codereview.chromium.org/2575523002/diff/40001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc File chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc (right): https://codereview.chromium.org/2575523002/diff/40001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc#newcode527 chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc:527: IN_PROC_BROWSER_TEST_F(NoStatePrefetchBrowserTest, CheckNoSW) { This test here shows that a ...
4 years ago (2016-12-13 16:08:47 UTC) #11
pasko
On 2016/12/13 16:08:47, mattcary wrote: > So prefetching with a SW may actually be valid. ...
4 years ago (2016-12-15 17:06:47 UTC) #12
mattcary
> One issue I can see here is that we did not communicate to devs ...
4 years ago (2016-12-16 09:00:23 UTC) #13
mattcary
Update: checking for the service worker before creating the Prerender/WebContents seems to be impractical and ...
4 years ago (2016-12-19 13:31:53 UTC) #14
pasko
Thanks, Matt, great investigation! On 2016/12/19 13:31:53, mattcary wrote: > Update: checking for the service ...
4 years ago (2016-12-20 14:55:13 UTC) #15
pasko
On 2016/12/16 09:00:23, mattcary wrote: > > 2. The new renderer will instantiate a SW ...
4 years ago (2016-12-20 14:57:01 UTC) #16
mattcary
+clamy, horo, falken Here is the patch related to my ServiceWorker and prefetch thread. The ...
3 years, 12 months ago (2016-12-26 13:17:22 UTC) #19
falken
Sorry that I largely missed the email thread. Could you clarify the goal a bit ...
3 years, 12 months ago (2016-12-27 01:27:00 UTC) #20
falken
At a higher level, when is NoState prefetch triggered? Service worker controlled navigations are gaining ...
3 years, 12 months ago (2016-12-27 01:29:29 UTC) #21
falken
On 2016/12/20 14:55:13, pasko wrote: > Thanks, Matt, great investigation! > > On 2016/12/19 13:31:53, ...
3 years, 12 months ago (2016-12-27 01:34:09 UTC) #22
mattcary
On 2016/12/27 01:29:29, falken wrote: > At a higher level, when is NoState prefetch triggered? ...
3 years, 12 months ago (2016-12-27 09:56:28 UTC) #23
falken
On 2016/12/27 09:56:28, mattcary wrote: > On 2016/12/27 01:29:29, falken wrote: > > At a ...
3 years, 12 months ago (2016-12-27 15:09:04 UTC) #24
mattcary
On 2016/12/27 15:09:04, falken wrote: > On 2016/12/27 09:56:28, mattcary wrote: > > On 2016/12/27 ...
3 years, 12 months ago (2016-12-27 15:17:25 UTC) #25
mattcary
After looking over the bug, it seems that things are working as intended currently. The ...
3 years, 11 months ago (2017-01-02 14:04:09 UTC) #27
pasko
+slightlyoff FYI: With nostateprefetch [1] we are going to get the resources through SW 'fetch'. ...
3 years, 11 months ago (2017-01-02 18:15:36 UTC) #28
mattcary
https://codereview.chromium.org/2575523002/diff/100001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc File chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc (right): https://codereview.chromium.org/2575523002/diff/100001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc#newcode38 chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc:38: namespace { On 2017/01/02 18:15:36, pasko wrote: > nit: ...
3 years, 11 months ago (2017-01-03 08:43:20 UTC) #29
mattcary
On 2017/01/02 18:15:36, pasko wrote: > +slightlyoff FYI: > > With nostateprefetch [1] we are ...
3 years, 11 months ago (2017-01-03 08:51:03 UTC) #30
mattcary
https://codereview.chromium.org/2575523002/diff/100001/chrome/test/data/prerender/service_worker.js File chrome/test/data/prerender/service_worker.js (right): https://codereview.chromium.org/2575523002/diff/100001/chrome/test/data/prerender/service_worker.js#newcode1 chrome/test/data/prerender/service_worker.js:1: // Copyright (c) 2012 The Chromium Authors. All rights ...
3 years, 11 months ago (2017-01-03 09:00:04 UTC) #31
pasko
general approach and chrome/browser/prerender lgtm, thank you https://codereview.chromium.org/2575523002/diff/100001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc File chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc (right): https://codereview.chromium.org/2575523002/diff/100001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc#newcode547 chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc:547: base::Bind(&ClosureOnUiThread, run_loop.QuitClosure())); ...
3 years, 11 months ago (2017-01-03 13:09:14 UTC) #32
horo
https://codereview.chromium.org/2575523002/diff/120001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc File chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc (right): https://codereview.chromium.org/2575523002/diff/120001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc#newcode539 chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc:539: sw_counter.WaitForCount(1); You have to wait the service worker to ...
3 years, 11 months ago (2017-01-05 05:33:58 UTC) #33
mattcary
https://codereview.chromium.org/2575523002/diff/120001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc File chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc (right): https://codereview.chromium.org/2575523002/diff/120001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc#newcode539 chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc:539: sw_counter.WaitForCount(1); On 2017/01/05 05:33:58, horo wrote: > You have ...
3 years, 11 months ago (2017-01-05 14:30:43 UTC) #34
horo
https://codereview.chromium.org/2575523002/diff/120001/content/public/browser/service_worker_context.h File content/public/browser/service_worker_context.h (right): https://codereview.chromium.org/2575523002/diff/120001/content/public/browser/service_worker_context.h#newcode129 content/public/browser/service_worker_context.h:129: // there is no running worker, |callback| will never ...
3 years, 11 months ago (2017-01-06 02:27:42 UTC) #35
mattcary
https://codereview.chromium.org/2575523002/diff/120001/content/public/browser/service_worker_context.h File content/public/browser/service_worker_context.h (right): https://codereview.chromium.org/2575523002/diff/120001/content/public/browser/service_worker_context.h#newcode129 content/public/browser/service_worker_context.h:129: // there is no running worker, |callback| will never ...
3 years, 11 months ago (2017-01-06 15:21:22 UTC) #36
falken
Sorry for coming back so late. I'm a little worried about the new "StopAllWorkersWithCallback" function ...
3 years, 11 months ago (2017-01-06 16:17:55 UTC) #37
mattcary
On 2017/01/06 16:17:55, falken wrote: > Sorry for coming back so late. I'm a little ...
3 years, 11 months ago (2017-01-06 16:42:41 UTC) #38
falken
On 2017/01/06 16:42:41, mattcary wrote: > On 2017/01/06 16:17:55, falken wrote: > > Sorry for ...
3 years, 11 months ago (2017-01-06 16:59:48 UTC) #39
mattcary
Thanks for your response, I got caught up in sheriffing so couldn't get back to ...
3 years, 11 months ago (2017-01-09 14:45:42 UTC) #40
falken
Actually, yeah I think the big hammer is appropriate here for testing how the "weird ...
3 years, 11 months ago (2017-01-09 15:42:23 UTC) #41
mattcary
+clamy Camille, could you take a quick look and make sure I'm doing the tab ...
3 years, 11 months ago (2017-01-10 12:47:29 UTC) #42
falken
service worker lgtm https://codereview.chromium.org/2575523002/diff/200001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc File chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc (right): https://codereview.chromium.org/2575523002/diff/200001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc#newcode26 chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc:26: #include "content/public/browser/storage_partition.h" I think lines 25-26 ...
3 years, 11 months ago (2017-01-10 13:47:42 UTC) #43
clamy
https://codereview.chromium.org/2575523002/diff/200001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc File chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc (right): https://codereview.chromium.org/2575523002/diff/200001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc#newcode568 chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc:568: // Open a new tab to replace the one ...
3 years, 11 months ago (2017-01-10 14:42:53 UTC) #44
mattcary
https://codereview.chromium.org/2575523002/diff/200001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc File chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc (right): https://codereview.chromium.org/2575523002/diff/200001/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc#newcode26 chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc:26: #include "content/public/browser/storage_partition.h" On 2017/01/10 13:47:42, falken wrote: > I ...
3 years, 11 months ago (2017-01-10 15:15:29 UTC) #45
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2575523002/220001
3 years, 11 months ago (2017-01-10 15:16:21 UTC) #48
commit-bot: I haz the power
3 years, 11 months ago (2017-01-10 16:24:45 UTC) #51
Message was sent while issue was closed.
Committed patchset #12 (id:220001) as
https://chromium.googlesource.com/chromium/src/+/0aed258863772ab7ba983993a2e1...

Powered by Google App Engine
This is Rietveld 408576698