New issue
Advanced search Search tips

Issue 699115 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Jul 2017
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Task

Blocking:
issue 631966



Sign in to add a comment

Integrate ResourcePrefetchPredictor with Bork

Project Member Reported by alexilin@chromium.org, Mar 7 2017

Issue description

Take the best from both projects.
 
Blocking: 631966
Project Member

Comment 2 by bugdroid1@chromium.org, Mar 9 2017

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

commit 8b3c17d1e53fade1111ec0fe9aed8a6f891d5331
Author: alexilin <alexilin@chromium.org>
Date: Thu Mar 09 18:27:42 2017

predictors: Add Manifest table to ResourcePrefetchPredictor.

The very first step to reuse Bork manifests in ResourcePrefetchPredictor. This
CL adds a new table to the predictor database.

BUG= 699115 

Review-Url: https://codereview.chromium.org/2738613003
Cr-Commit-Position: refs/heads/master@{#455798}

[modify] https://crrev.com/8b3c17d1e53fade1111ec0fe9aed8a6f891d5331/chrome/browser/BUILD.gn
[modify] https://crrev.com/8b3c17d1e53fade1111ec0fe9aed8a6f891d5331/chrome/browser/predictors/resource_prefetch_predictor.cc
[modify] https://crrev.com/8b3c17d1e53fade1111ec0fe9aed8a6f891d5331/chrome/browser/predictors/resource_prefetch_predictor.h
[modify] https://crrev.com/8b3c17d1e53fade1111ec0fe9aed8a6f891d5331/chrome/browser/predictors/resource_prefetch_predictor_tables.cc
[modify] https://crrev.com/8b3c17d1e53fade1111ec0fe9aed8a6f891d5331/chrome/browser/predictors/resource_prefetch_predictor_tables.h
[modify] https://crrev.com/8b3c17d1e53fade1111ec0fe9aed8a6f891d5331/chrome/browser/predictors/resource_prefetch_predictor_tables_unittest.cc
[modify] https://crrev.com/8b3c17d1e53fade1111ec0fe9aed8a6f891d5331/chrome/browser/predictors/resource_prefetch_predictor_test_util.cc
[modify] https://crrev.com/8b3c17d1e53fade1111ec0fe9aed8a6f891d5331/chrome/browser/predictors/resource_prefetch_predictor_test_util.h
[modify] https://crrev.com/8b3c17d1e53fade1111ec0fe9aed8a6f891d5331/chrome/browser/predictors/resource_prefetch_predictor_unittest.cc
[modify] https://crrev.com/8b3c17d1e53fade1111ec0fe9aed8a6f891d5331/components/precache/core/proto/precache.proto

Project Member

Comment 3 by bugdroid1@chromium.org, Mar 22 2017

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

commit b0b2d6ffa58b392bd30b49465ba29590c1616fe5
Author: alexilin <alexilin@chromium.org>
Date: Wed Mar 22 13:46:08 2017

predictors: Pass manifests from Bork to store in ResourcePrefetchPredictor.

This CL makes ResourcePrefetchPredictor accessible from PrecacheManager to
notify about new manifests through PrecacheManifestDelegate interface.
These manifests are saved then in a dedicated table on a
ResourcePrefetchPredictor side.

BUG= 699115 

Review-Url: https://codereview.chromium.org/2762673002
Cr-Commit-Position: refs/heads/master@{#458735}

[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/chrome/browser/precache/precache_manager_factory.cc
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/chrome/browser/predictors/resource_prefetch_predictor.cc
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/chrome/browser/predictors/resource_prefetch_predictor.h
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/chrome/browser/predictors/resource_prefetch_predictor_test_util.cc
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/chrome/browser/predictors/resource_prefetch_predictor_test_util.h
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/chrome/browser/predictors/resource_prefetch_predictor_unittest.cc
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/components/precache/content/precache_manager.cc
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/components/precache/content/precache_manager.h
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/components/precache/content/precache_manager_unittest.cc
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/components/precache/core/precache_fetcher.cc
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/components/precache/core/precache_fetcher.h
[modify] https://crrev.com/b0b2d6ffa58b392bd30b49465ba29590c1616fe5/components/precache/core/precache_fetcher_unittest.cc

Project Member

Comment 4 by bugdroid1@chromium.org, Apr 4 2017

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

commit 0559ee094eaf06da395d78b81cae19352ac68f9c
Author: alexilin <alexilin@chromium.org>
Date: Tue Apr 04 09:37:56 2017

predictors: Remove unknown fields from PrecacheManifest before store it.

PrecacheManifest comes to ResourcePrefetchPredictor from an external source that
could have a different protobuf definition. The definition could contain fields
that are unknown for the current version of Chromium. During deserialization,
unknown fields are not discarded but stored in unknown_fields.

The database has to be wiped out after update of the .proto file so there
is no need to store unknown fields.

BUG= 699115 

Review-Url: https://codereview.chromium.org/2790633002
Cr-Commit-Position: refs/heads/master@{#461668}

[modify] https://crrev.com/0559ee094eaf06da395d78b81cae19352ac68f9c/chrome/browser/predictors/resource_prefetch_predictor.cc
[modify] https://crrev.com/0559ee094eaf06da395d78b81cae19352ac68f9c/chrome/browser/predictors/resource_prefetch_predictor_unittest.cc

Project Member

Comment 8 by bugdroid1@chromium.org, Apr 19 2017

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

commit 132ccede61f0fe6fe34617a73eb945eb99ef1bee
Author: alexilin <alexilin@chromium.org>
Date: Wed Apr 19 07:48:37 2017

precache: Add the check for a minimum length of manifest bitset.

Experiment bitsets have to be not shorter than manifest resource size.
Manifests come from the network so it won't be paranoid to assert this
condition.

BUG= 699115 

Review-Url: https://codereview.chromium.org/2820713002
Cr-Commit-Position: refs/heads/master@{#465521}

[modify] https://crrev.com/132ccede61f0fe6fe34617a73eb945eb99ef1bee/components/precache/core/precache_manifest_util.cc

Project Member

Comment 10 by bugdroid1@chromium.org, Apr 27 2017

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

commit 62ffefbb0a2dcd9d0ff0a1a12288577c766af408
Author: alexilin <alexilin@chromium.org>
Date: Thu Apr 27 19:08:41 2017

predictors: Add resource type to manifest.

This CL adds a new resource type field to the manifest proto.
ResourcePrefetchPredictor begins to use this field to prefetch all resources of
one resource type before another.

Also we prioritize stylesheets above scripts since this CL. Stylesheets are
almost always critical, scripts are not. It's clear win in the case if we're
fetching resources from manifests because we don't have information about
request priority in manifests. Thus we can't separate critical scripts from
non-critical ones.

BUG= 699115 

Review-Url: https://codereview.chromium.org/2831233004
Cr-Commit-Position: refs/heads/master@{#467742}

[modify] https://crrev.com/62ffefbb0a2dcd9d0ff0a1a12288577c766af408/chrome/browser/predictors/resource_prefetch_predictor.cc
[modify] https://crrev.com/62ffefbb0a2dcd9d0ff0a1a12288577c766af408/chrome/browser/predictors/resource_prefetch_predictor.proto
[modify] https://crrev.com/62ffefbb0a2dcd9d0ff0a1a12288577c766af408/chrome/browser/predictors/resource_prefetch_predictor_tables.cc
[modify] https://crrev.com/62ffefbb0a2dcd9d0ff0a1a12288577c766af408/chrome/browser/predictors/resource_prefetch_predictor_tables.h
[modify] https://crrev.com/62ffefbb0a2dcd9d0ff0a1a12288577c766af408/chrome/browser/predictors/resource_prefetch_predictor_tables_unittest.cc
[modify] https://crrev.com/62ffefbb0a2dcd9d0ff0a1a12288577c766af408/chrome/browser/predictors/resource_prefetch_predictor_test_util.cc
[modify] https://crrev.com/62ffefbb0a2dcd9d0ff0a1a12288577c766af408/chrome/browser/predictors/resource_prefetch_predictor_test_util.h
[modify] https://crrev.com/62ffefbb0a2dcd9d0ff0a1a12288577c766af408/chrome/browser/predictors/resource_prefetch_predictor_unittest.cc
[modify] https://crrev.com/62ffefbb0a2dcd9d0ff0a1a12288577c766af408/components/precache/core/proto/precache.proto

Status: WontFix (was: Started)
This feature is cancelled. See  https://crbug.com/739439 

Sign in to add a comment