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

Issue 2401083003: [Sync] Adding integration tests for USS encryption and fixing a worker bug. (Closed)

Created:
4 years, 2 months ago by skym
Modified:
4 years, 2 months ago
Reviewers:
maxbogue, rkaplow, pavely
CC:
chromium-reviews, sync-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[Sync] Adding integration tests for USS encryption and fixing a worker bug. The worker bug was that we stored undecryptable updates in memory, while continuing to store progress marker changes to disk. To make dealing with this issue more difficult, OnCryptographerUpdated() is called twice while incorporating an update Nigori node, the first containing an old cryptographer that does not have new pending keys. Do address these issues, updates are no longer propagated to the processor on cryptographer change or when the cryptographer has pending keys. Adding EncryptionAcceptedApplyUpdates() to allow forcing propagation after, for example, a passphrase is entered successfully. BUG=647875 Committed: https://crrev.com/5afeb69d7607d1d31b98b16d1cfcfc98dd2b0f0b Cr-Commit-Position: refs/heads/master@{#426576}

Patch Set 1 #

Patch Set 2 : Rewrote some comments. #

Patch Set 3 : Updated another comment. #

Patch Set 4 : Removing "Encryptoin keys" capitalization fix. #

Total comments: 28

Patch Set 5 : Updates for Max. #

Patch Set 6 : Reworked logic in hopes of being more durable and fast failing. #

Patch Set 7 : Fixing spacing in sync_encryption_handler.h #

Total comments: 40

Patch Set 8 : Updates for Max. #

Total comments: 8

Patch Set 9 : Updated for rkaplow@'s comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+356 lines, -142 lines) Patch
M chrome/browser/sync/test/integration/two_client_uss_sync_test.cc View 1 2 3 4 5 6 7 3 chunks +79 lines, -40 lines 0 comments Download
M components/browser_sync/profile_sync_service.cc View 1 2 3 4 5 6 7 3 chunks +0 lines, -3 lines 0 comments Download
M components/sync/engine/sync_encryption_handler.h View 1 2 3 4 5 6 1 chunk +2 lines, -1 line 0 comments Download
M components/sync/engine_impl/model_type_registry.cc View 1 2 3 4 5 2 chunks +13 lines, -1 line 0 comments Download
M components/sync/engine_impl/model_type_worker.h View 1 2 3 4 5 6 7 4 chunks +22 lines, -0 lines 0 comments Download
M components/sync/engine_impl/model_type_worker.cc View 1 2 3 4 5 6 7 8 chunks +72 lines, -41 lines 0 comments Download
M components/sync/engine_impl/model_type_worker_unittest.cc View 1 2 3 4 5 6 7 18 chunks +144 lines, -54 lines 0 comments Download
M components/sync/test/engine/single_type_mock_server.h View 1 2 3 4 5 2 chunks +6 lines, -0 lines 0 comments Download
M components/sync/test/engine/single_type_mock_server.cc View 3 chunks +8 lines, -2 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 6 7 8 1 chunk +10 lines, -0 lines 0 comments Download

Messages

Total messages: 39 (26 generated)
skym
Max and Pavel, PTAL, there's definitely some less than ideal stuff in this CL, let ...
4 years, 2 months ago (2016-10-07 22:21:46 UTC) #7
maxbogue
https://codereview.chromium.org/2401083003/diff/60001/chrome/browser/sync/test/integration/two_client_uss_sync_test.cc File chrome/browser/sync/test/integration/two_client_uss_sync_test.cc (right): https://codereview.chromium.org/2401083003/diff/60001/chrome/browser/sync/test/integration/two_client_uss_sync_test.cc#newcode33 chrome/browser/sync/test/integration/two_client_uss_sync_test.cc:33: const char* kPassphrase = "12345"; That's the stupidest combination ...
4 years, 2 months ago (2016-10-11 15:56:39 UTC) #10
skym
https://codereview.chromium.org/2401083003/diff/60001/chrome/browser/sync/test/integration/two_client_uss_sync_test.cc File chrome/browser/sync/test/integration/two_client_uss_sync_test.cc (right): https://codereview.chromium.org/2401083003/diff/60001/chrome/browser/sync/test/integration/two_client_uss_sync_test.cc#newcode33 chrome/browser/sync/test/integration/two_client_uss_sync_test.cc:33: const char* kPassphrase = "12345"; On 2016/10/11 15:56:38, maxbogue ...
4 years, 2 months ago (2016-10-11 16:41:00 UTC) #11
skym
PTAL https://codereview.chromium.org/2401083003/diff/120001/components/sync/engine_impl/model_type_worker.cc File components/sync/engine_impl/model_type_worker.cc (right): https://codereview.chromium.org/2401083003/diff/120001/components/sync/engine_impl/model_type_worker.cc#newcode214 components/sync/engine_impl/model_type_worker.cc:214: DCHECK(!has_encryted_updates_); Should this be a CHECK? https://codereview.chromium.org/2401083003/diff/120001/components/sync/engine_impl/model_type_worker.h File ...
4 years, 2 months ago (2016-10-19 19:22:16 UTC) #20
maxbogue
lgtm; almost all comments are just nits and spelling. https://codereview.chromium.org/2401083003/diff/120001/chrome/browser/sync/test/integration/two_client_uss_sync_test.cc File chrome/browser/sync/test/integration/two_client_uss_sync_test.cc (right): https://codereview.chromium.org/2401083003/diff/120001/chrome/browser/sync/test/integration/two_client_uss_sync_test.cc#newcode279 chrome/browser/sync/test/integration/two_client_uss_sync_test.cc:279: ...
4 years, 2 months ago (2016-10-19 22:15:44 UTC) #21
skym
Updates for Max, adding rkaplow@ for histograms.xml change. https://codereview.chromium.org/2401083003/diff/120001/chrome/browser/sync/test/integration/two_client_uss_sync_test.cc File chrome/browser/sync/test/integration/two_client_uss_sync_test.cc (right): https://codereview.chromium.org/2401083003/diff/120001/chrome/browser/sync/test/integration/two_client_uss_sync_test.cc#newcode279 chrome/browser/sync/test/integration/two_client_uss_sync_test.cc:279: // ...
4 years, 2 months ago (2016-10-20 15:47:16 UTC) #23
skym
Adding rkaplow@ for real this time for histograms.xml change.
4 years, 2 months ago (2016-10-20 15:47:40 UTC) #26
rkaplow
lgtm https://codereview.chromium.org/2401083003/diff/140001/tools/metrics/histograms/histograms.xml File tools/metrics/histograms/histograms.xml (right): https://codereview.chromium.org/2401083003/diff/140001/tools/metrics/histograms/histograms.xml#newcode63577 tools/metrics/histograms/histograms.xml:63577: + enum="BooleanHasEncryptedUpdates"> nit, instead of a custom Boolean.. ...
4 years, 2 months ago (2016-10-20 17:31:10 UTC) #27
maxbogue
https://codereview.chromium.org/2401083003/diff/140001/tools/metrics/histograms/histograms.xml File tools/metrics/histograms/histograms.xml (right): https://codereview.chromium.org/2401083003/diff/140001/tools/metrics/histograms/histograms.xml#newcode63581 tools/metrics/histograms/histograms.xml:63581: + encrypted updates, but the cryptographer has no pending ...
4 years, 2 months ago (2016-10-20 18:12:46 UTC) #28
skym
https://codereview.chromium.org/2401083003/diff/140001/tools/metrics/histograms/histograms.xml File tools/metrics/histograms/histograms.xml (right): https://codereview.chromium.org/2401083003/diff/140001/tools/metrics/histograms/histograms.xml#newcode63577 tools/metrics/histograms/histograms.xml:63577: + enum="BooleanHasEncryptedUpdates"> On 2016/10/20 17:31:10, rkaplow wrote: > nit, ...
4 years, 2 months ago (2016-10-20 18:38:05 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2401083003/160001
4 years, 2 months ago (2016-10-20 18:42:56 UTC) #35
commit-bot: I haz the power
Committed patchset #9 (id:160001)
4 years, 2 months ago (2016-10-20 20:09:58 UTC) #37
commit-bot: I haz the power
4 years, 2 months ago (2016-10-21 13:21:49 UTC) #39
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/5afeb69d7607d1d31b98b16d1cfcfc98dd2b0f0b
Cr-Commit-Position: refs/heads/master@{#426576}

Powered by Google App Engine
This is Rietveld 408576698