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

Issue 8929007: Restore sessionStorage when chrome restarts. (Closed)

Created:
9 years ago by marja
Modified:
8 years, 4 months ago
Reviewers:
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, jam, dpranke-watch+content_chromium.org
Visibility:
Public.

Description

Restore sessionStorage when chrome restarts. Write sessionStorage always to disk (like localStorage). When restoring tabs after a restart or a crash, associate the sessionStorages with the correct tabs. BUG=104292 TEST=TBD

Patch Set 1 #

Total comments: 23

Patch Set 2 : Rebased. #

Patch Set 3 : Code review. #

Patch Set 4 : Working around ScheduleReset. #

Patch Set 5 : Delete sessionStorage files. #

Patch Set 6 : Cloning sessionStorage; handling incognito. #

Patch Set 7 : Purging. #

Patch Set 8 : Code review. #

Total comments: 2

Patch Set 9 : Fix: cloning storage areas. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+454 lines, -28 lines) Patch
M chrome/browser/sessions/session_restore.cc View 1 2 3 4 5 6 7 8 3 chunks +20 lines, -0 lines 0 comments Download
M chrome/browser/sessions/session_service.h View 1 2 3 4 7 chunks +31 lines, -1 line 0 comments Download
M chrome/browser/sessions/session_service.cc View 1 2 3 4 14 chunks +150 lines, -2 lines 0 comments Download
M chrome/browser/sessions/session_types.h View 1 2 chunks +3 lines, -0 lines 0 comments Download
M content/browser/in_process_webkit/dom_storage_area.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M content/browser/in_process_webkit/dom_storage_area.cc View 1 2 3 4 5 6 7 8 1 chunk +8 lines, -0 lines 0 comments Download
M content/browser/in_process_webkit/dom_storage_context.h View 1 2 3 4 5 4 chunks +15 lines, -1 line 0 comments Download
M content/browser/in_process_webkit/dom_storage_context.cc View 1 2 3 4 5 6 7 8 9 chunks +82 lines, -5 lines 0 comments Download
M content/browser/in_process_webkit/dom_storage_message_filter.h View 1 2 3 4 5 6 7 8 3 chunks +7 lines, -0 lines 0 comments Download
M content/browser/in_process_webkit/dom_storage_message_filter.cc View 1 2 3 4 5 6 7 8 4 chunks +47 lines, -3 lines 0 comments Download
M content/browser/in_process_webkit/dom_storage_namespace.h View 1 2 3 4 5 6 7 8 5 chunks +22 lines, -1 line 0 comments Download
M content/browser/in_process_webkit/dom_storage_namespace.cc View 1 2 3 4 5 6 7 8 4 chunks +43 lines, -15 lines 0 comments Download
M content/browser/in_process_webkit/webkit_context.h View 1 2 3 4 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/in_process_webkit/webkit_context.cc View 1 2 3 4 1 chunk +13 lines, -0 lines 0 comments Download
M content/public/browser/notification_types.h View 1 2 3 1 chunk +6 lines, -0 lines 0 comments Download

Messages

Total messages: 7 (0 generated)
jochen (gone - plz use gerrit)
http://codereview.chromium.org/8929007/diff/1/chrome/browser/sessions/session_service.h File chrome/browser/sessions/session_service.h (right): http://codereview.chromium.org/8929007/diff/1/chrome/browser/sessions/session_service.h#newcode437 chrome/browser/sessions/session_service.h:437: typedef std::map<int64, please add a comment what is mapped ...
9 years ago (2011-12-13 13:47:32 UTC) #1
michaeln
Under what circumstances are tabs/sessions restored from disk? I'm not clear on what the use-cases ...
9 years ago (2011-12-13 20:40:03 UTC) #2
michaeln
So based in the CPS meeting... sounds like the restore feature s/b targeting the most ...
9 years ago (2011-12-15 23:15:08 UTC) #3
marja
I'm finally resuming this sessionStorage work, here are some old comments. (Not all problems you've ...
8 years, 11 months ago (2012-01-11 15:17:53 UTC) #4
marja
Hi, I uploaded a new version which (hopefully) tackles: - ScheduleResets in SessionService - Cloning ...
8 years, 11 months ago (2012-01-17 16:21:49 UTC) #5
michaeln
http://codereview.chromium.org/8929007/diff/29001/content/browser/in_process_webkit/dom_storage_context.cc File content/browser/in_process_webkit/dom_storage_context.cc (right): http://codereview.chromium.org/8929007/diff/29001/content/browser/in_process_webkit/dom_storage_context.cc#newcode350 content/browser/in_process_webkit/dom_storage_context.cc:350: // have a simple function for doing this. Not ...
8 years, 11 months ago (2012-01-17 21:25:13 UTC) #6
marja
8 years, 11 months ago (2012-01-19 12:43:42 UTC) #7
http://codereview.chromium.org/8929007/diff/29001/content/browser/in_process_...
File content/browser/in_process_webkit/dom_storage_context.cc (right):

http://codereview.chromium.org/8929007/diff/29001/content/browser/in_process_...
content/browser/in_process_webkit/dom_storage_context.cc:350: // have a simple
function for doing this.
On 2012/01/17 21:25:13, michaeln wrote:
> Not sure this approach to cloning session storage works? See
> StorageAreaSync.cpp. I think this approach relies on synchronous
characteristics
> that webcore's localstorage system does not have.
> 
> * the files being copied are accessed on a background thread so at the time
> these file copies occur they may be in some intermediary state
> 
> * key/value mutations are not immediately written to an underlying file on
disk,
> the current webcore impl has a one second timer.

Ah, true, this was broken, thanks for pointing it out. I uploaded a new version
which reads the data from DOMStorageAreas with GetItem and sets it to another
DOMStorageArea with SetItem; how does that look?

Powered by Google App Engine
This is Rietveld 408576698