New issue
Advanced search Search tips

Issue 826257 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 757760



Sign in to add a comment

Remove enable-background-fetch-persistence switch

Project Member Reported by rayankans@chromium.org, Mar 27 2018

Issue description

Make background fetch metadata storage persistent.

This will include:
1) Reads/Writes/Updates to the metadata write to disk
2) Minimize the cache to what is only strictly necessary
3) Full support for developer provided options
 
Project Member

Comment 1 by bugdroid1@chromium.org, Mar 28 2018

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

commit d5166ee9ca9bcad2849512bf6095a05c99fdf648
Author: Rayan Kanso <rayankans@chromium.org>
Date: Wed Mar 28 13:09:31 2018

[Background Fetch] Update Registration UI w/Persistent Storage

UpdateRegistrationUI will update the background fetch metadata written to disk.

BUG:  826257 

Change-Id: Ic81232d0a0bb2f13fdba98eb46eb02c683768397
Reviewed-on: https://chromium-review.googlesource.com/980993
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Dan Elphick <delphick@chromium.org>
Reviewed-by: Dmitry Gozman <dgozman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#546466}
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/BUILD.gn
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/background_fetch.proto
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/background_fetch_context.cc
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/background_fetch_context.h
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/background_fetch_data_manager.cc
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/background_fetch_data_manager.h
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/background_fetch_service_impl.cc
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/background_fetch_service_impl.h
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/background_fetch_service_unittest.cc
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/storage/create_registration_task.cc
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/storage/create_registration_task.h
[add] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/storage/update_registration_ui_task.cc
[add] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/content/browser/background_fetch/storage/update_registration_ui_task.h
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/third_party/WebKit/Source/modules/background_fetch/BackgroundFetchBridge.cpp
[modify] https://crrev.com/d5166ee9ca9bcad2849512bf6095a05c99fdf648/third_party/WebKit/public/platform/modules/background_fetch/background_fetch.mojom

Project Member

Comment 2 by bugdroid1@chromium.org, Apr 3 2018

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

commit 78f882f3c6925783cd11d9e0978f9a5d55c75185
Author: Rayan Kanso <rayankans@chromium.org>
Date: Tue Apr 03 11:25:45 2018

[Background Fetch] Create Metadata proto for persistent storage.

The metadata will store additional developer-provided fields that will
help retain & recover the state of the background fetch.
Create/Get/Update registration database tasks are updated to support
the new metadata proto.

Bug:  826257 ,  757760 
Change-Id: I5b97638d3ab90e482911fb50479e5b8c312b4331
Reviewed-on: https://chromium-review.googlesource.com/984356
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Dan Elphick <delphick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#547669}
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/background_fetch.proto
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/storage/README.md
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/storage/cleanup_task.cc
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/storage/create_registration_task.cc
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/storage/create_registration_task.h
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/storage/delete_registration_task.cc
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/storage/get_registration_task.cc
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/storage/get_registration_task.h
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/storage/mark_registration_for_deletion_task.cc
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/storage/update_registration_ui_task.cc
[modify] https://crrev.com/78f882f3c6925783cd11d9e0978f9a5d55c75185/content/browser/background_fetch/storage/update_registration_ui_task.h

Project Member

Comment 3 by bugdroid1@chromium.org, Apr 10 2018

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

commit 080a36de7fb99a9a33a88f30d0d4e046e0ebf89e
Author: Rayan Kanso <rayankans@chromium.org>
Date: Tue Apr 10 09:53:23 2018

[Background Fetch] Pass RegistrationId in update workflow.

Resolving post-merge nits in cr/980993.

Bug:  826257 
Change-Id: Ifd201f8ee98f71079d5377034ff593d731061308
Reviewed-on: https://chromium-review.googlesource.com/1000862
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549470}
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/content/browser/background_fetch/background_fetch_context.cc
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/content/browser/background_fetch/background_fetch_context.h
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/content/browser/background_fetch/background_fetch_data_manager.cc
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/content/browser/background_fetch/background_fetch_data_manager.h
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/content/browser/background_fetch/background_fetch_service_impl.cc
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/content/browser/background_fetch/background_fetch_service_impl.h
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/content/browser/background_fetch/background_fetch_service_unittest.cc
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/content/browser/background_fetch/storage/update_registration_ui_task.cc
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/content/browser/background_fetch/storage/update_registration_ui_task.h
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/third_party/blink/public/platform/modules/background_fetch/background_fetch.mojom
[modify] https://crrev.com/080a36de7fb99a9a33a88f30d0d4e046e0ebf89e/third_party/blink/renderer/modules/background_fetch/background_fetch_bridge.cc

Project Member

Comment 4 by bugdroid1@chromium.org, Apr 10 2018

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

commit 4ca46f7bd3a0f865d8a3c00b2b3fc226e1a2b176
Author: Rayan Kanso <rayankans@chromium.org>
Date: Tue Apr 10 21:16:53 2018

[Background Fetch] Update persistent storage tasks w/metadata.

Update the database manager task wrappers to use the metadata proto directly.

The following files were moved and slightly updated to make naming consistent throughout:
  * create_registration_task.(cc|h) -> create_metadata_task.(cc|h)
  * get_registration_task.(cc|h) -> get_metadata_task.(cc|h)
The metadata to registration conversion logic was removed from get_registration_task.cc.

Also added tests.

Bug:  826257 
Change-Id: I7a8cedf76df3b935ebeddf6536ba5cda639420db
Reviewed-on: https://chromium-review.googlesource.com/993054
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Dan Elphick <delphick@chromium.org>
Reviewed-by: Camille Lamy <clamy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549645}
[modify] https://crrev.com/4ca46f7bd3a0f865d8a3c00b2b3fc226e1a2b176/content/browser/BUILD.gn
[modify] https://crrev.com/4ca46f7bd3a0f865d8a3c00b2b3fc226e1a2b176/content/browser/background_fetch/background_fetch_data_manager.cc
[modify] https://crrev.com/4ca46f7bd3a0f865d8a3c00b2b3fc226e1a2b176/content/browser/background_fetch/background_fetch_data_manager.h
[modify] https://crrev.com/4ca46f7bd3a0f865d8a3c00b2b3fc226e1a2b176/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[rename] https://crrev.com/4ca46f7bd3a0f865d8a3c00b2b3fc226e1a2b176/content/browser/background_fetch/storage/create_metadata_task.cc
[add] https://crrev.com/4ca46f7bd3a0f865d8a3c00b2b3fc226e1a2b176/content/browser/background_fetch/storage/create_metadata_task.h
[delete] https://crrev.com/c110a7e73a623fb57c2c915e8f8f2cd45e08629b/content/browser/background_fetch/storage/create_registration_task.h
[add] https://crrev.com/4ca46f7bd3a0f865d8a3c00b2b3fc226e1a2b176/content/browser/background_fetch/storage/get_metadata_task.cc
[add] https://crrev.com/4ca46f7bd3a0f865d8a3c00b2b3fc226e1a2b176/content/browser/background_fetch/storage/get_metadata_task.h
[delete] https://crrev.com/c110a7e73a623fb57c2c915e8f8f2cd45e08629b/content/browser/background_fetch/storage/get_registration_task.cc
[delete] https://crrev.com/c110a7e73a623fb57c2c915e8f8f2cd45e08629b/content/browser/background_fetch/storage/get_registration_task.h

Status: Assigned (was: Untriaged)
Status: Started (was: Assigned)
Project Member

Comment 7 by bugdroid1@chromium.org, Apr 24 2018

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

commit ef95594f6d0712329bbe3348707454a5d2ed47c9
Author: Rayan Kanso <rayankans@chromium.org>
Date: Tue Apr 24 13:26:17 2018

[Background Fetch] Update metadata stored upon registration.

Serialize the ServiceWorkerFetchRequests and store them with the metadata.
Store Pending Requests (all requests are pending initially), and add
util functions to query pending/active requests.

Design doc: https://docs.google.com/document/d/1zk6WSUb063I_07ct1EP8krOsDKXai1v4nJchvpQeAio/

Bug:  826257 ,  757760 
Change-Id: Ic3aa98106583e9273e5f93b53123b2e2f1067cd9
Reviewed-on: https://chromium-review.googlesource.com/1017101
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553069}
[modify] https://crrev.com/ef95594f6d0712329bbe3348707454a5d2ed47c9/content/browser/background_fetch/background_fetch.proto
[modify] https://crrev.com/ef95594f6d0712329bbe3348707454a5d2ed47c9/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[modify] https://crrev.com/ef95594f6d0712329bbe3348707454a5d2ed47c9/content/browser/background_fetch/storage/README.md
[modify] https://crrev.com/ef95594f6d0712329bbe3348707454a5d2ed47c9/content/browser/background_fetch/storage/create_metadata_task.cc
[modify] https://crrev.com/ef95594f6d0712329bbe3348707454a5d2ed47c9/content/browser/background_fetch/storage/create_metadata_task.h
[modify] https://crrev.com/ef95594f6d0712329bbe3348707454a5d2ed47c9/content/browser/background_fetch/storage/database_helpers.cc
[modify] https://crrev.com/ef95594f6d0712329bbe3348707454a5d2ed47c9/content/browser/background_fetch/storage/database_helpers.h
[modify] https://crrev.com/ef95594f6d0712329bbe3348707454a5d2ed47c9/content/browser/background_fetch/storage/delete_registration_task.cc
[modify] https://crrev.com/ef95594f6d0712329bbe3348707454a5d2ed47c9/content/browser/background_fetch/storage/mark_registration_for_deletion_task.cc

Project Member

Comment 8 by bugdroid1@chromium.org, May 2 2018

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

commit aa1821d84ec41ab333d3dd220de710a48d4c2cba
Author: Rayan Kanso <rayankans@chromium.org>
Date: Wed May 02 16:38:49 2018

[Background Fetch] Persistent storage support for pending requests

Design doc: https://docs.google.com/document/d/1zk6WSUb063I_07ct1EP8krOsDKXai1v4nJchvpQeAio/

TBR=avi@chromium.org

Bug:  826257 
Change-Id: If883c9380a79cad8922ef3a21f2daa4cc73778a6
Reviewed-on: https://chromium-review.googlesource.com/1021516
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#555423}
[modify] https://crrev.com/aa1821d84ec41ab333d3dd220de710a48d4c2cba/content/browser/BUILD.gn
[modify] https://crrev.com/aa1821d84ec41ab333d3dd220de710a48d4c2cba/content/browser/background_fetch/background_fetch_data_manager.cc
[modify] https://crrev.com/aa1821d84ec41ab333d3dd220de710a48d4c2cba/content/browser/background_fetch/background_fetch_data_manager.h
[modify] https://crrev.com/aa1821d84ec41ab333d3dd220de710a48d4c2cba/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[add] https://crrev.com/aa1821d84ec41ab333d3dd220de710a48d4c2cba/content/browser/background_fetch/storage/start_next_pending_request_task.cc
[add] https://crrev.com/aa1821d84ec41ab333d3dd220de710a48d4c2cba/content/browser/background_fetch/storage/start_next_pending_request_task.h

Project Member

Comment 9 by bugdroid1@chromium.org, May 2 2018

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

commit 731a7916b1a7f347a493015a4a91886bc5b1f48a
Author: Rayan Kanso <rayankans@chromium.org>
Date: Wed May 02 21:00:40 2018

[Background Fetch] Persistant storage for completed requests.

Design doc: https://docs.google.com/document/d/1zk6WSUb063I_07ct1EP8krOsDKXai1v4nJchvpQeAio/

TBR=avi@chromium.org

Bug:  826257 
Change-Id: Ib34d8640545beae4b6b0dfa38d634937215ae4ff
Reviewed-on: https://chromium-review.googlesource.com/1026730
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#555512}
[modify] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/BUILD.gn
[modify] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/background_fetch.proto
[modify] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/background_fetch_data_manager.cc
[modify] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/background_fetch_data_manager.h
[modify] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[modify] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/storage/README.md
[modify] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/storage/create_metadata_task.cc
[modify] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/storage/create_metadata_task.h
[modify] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/storage/database_helpers.cc
[modify] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/storage/database_helpers.h
[add] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/storage/mark_request_complete_task.cc
[add] https://crrev.com/731a7916b1a7f347a493015a4a91886bc5b1f48a/content/browser/background_fetch/storage/mark_request_complete_task.h

Project Member

Comment 10 by bugdroid1@chromium.org, May 2 2018

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

commit 8bfa76f8e1f18e45cc7e11af7bb478eb8347b1af
Author: Rayan Kanso <rayankans@chromium.org>
Date: Wed May 02 23:02:29 2018

[Background Fetch] Remove GetTotalNumberOfRequests from Data Manager.

Getting this data will require a service worker storage query when we
move to full persistent storage. It's easier to get the number by
passing down the value to the controller object.

Bug:  826257 
Change-Id: I00962c1b31c8768baea276ea9d2845b84b2cc506
Reviewed-on: https://chromium-review.googlesource.com/1030632
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#555596}
[modify] https://crrev.com/8bfa76f8e1f18e45cc7e11af7bb478eb8347b1af/content/browser/background_fetch/background_fetch_context.cc
[modify] https://crrev.com/8bfa76f8e1f18e45cc7e11af7bb478eb8347b1af/content/browser/background_fetch/background_fetch_context.h
[modify] https://crrev.com/8bfa76f8e1f18e45cc7e11af7bb478eb8347b1af/content/browser/background_fetch/background_fetch_data_manager.cc
[modify] https://crrev.com/8bfa76f8e1f18e45cc7e11af7bb478eb8347b1af/content/browser/background_fetch/background_fetch_data_manager.h

Project Member

Comment 11 by bugdroid1@chromium.org, May 3 2018

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

commit 7a28724a5c043031f80ddf6582c629f0b3965bd4
Author: Rayan Kanso <rayankans@chromium.org>
Date: Thu May 03 12:15:05 2018

[Background Fetch] Update metadata storage.

Move UI Title to its own storage entry. Allows for faster title updates
without having to load/store the entire metadata proto.
Also add number of fetch requests to the metadata proto, since the only
way to currently query that would require 3 storage accesses
(num_pending + num_active + num_completed).

Bug:  826257 
Change-Id: Iafee5e71f5f5a6d626b626d888a6004a6c249370
Reviewed-on: https://chromium-review.googlesource.com/1030630
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#555700}
[modify] https://crrev.com/7a28724a5c043031f80ddf6582c629f0b3965bd4/content/browser/background_fetch/background_fetch.proto
[modify] https://crrev.com/7a28724a5c043031f80ddf6582c629f0b3965bd4/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[modify] https://crrev.com/7a28724a5c043031f80ddf6582c629f0b3965bd4/content/browser/background_fetch/storage/README.md
[modify] https://crrev.com/7a28724a5c043031f80ddf6582c629f0b3965bd4/content/browser/background_fetch/storage/create_metadata_task.cc
[modify] https://crrev.com/7a28724a5c043031f80ddf6582c629f0b3965bd4/content/browser/background_fetch/storage/database_helpers.cc
[modify] https://crrev.com/7a28724a5c043031f80ddf6582c629f0b3965bd4/content/browser/background_fetch/storage/database_helpers.h
[modify] https://crrev.com/7a28724a5c043031f80ddf6582c629f0b3965bd4/content/browser/background_fetch/storage/delete_registration_task.cc
[modify] https://crrev.com/7a28724a5c043031f80ddf6582c629f0b3965bd4/content/browser/background_fetch/storage/update_registration_ui_task.cc
[modify] https://crrev.com/7a28724a5c043031f80ddf6582c629f0b3965bd4/content/browser/background_fetch/storage/update_registration_ui_task.h

Project Member

Comment 12 by bugdroid1@chromium.org, May 15 2018

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

commit fafcfe1a2caeff1525aa91979e13810aa481cf24
Author: Rayan Kanso <rayankans@chromium.org>
Date: Tue May 15 13:36:15 2018

Add Serialization/Deserialization logic to ServiceWorkerFetchRequest

It would be useful to be able to store and reinitialize full fetch
request data (not just the url). As a specific example, this is needed
for background fetch to resume a fetch after a browser restart.

TBR=avi@chromium.org

Bug:  826257 
Change-Id: I3dd388b94bac0d9fa37477967d556118304dd9c9
Reviewed-on: https://chromium-review.googlesource.com/1057271
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558687}
[modify] https://crrev.com/fafcfe1a2caeff1525aa91979e13810aa481cf24/content/common/BUILD.gn
[add] https://crrev.com/fafcfe1a2caeff1525aa91979e13810aa481cf24/content/common/service_worker/BUILD.gn
[modify] https://crrev.com/fafcfe1a2caeff1525aa91979e13810aa481cf24/content/common/service_worker/service_worker_types.cc
[modify] https://crrev.com/fafcfe1a2caeff1525aa91979e13810aa481cf24/content/common/service_worker/service_worker_types.h
[add] https://crrev.com/fafcfe1a2caeff1525aa91979e13810aa481cf24/content/common/service_worker/service_worker_types.proto
[modify] https://crrev.com/fafcfe1a2caeff1525aa91979e13810aa481cf24/content/common/service_worker/service_worker_types_unittest.cc

Project Member

Comment 13 by bugdroid1@chromium.org, May 15 2018

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

commit 16c08245f5471ccf8384f318866c3d2331ef9d35
Author: Rayan Kanso <rayankans@chromium.org>
Date: Tue May 15 16:04:12 2018

[Background Fetch] Use ServiceWorkerFetchRequest Serialize/Deserialize

Remove custom Serialization and Deserialization logic used in background
fetch.

Bug:  826257 
Change-Id: If9e13dd6bbffa0a521209f7cabbe5ed0f3d08991
Reviewed-on: https://chromium-review.googlesource.com/1059658
Commit-Queue: Peter Beverloo <peter@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558728}
[modify] https://crrev.com/16c08245f5471ccf8384f318866c3d2331ef9d35/content/browser/background_fetch/background_fetch.proto
[modify] https://crrev.com/16c08245f5471ccf8384f318866c3d2331ef9d35/content/browser/background_fetch/storage/create_metadata_task.cc
[modify] https://crrev.com/16c08245f5471ccf8384f318866c3d2331ef9d35/content/browser/background_fetch/storage/database_helpers.cc
[modify] https://crrev.com/16c08245f5471ccf8384f318866c3d2331ef9d35/content/browser/background_fetch/storage/database_helpers.h
[modify] https://crrev.com/16c08245f5471ccf8384f318866c3d2331ef9d35/content/browser/background_fetch/storage/mark_request_complete_task.cc
[modify] https://crrev.com/16c08245f5471ccf8384f318866c3d2331ef9d35/content/browser/background_fetch/storage/start_next_pending_request_task.cc
[modify] https://crrev.com/16c08245f5471ccf8384f318866c3d2331ef9d35/content/browser/background_fetch/storage/start_next_pending_request_task.h

Project Member

Comment 16 by bugdroid1@chromium.org, May 29 2018

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

commit ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4
Author: Rayan Kanso <rayankans@chromium.org>
Date: Tue May 29 15:36:41 2018

[Background Fetch] Pass CacheStorageManager to relevant DatabaseTasks

Bug:  826257 
Change-Id: I18e2cfcc390119c528c600b49cbf3a7e78b7857f
Reviewed-on: https://chromium-review.googlesource.com/1068870
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562435}
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/background_fetch/background_fetch_context.cc
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/background_fetch/background_fetch_context.h
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/background_fetch/background_fetch_data_manager.cc
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/background_fetch/background_fetch_data_manager.h
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/background_fetch/background_fetch_service_unittest.cc
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/background_fetch/storage/get_settled_fetches_task.cc
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/background_fetch/storage/get_settled_fetches_task.h
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/background_fetch/storage/mark_request_complete_task.cc
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/background_fetch/storage/mark_request_complete_task.h
[modify] https://crrev.com/ecd233150d8bcfe1ae6c4b1e71fe1360e53726e4/content/browser/storage_partition_impl.cc

Project Member

Comment 17 by bugdroid1@chromium.org, May 31 2018

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

commit 07130ab9c37d16d1025ccdadf219f79534c1b305
Author: Rayan Kanso <rayankans@chromium.org>
Date: Thu May 31 11:42:32 2018

[Background Fetch] Store background fetch responses in cache storage

Update the MarkRequestCompleteTask to store the response provided by the
DownloadManager in CacheStorage.

Bug:  826257 
Change-Id: I51717323c1bd14d5da34c3ec1307fab6089d9fe7
Reviewed-on: https://chromium-review.googlesource.com/1072467
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563193}
[modify] https://crrev.com/07130ab9c37d16d1025ccdadf219f79534c1b305/content/browser/background_fetch/background_fetch_data_manager.h
[modify] https://crrev.com/07130ab9c37d16d1025ccdadf219f79534c1b305/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[modify] https://crrev.com/07130ab9c37d16d1025ccdadf219f79534c1b305/content/browser/background_fetch/background_fetch_request_info.cc
[modify] https://crrev.com/07130ab9c37d16d1025ccdadf219f79534c1b305/content/browser/background_fetch/background_fetch_request_info.h
[modify] https://crrev.com/07130ab9c37d16d1025ccdadf219f79534c1b305/content/browser/background_fetch/storage/mark_request_complete_task.cc
[modify] https://crrev.com/07130ab9c37d16d1025ccdadf219f79534c1b305/content/browser/background_fetch/storage/mark_request_complete_task.h

Project Member

Comment 19 by bugdroid1@chromium.org, May 31 2018

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

commit 0a7325fd8ba1754298afe264433eeb4b6d9b2f05
Author: Sebastien Seguin-Gagnon <sebsg@chromium.org>
Date: Thu May 31 18:41:21 2018

Revert "[Background Fetch] Get settled fetches from Cache Storage."

This reverts commit 44e770e1ea08d266bf7d4ccdc798f08a180b3b1d.

Reason for revert: Makes Persistent/BackgroundFetchDataManagerTest.GetSettledFetchesForRegistration/0 consistently fail on Windows:

https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Win10%20Tests%20x64%20%28dbg%29/940

also 941 and 942

Original change's description:
> [Background Fetch] Get settled fetches from Cache Storage.
> 
> Bug:  826257 
> Change-Id: I60c7ce03d916279fe05736ed652bfc5a1d8bebe4
> Reviewed-on: https://chromium-review.googlesource.com/1076630
> Commit-Queue: Rayan Kanso <rayankans@chromium.org>
> Reviewed-by: Peter Beverloo <peter@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#563200}

TBR=peter@chromium.org,nator@chromium.org,rayankans@chromium.org

Change-Id: I18a49f2edf1ed9779ff2c8cd2d38a6f124597363
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  826257 
Reviewed-on: https://chromium-review.googlesource.com/1081167
Reviewed-by: Sebastien Seguin-Gagnon <sebsg@chromium.org>
Commit-Queue: Sebastien Seguin-Gagnon <sebsg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563333}
[modify] https://crrev.com/0a7325fd8ba1754298afe264433eeb4b6d9b2f05/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[modify] https://crrev.com/0a7325fd8ba1754298afe264433eeb4b6d9b2f05/content/browser/background_fetch/storage/get_settled_fetches_task.cc
[modify] https://crrev.com/0a7325fd8ba1754298afe264433eeb4b6d9b2f05/content/browser/background_fetch/storage/get_settled_fetches_task.h

Project Member

Comment 20 by bugdroid1@chromium.org, Jun 1 2018

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

commit d4ce833eeddc1c69fe3275af313f5030b22c23e4
Author: Rayan Kanso <rayankans@chromium.org>
Date: Fri Jun 01 10:56:35 2018

[Background Fetch] Get settled fetches from Cache Storage.

Resubmitting cl/1076630 after it got rolled-back.
The only change is in get_settled_fetches_task.cc line 127,
and the comments above explain why the change was necessary.

Bug:  826257 
Change-Id: I628e74efbeca7b877ea316876674df5ee7b94b48
Reviewed-on: https://chromium-review.googlesource.com/1080797
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563584}
[modify] https://crrev.com/d4ce833eeddc1c69fe3275af313f5030b22c23e4/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[modify] https://crrev.com/d4ce833eeddc1c69fe3275af313f5030b22c23e4/content/browser/background_fetch/storage/get_settled_fetches_task.cc
[modify] https://crrev.com/d4ce833eeddc1c69fe3275af313f5030b22c23e4/content/browser/background_fetch/storage/get_settled_fetches_task.h

Project Member

Comment 21 by bugdroid1@chromium.org, Jun 1 2018

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

commit ef853064d009a124a6a491f011d5768731f0ecfd
Author: Rayan Kanso <rayankans@chromium.org>
Date: Fri Jun 01 13:29:57 2018

[Background Fetch] Modify failed responses returned from DataManager

The V8 responses being created crash if they do not have
response_type set.

Bug:  826257 
Change-Id: If62f75220b49f1e3b5c692036175a7ed524888c8
Reviewed-on: https://chromium-review.googlesource.com/1080630
Commit-Queue: Peter Beverloo <peter@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563607}
[modify] https://crrev.com/ef853064d009a124a6a491f011d5768731f0ecfd/content/browser/background_fetch/storage/get_settled_fetches_task.cc

Project Member

Comment 22 by bugdroid1@chromium.org, Jun 4 2018

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

commit 61ccefe31908484621e26bbe4fbc402e625136a2
Author: Rayan Kanso <rayankans@chromium.org>
Date: Mon Jun 04 19:32:18 2018

[Background Fetch] Minor fixes for persistent mode.

Minor changes needed for the tests to pass when persistent mode is
enabled.
- Check whether next request to download is valid.
- Set the value download total in the metadata.

Bug:  826257 
Change-Id: I33b96122600a8831709632072245f35ccc5aa0c7
Reviewed-on: https://chromium-review.googlesource.com/1085569
Reviewed-by: Peter Beverloo <peter@chromium.org>
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Cr-Commit-Position: refs/heads/master@{#564187}
[modify] https://crrev.com/61ccefe31908484621e26bbe4fbc402e625136a2/content/browser/background_fetch/background_fetch_scheduler.cc
[modify] https://crrev.com/61ccefe31908484621e26bbe4fbc402e625136a2/content/browser/background_fetch/storage/create_metadata_task.cc

Project Member

Comment 23 by bugdroid1@chromium.org, Jun 4 2018

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

commit 4d15c063f39234d6e7ee52a62837b6bb4dbf2b0f
Author: Rayan Kanso <rayankans@chromium.org>
Date: Mon Jun 04 19:43:00 2018

[Background Fetch] Use TestDataManager in tests.

Bug:  826257 
Change-Id: I1d607b7fe2ab220f779a22f50244147eb7fd4d7f
Reviewed-on: https://chromium-review.googlesource.com/1082539
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#564191}
[modify] https://crrev.com/4d15c063f39234d6e7ee52a62837b6bb4dbf2b0f/content/browser/background_fetch/background_fetch_context.cc
[modify] https://crrev.com/4d15c063f39234d6e7ee52a62837b6bb4dbf2b0f/content/browser/background_fetch/background_fetch_context.h
[modify] https://crrev.com/4d15c063f39234d6e7ee52a62837b6bb4dbf2b0f/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[modify] https://crrev.com/4d15c063f39234d6e7ee52a62837b6bb4dbf2b0f/content/browser/background_fetch/background_fetch_service_unittest.cc
[modify] https://crrev.com/4d15c063f39234d6e7ee52a62837b6bb4dbf2b0f/content/browser/background_fetch/background_fetch_test_base.cc
[modify] https://crrev.com/4d15c063f39234d6e7ee52a62837b6bb4dbf2b0f/content/browser/background_fetch/background_fetch_test_base.h
[add] https://crrev.com/4d15c063f39234d6e7ee52a62837b6bb4dbf2b0f/content/browser/background_fetch/background_fetch_test_data_manager.cc
[add] https://crrev.com/4d15c063f39234d6e7ee52a62837b6bb4dbf2b0f/content/browser/background_fetch/background_fetch_test_data_manager.h
[modify] https://crrev.com/4d15c063f39234d6e7ee52a62837b6bb4dbf2b0f/content/test/BUILD.gn

Project Member

Comment 24 by bugdroid1@chromium.org, Jun 8 2018

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

commit 26545b8ce3799aead97938da3a198b3000bfc5cb
Author: Rayan Kanso <rayankans@chromium.org>
Date: Fri Jun 08 17:48:59 2018

[Background Fetch] Remove non-persistent code in DataManager.

The switch will be deleted in a follow-up CL.

Bug:  826257 
Change-Id: I288e4bc5050714357c10b2d04e95586e23df44f4
Reviewed-on: https://chromium-review.googlesource.com/1089057
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#565676}
[modify] https://crrev.com/26545b8ce3799aead97938da3a198b3000bfc5cb/content/browser/background_fetch/background_fetch_data_manager.cc
[modify] https://crrev.com/26545b8ce3799aead97938da3a198b3000bfc5cb/content/browser/background_fetch/background_fetch_data_manager.h
[modify] https://crrev.com/26545b8ce3799aead97938da3a198b3000bfc5cb/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[modify] https://crrev.com/26545b8ce3799aead97938da3a198b3000bfc5cb/content/browser/background_fetch/background_fetch_scheduler.cc
[modify] https://crrev.com/26545b8ce3799aead97938da3a198b3000bfc5cb/content/browser/background_fetch/background_fetch_scheduler.h
[modify] https://crrev.com/26545b8ce3799aead97938da3a198b3000bfc5cb/content/browser/background_fetch/background_fetch_service_unittest.cc
[modify] https://crrev.com/26545b8ce3799aead97938da3a198b3000bfc5cb/content/browser/background_fetch/storage/get_settled_fetches_task.cc

Project Member

Comment 25 by bugdroid1@chromium.org, Jun 8 2018

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

commit e950eaedb17bbe6a0ddf1f2ebbdeb421a5011cc4
Author: Rayan Kanso <rayankans@chromium.org>
Date: Fri Jun 08 21:40:45 2018

[Background Fetch] Remove persistence switch.

Bug:  826257 
Change-Id: I8e4cc29d2c2bda04093820b1054a999e46738b9d
Reviewed-on: https://chromium-review.googlesource.com/1092733
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#565750}
[modify] https://crrev.com/e950eaedb17bbe6a0ddf1f2ebbdeb421a5011cc4/content/public/common/content_switches.cc
[modify] https://crrev.com/e950eaedb17bbe6a0ddf1f2ebbdeb421a5011cc4/content/public/common/content_switches.h

Status: Fixed (was: Started)
Project Member

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

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

commit a8583d142387d4d28578f5056a30df8fdb148098
Author: Rayan Kanso <rayankans@chromium.org>
Date: Thu Jun 21 19:23:26 2018

[Background Fetch] Update download total after fetch is complete.

After a fetch is complete, the metadata in the ServiceWorker database
is updated with the new total_downloaded value.

Bug:  826257 
Change-Id: I8167683cc89f0d8567ddc861e934b3a4f4a20bd7
Reviewed-on: https://chromium-review.googlesource.com/1080816
Reviewed-by: Peter Beverloo <peter@chromium.org>
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Cr-Commit-Position: refs/heads/master@{#569352}
[modify] https://crrev.com/a8583d142387d4d28578f5056a30df8fdb148098/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
[modify] https://crrev.com/a8583d142387d4d28578f5056a30df8fdb148098/content/browser/background_fetch/storage/mark_request_complete_task.cc
[modify] https://crrev.com/a8583d142387d4d28578f5056a30df8fdb148098/content/browser/background_fetch/storage/mark_request_complete_task.h

Sign in to add a comment