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

Issue 865013002: IndexedDB: Ensure overlapping commits correctly update blob journals (Closed)

Created:
5 years, 11 months ago by jsbell
Modified:
5 years, 10 months ago
Reviewers:
cmumford
CC:
chromium-reviews, darin-cc_chromium.org, dgrogan, jsbell+idb_chromium.org, jam, cmumford
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

IndexedDB: Ensure overlapping commits correctly update blob journals The IDB implementation uses journals to track blob files which are to-be-written or to-be-deleted so that the files can be cleaned up following a crash or abort. The journal records are updated as part of a two-phase commit, and during database deletion. The journal updates and cleanups incorrectly assumed that only one transaction could commit at a time per backing store, so the first phase of a second transaction could inadvertently "clean up" the in progress work by a previous transaction, resulting in missing files. Untangle this and ensure that (1) transaction commits only append/remove journal entries, not the entire journal, and (2) changes outside transactions are deferred if transactions are running. R=cmumford@chromium.org BUG=447836 Committed: https://crrev.com/f27dd1d7e9322388546c613cfed39bafda153859 Cr-Commit-Position: refs/heads/master@{#313998}

Patch Set 1 #

Total comments: 12

Patch Set 2 : Review feedback #

Patch Set 3 : Rebased #

Unified diffs Side-by-side diffs Delta from patch set Stats (+396 lines, -176 lines) Patch
M content/browser/indexed_db/indexed_db_backing_store.h View 1 6 chunks +75 lines, -7 lines 0 comments Download
M content/browser/indexed_db/indexed_db_backing_store.cc View 1 2 22 chunks +280 lines, -167 lines 0 comments Download
M content/browser/indexed_db/indexed_db_backing_store_unittest.cc View 3 chunks +41 lines, -2 lines 0 comments Download

Messages

Total messages: 13 (3 generated)
jsbell
cmumford@ - please take a look?
5 years, 11 months ago (2015-01-21 23:43:59 UTC) #1
cmumford
https://codereview.chromium.org/865013002/diff/1/content/browser/indexed_db/indexed_db_backing_store.cc File content/browser/indexed_db/indexed_db_backing_store.cc (right): https://codereview.chromium.org/865013002/diff/1/content/browser/indexed_db/indexed_db_backing_store.cc#newcode636 content/browser/indexed_db/indexed_db_backing_store.cc:636: if (!journal.size()) Nit: if (journal.empty()) reads much better. https://codereview.chromium.org/865013002/diff/1/content/browser/indexed_db/indexed_db_backing_store.cc#newcode659 ...
5 years, 11 months ago (2015-01-22 00:56:57 UTC) #2
jsbell
Thanks. Better suggestions for tracking the outstanding count are welcome. https://codereview.chromium.org/865013002/diff/1/content/browser/indexed_db/indexed_db_backing_store.cc File content/browser/indexed_db/indexed_db_backing_store.cc (right): https://codereview.chromium.org/865013002/diff/1/content/browser/indexed_db/indexed_db_backing_store.cc#newcode636 ...
5 years, 11 months ago (2015-01-22 19:40:45 UTC) #3
jsbell
ping cmumford@
5 years, 10 months ago (2015-01-28 17:04:16 UTC) #4
cmumford
lgtm
5 years, 10 months ago (2015-01-29 22:27:18 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/865013002/40001
5 years, 10 months ago (2015-01-30 18:01:13 UTC) #7
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_x64_rel_ng on tryserver.chromium.win (http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_ng/builds/21413)
5 years, 10 months ago (2015-01-30 20:18:04 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/865013002/40001
5 years, 10 months ago (2015-01-30 20:34:49 UTC) #11
commit-bot: I haz the power
Committed patchset #3 (id:40001)
5 years, 10 months ago (2015-01-30 21:47:04 UTC) #12
commit-bot: I haz the power
5 years, 10 months ago (2015-01-30 21:48:10 UTC) #13
Message was sent while issue was closed.
Patchset 3 (id:??) landed as
https://crrev.com/f27dd1d7e9322388546c613cfed39bafda153859
Cr-Commit-Position: refs/heads/master@{#313998}

Powered by Google App Engine
This is Rietveld 408576698