New issue
Advanced search Search tips

Issue 856243 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Aug 7
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 2
Type: Bug

Blocked on:
issue 856240

Blocking:
issue 855267



Sign in to add a comment

Add logic to parse resource loading hints and send the parsed hints to the renderer

Project Member Reported by tbansal@chromium.org, Jun 25 2018

Issue description

Once the loading hints proto has been updated, we need to add logic to parse resource loading hints from optimization guide. Next, we need to update the mojom message between the browser and the renderer process to send the resource loading hints from the browser to the renderer.
 
Status: Available (was: Untriaged)
Project Member

Comment 2 by bugdroid1@chromium.org, Jun 27 2018

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

commit a9309639ca0e4b5e808819f209da053fcd1deac3
Author: Tarun Bansal <tbansal@chromium.org>
Date: Wed Jun 27 18:24:25 2018

Separate previews hints into a separate file

The hints are expected to get a bit more complicated, so
move them to a separate file instead of an inner class.

There is no loss in test coverage, but I am planning to
add separate unittests file in a subsequent CL.

Change-Id: I8c94ffc93de2e4b0e7e88c9c50344f499ab03cf3
Bug:  856243 
Reviewed-on: https://chromium-review.googlesource.com/1116518
Reviewed-by: Doug Arnett <dougarnett@chromium.org>
Commit-Queue: Tarun Bansal <tbansal@chromium.org>
Cr-Commit-Position: refs/heads/master@{#570845}
[modify] https://crrev.com/a9309639ca0e4b5e808819f209da053fcd1deac3/components/optimization_guide/optimization_guide_service_observer.h
[modify] https://crrev.com/a9309639ca0e4b5e808819f209da053fcd1deac3/components/previews/content/BUILD.gn
[add] https://crrev.com/a9309639ca0e4b5e808819f209da053fcd1deac3/components/previews/content/previews_hints.cc
[add] https://crrev.com/a9309639ca0e4b5e808819f209da053fcd1deac3/components/previews/content/previews_hints.h
[modify] https://crrev.com/a9309639ca0e4b5e808819f209da053fcd1deac3/components/previews/content/previews_optimization_guide.cc
[modify] https://crrev.com/a9309639ca0e4b5e808819f209da053fcd1deac3/components/previews/content/previews_optimization_guide.h

Comment 3 by bengr@chromium.org, Jun 28 2018

Labels: -Pri-3 M-70 Pri-2
Owner: tbansal@chromium.org
Status: Assigned (was: Available)
Project Member

Comment 4 by bugdroid1@chromium.org, Jul 6

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

commit 91c60b31c6a2a8f9072b24c8b2da796021f290e8
Author: Tarun Bansal <tbansal@chromium.org>
Date: Fri Jul 06 23:21:02 2018

Mechanism to check if a host is whitelisted for loading hints optimization

Add a mechanism to parse the URL suffix patterns from the loading hints
proto, and store those patterns in-memory on IO thread.

In a subsequent CL: At the time of navigation start, the patterns would be
queried to determine if the navigation URL is potentially eligible
for resource loading hints optimization. If yes, the resource loading
hints would be read asynchronously from disk, and sent to the renderer.

Storing the host patterns in-memory makes it possible to skip disk
reads when a host is not whitelisted.

Change-Id: I154468320f305163b07f4ac1d8b07e87c7739c44
Bug:  856243 
Reviewed-on: https://chromium-review.googlesource.com/1119569
Reviewed-by: Ryan Sturm <ryansturm@chromium.org>
Commit-Queue: Tarun Bansal <tbansal@chromium.org>
Cr-Commit-Position: refs/heads/master@{#573112}
[modify] https://crrev.com/91c60b31c6a2a8f9072b24c8b2da796021f290e8/components/previews/content/BUILD.gn
[add] https://crrev.com/91c60b31c6a2a8f9072b24c8b2da796021f290e8/components/previews/content/activation_list.cc
[add] https://crrev.com/91c60b31c6a2a8f9072b24c8b2da796021f290e8/components/previews/content/activation_list.h
[add] https://crrev.com/91c60b31c6a2a8f9072b24c8b2da796021f290e8/components/previews/content/activation_list_unittest.cc
[modify] https://crrev.com/91c60b31c6a2a8f9072b24c8b2da796021f290e8/components/previews/content/previews_hints.cc
[modify] https://crrev.com/91c60b31c6a2a8f9072b24c8b2da796021f290e8/components/previews/content/previews_hints.h
[modify] https://crrev.com/91c60b31c6a2a8f9072b24c8b2da796021f290e8/components/previews/content/previews_optimization_guide.cc
[modify] https://crrev.com/91c60b31c6a2a8f9072b24c8b2da796021f290e8/components/previews/content/previews_optimization_guide.h
[modify] https://crrev.com/91c60b31c6a2a8f9072b24c8b2da796021f290e8/components/previews/content/previews_optimization_guide_unittest.cc

Project Member

Comment 5 by bugdroid1@chromium.org, Jul 16

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

commit 14283672631cb8dcaefe140817d6f9a74f133ced
Author: Tarun Bansal <tbansal@chromium.org>
Date: Mon Jul 16 20:02:47 2018

Send UI service provided resource loading hints to renderer

Currently, we send an empty string as a resource loading hint to the
renderer when doing previews resource loading hints optimization.
This CL changes the browser's behavior to send the resource loading
hints that are provided by Previews UI service.

The CL also enables browsertest to modify the list of hints that are
sent to the renderer. This will be used in a browsertest in a subsequent
CL to verify that subresources that match the pattern are not loaded.

Bug:  856243 , 856247 
Change-Id: I29a393dd37090fcb8dc5706669e88e0ae91f47db
Reviewed-on: https://chromium-review.googlesource.com/1136885
Reviewed-by: Ryan Sturm <ryansturm@chromium.org>
Commit-Queue: Tarun Bansal <tbansal@chromium.org>
Cr-Commit-Position: refs/heads/master@{#575395}
[modify] https://crrev.com/14283672631cb8dcaefe140817d6f9a74f133ced/chrome/browser/previews/resource_loading_hints/resource_loading_hints_browsertest.cc
[modify] https://crrev.com/14283672631cb8dcaefe140817d6f9a74f133ced/chrome/browser/previews/resource_loading_hints/resource_loading_hints_web_contents_observer.cc
[modify] https://crrev.com/14283672631cb8dcaefe140817d6f9a74f133ced/chrome/browser/previews/resource_loading_hints/resource_loading_hints_web_contents_observer.h
[modify] https://crrev.com/14283672631cb8dcaefe140817d6f9a74f133ced/components/previews/content/previews_ui_service.cc
[modify] https://crrev.com/14283672631cb8dcaefe140817d6f9a74f133ced/components/previews/content/previews_ui_service.h

Project Member

Comment 6 by bugdroid1@chromium.org, Aug 2

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

commit 3e237d96560f3912f9a50c2158e0dcc89902305b
Author: Doug Arnett <dougarnett@chromium.org>
Date: Thu Aug 02 22:06:40 2018

Adds callback support for loading Hint proto from HintCache.


Bug: 867651,  856243 
Change-Id: I8d96e49aaf814041954deef540bffe025e983f03
Reviewed-on: https://chromium-review.googlesource.com/1152358
Commit-Queue: Doug Arnett <dougarnett@chromium.org>
Reviewed-by: Tarun Bansal <tbansal@chromium.org>
Cr-Commit-Position: refs/heads/master@{#580343}
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/hint_cache.cc
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/hint_cache.h
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/hint_cache_unittest.cc
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/previews_content_util.cc
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/previews_content_util.h
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/previews_content_util_unittest.cc
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/previews_decider_impl.cc
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/previews_decider_impl.h
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/previews_hints.cc
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/previews_hints.h
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/previews_optimization_guide.cc
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/previews_optimization_guide.h
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/content/previews_optimization_guide_unittest.cc
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/core/previews_decider.h
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/core/test_previews_decider.cc
[modify] https://crrev.com/3e237d96560f3912f9a50c2158e0dcc89902305b/components/previews/core/test_previews_decider.h

Status: Started (was: Assigned)
Status: Fixed (was: Started)
I believe this is done - logic added. Still needs to be fully turned on (different bug id).

Sign in to add a comment