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

Issue 1144543009: [Android] Only invalidate objects that were received from Tango on resume. (Closed)

Created:
5 years, 7 months ago by knn
Modified:
5 years, 6 months ago
CC:
chromium-reviews, tim+watch_chromium.org, zea+watch_chromium.org, maxbogue+watch_chromium.org, pvalenzuela+watch_chromium.org, plaree+watch_chromium.org, maniscalco+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[Android] Only invalidate objects that were received from Tango on resume. On Android, invalidations are deferred if they are received when Chrome is in the background. Presently we invalidate all objectIds if any invalidation was received when Chrome was in the background. This cl changes that by storing the specific invalidations received and only falling back to invalidating all if the stored invalidations cannot be parsed. Further references to sync in places that deal with generic invalidations have been updated to reflect that. Branched from http://crrev.com/1131733003/ BUG=489722 Committed: https://crrev.com/d6ed555991e93a5a18b40d9846dad00b624ec899 Cr-Commit-Position: refs/heads/master@{#333513}

Patch Set 1 #

Patch Set 2 : addressed Bernhard's comments #

Total comments: 18

Patch Set 3 : Rebase with upstream + Use Json Reader,Writer #

Total comments: 11

Patch Set 4 : Json->ProtoBuf + Tests #

Total comments: 4

Patch Set 5 : s/file/preferences #

Total comments: 4

Patch Set 6 : Nits #

Total comments: 18

Patch Set 7 : sync -> invalidation #

Total comments: 10

Patch Set 8 : #

Patch Set 9 : Fix InvalidationClientServiceTest #

Total comments: 2

Patch Set 10 : maybe remove flakiness #

Patch Set 11 : +toString #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+806 lines, -1230 lines) Patch
A + chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapter.java View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
A + chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapterService.java View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
A + chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromiumSyncAdapter.java View 1 2 3 4 5 6 11 chunks +28 lines, -60 lines 0 comments Download
A + chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromiumSyncAdapterService.java View 1 2 3 4 5 6 2 chunks +3 lines, -3 lines 0 comments Download
A chrome/android/java/src/org/chromium/chrome/browser/invalidation/DelayedInvalidationsController.java View 1 2 3 4 5 6 7 1 chunk +154 lines, -0 lines 0 comments Download
A + chrome/android/java/src/org/chromium/chrome/browser/invalidation/OWNERS View 1 2 3 4 5 6 7 0 chunks +-1 lines, --1 lines 0 comments Download
D chrome/android/java/src/org/chromium/chrome/browser/sync/ChromeBrowserSyncAdapter.java View 1 2 3 4 5 6 1 chunk +0 lines, -22 lines 0 comments Download
D chrome/android/java/src/org/chromium/chrome/browser/sync/ChromeBrowserSyncAdapterService.java View 1 2 3 4 5 6 1 chunk +0 lines, -19 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java View 1 2 3 4 5 6 1 chunk +0 lines, -203 lines 0 comments Download
D chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapterService.java View 1 2 3 4 5 6 1 chunk +0 lines, -36 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/sync/DelayedSyncController.java View 1 2 3 4 5 6 1 chunk +0 lines, -112 lines 0 comments Download
M chrome/android/java_staging/AndroidManifest.xml View 1 2 3 4 5 6 7 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/android/java_staging/src/org/chromium/chrome/browser/PowerBroadcastReceiver.java View 1 2 3 4 5 6 2 chunks +2 lines, -2 lines 0 comments Download
A + chrome/android/javatests/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapterTest.java View 1 2 3 4 5 6 6 chunks +43 lines, -43 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/sync/ChromeBrowserSyncAdapterTest.java View 1 2 3 4 5 6 1 chunk +0 lines, -143 lines 0 comments Download
A + chrome/android/javatests_shell/src/org/chromium/chrome/browser/invalidation/ChromiumSyncAdapterTest.java View 1 2 3 4 5 6 6 chunks +37 lines, -56 lines 0 comments Download
A chrome/android/javatests_shell/src/org/chromium/chrome/browser/invalidation/DelayedInvalidationsControllerTest.java View 1 2 3 4 5 6 7 8 9 1 chunk +188 lines, -0 lines 0 comments Download
M chrome/android/javatests_shell/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapterTest.java View 1 2 3 4 5 6 1 chunk +0 lines, -143 lines 0 comments Download
M chrome/android/javatests_shell/src/org/chromium/chrome/browser/sync/DelayedSyncControllerTest.java View 1 2 3 4 5 6 1 chunk +0 lines, -118 lines 0 comments Download
M chrome/android/shell/java/AndroidManifest.xml.jinja2 View 1 2 3 4 5 6 7 1 chunk +2 lines, -2 lines 0 comments Download
M chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java View 1 2 3 4 5 6 1 chunk +2 lines, -2 lines 0 comments Download
A + chrome/android/shell/java/src/org/chromium/chrome/shell/invalidation/ChromeShellSyncAdapter.java View 1 2 3 4 5 6 1 chunk +2 lines, -2 lines 0 comments Download
A + chrome/android/shell/java/src/org/chromium/chrome/shell/invalidation/ChromeShellSyncAdapterService.java View 1 2 3 4 5 6 1 chunk +3 lines, -3 lines 0 comments Download
A + chrome/android/shell/java/src/org/chromium/chrome/shell/signin/AccountChooserFragment.java View 1 2 3 4 5 6 2 chunks +3 lines, -4 lines 0 comments Download
A + chrome/android/shell/java/src/org/chromium/chrome/shell/signin/SignoutFragment.java View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
D chrome/android/shell/java/src/org/chromium/chrome/shell/sync/AccountChooserFragment.java View 1 2 3 4 5 6 1 chunk +0 lines, -63 lines 0 comments Download
D chrome/android/shell/java/src/org/chromium/chrome/shell/sync/ChromeShellSyncAdapter.java View 1 2 3 4 5 6 1 chunk +0 lines, -21 lines 0 comments Download
D chrome/android/shell/java/src/org/chromium/chrome/shell/sync/ChromeShellSyncAdapterService.java View 1 2 3 4 5 6 1 chunk +0 lines, -19 lines 0 comments Download
D chrome/android/shell/java/src/org/chromium/chrome/shell/sync/SignoutFragment.java View 1 2 3 4 5 6 1 chunk +0 lines, -44 lines 0 comments Download
M chrome/android/sync_shell/java/AndroidManifest.xml.jinja2 View 1 2 3 4 5 6 7 1 chunk +2 lines, -2 lines 0 comments Download
M components/invalidation.gypi View 1 2 3 4 5 6 3 chunks +26 lines, -0 lines 0 comments Download
M components/invalidation/BUILD.gn View 1 2 3 4 5 6 2 chunks +16 lines, -0 lines 0 comments Download
M components/invalidation/android/java/src/org/chromium/components/invalidation/InvalidationClientService.java View 1 2 3 4 5 6 2 chunks +10 lines, -18 lines 0 comments Download
M components/invalidation/android/java/src/org/chromium/components/invalidation/InvalidationService.java View 4 chunks +9 lines, -10 lines 0 comments Download
A components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java View 1 2 3 4 5 6 7 8 9 10 1 chunk +135 lines, -0 lines 1 comment Download
M components/invalidation/android/javatests/src/org/chromium/components/invalidation/InvalidationClientServiceTest.java View 1 2 3 4 5 6 7 8 5 chunks +24 lines, -21 lines 0 comments Download
A components/invalidation/android/junit/src/org/chromium/components/invalidation/PendingInvalidationTest.java View 1 2 3 4 5 6 1 chunk +51 lines, -0 lines 0 comments Download
A components/invalidation/android/proto/serialized_invalidation.proto View 1 2 3 4 5 6 1 chunk +18 lines, -0 lines 0 comments Download
M components/invalidation/invalidation_service_android.h View 1 2 3 2 chunks +6 lines, -11 lines 0 comments Download
M components/invalidation/invalidation_service_android.cc View 1 1 chunk +38 lines, -44 lines 0 comments Download

Messages

Total messages: 36 (7 generated)
knn
nyquist@chromium.org: I have branched it from the previous cl as it was getting too big. ...
5 years, 7 months ago (2015-05-19 18:11:00 UTC) #2
knn
Transcribed non trivial comments from old patch. PTAL. https://codereview.chromium.org/1144543009/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java (right): https://codereview.chromium.org/1144543009/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java#newcode144 chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java:144: final ...
5 years, 7 months ago (2015-05-20 11:42:02 UTC) #3
Bernhard Bauer
https://codereview.chromium.org/1144543009/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java (right): https://codereview.chromium.org/1144543009/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java#newcode34 chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java:34: * A invalidation adapter for Chromium. "Sync adapter" is ...
5 years, 7 months ago (2015-05-20 16:05:51 UTC) #4
knn
PTAL. https://codereview.chromium.org/1144543009/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java (right): https://codereview.chromium.org/1144543009/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java#newcode34 chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java:34: * A invalidation adapter for Chromium. On 2015/05/20 ...
5 years, 7 months ago (2015-05-21 14:14:06 UTC) #5
knn
Sent too early. PowerBroadcastReceiver and ChromeBrowserSyncAdapterTest has been added from downstream cl.
5 years, 7 months ago (2015-05-21 14:17:18 UTC) #6
Bernhard Bauer
Nice! LGTM with an optional thingy below: https://codereview.chromium.org/1144543009/diff/40001/components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java File components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java (right): https://codereview.chromium.org/1144543009/diff/40001/components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java#newcode84 components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java:84: // Handled ...
5 years, 7 months ago (2015-05-21 16:21:25 UTC) #7
nyquist
this is great! after changing to protobufs, I think this should be more or less ...
5 years, 7 months ago (2015-05-22 20:21:07 UTC) #8
knn
PTAL. I have added some tests. Hope the coverage is better now. https://codereview.chromium.org/1144543009/diff/40001/chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/sync/ChromiumSyncAdapter.java ...
5 years, 6 months ago (2015-06-04 18:23:29 UTC) #10
Bernhard Bauer
https://codereview.chromium.org/1144543009/diff/40001/components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java File components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java (right): https://codereview.chromium.org/1144543009/diff/40001/components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java#newcode96 components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java:96: StringWriter stringWriter = new StringWriter(); On 2015/06/04 18:23:29, knn ...
5 years, 6 months ago (2015-06-05 08:20:49 UTC) #11
knn
I misunderstood what is ugly, reverted to using preferences instead of a file now. PTAL. ...
5 years, 6 months ago (2015-06-05 15:09:53 UTC) #12
Bernhard Bauer
Nice! Just two nits: https://codereview.chromium.org/1144543009/diff/100001/components/invalidation.gypi File components/invalidation.gypi (right): https://codereview.chromium.org/1144543009/diff/100001/components/invalidation.gypi#newcode211 components/invalidation.gypi:211: 'target_name': 'invalidation_java_unit_tests', Nit: These kinds ...
5 years, 6 months ago (2015-06-05 16:17:49 UTC) #13
knn
Done. Thanks for the quick review! https://codereview.chromium.org/1144543009/diff/100001/components/invalidation.gypi File components/invalidation.gypi (right): https://codereview.chromium.org/1144543009/diff/100001/components/invalidation.gypi#newcode211 components/invalidation.gypi:211: 'target_name': 'invalidation_java_unit_tests', On ...
5 years, 6 months ago (2015-06-05 16:31:43 UTC) #14
nyquist
https://codereview.chromium.org/1144543009/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/sync/DelayedSyncController.java File chrome/android/java/src/org/chromium/chrome/browser/sync/DelayedSyncController.java (right): https://codereview.chromium.org/1144543009/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/sync/DelayedSyncController.java#newcode32 chrome/android/java/src/org/chromium/chrome/browser/sync/DelayedSyncController.java:32: public class DelayedSyncController { Now with your new awesomeness ...
5 years, 6 months ago (2015-06-05 19:49:40 UTC) #15
knn
PTAL. Moved files to appropriate places now, so has some more files with trivial package ...
5 years, 6 months ago (2015-06-08 11:09:01 UTC) #16
knn
Also few things I missed, Bernhard, you are the owner of the churn area. PTAL. ...
5 years, 6 months ago (2015-06-08 11:18:17 UTC) #17
Bernhard Bauer
Moves/renames LGTM
5 years, 6 months ago (2015-06-08 11:30:35 UTC) #18
nyquist
lgtm https://codereview.chromium.org/1144543009/diff/140001/chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapter.java (right): https://codereview.chromium.org/1144543009/diff/140001/chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapter.java#newcode13 chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapter.java:13: public class ChromeBrowserSyncAdapter extends ChromiumSyncAdapter { This requires ...
5 years, 6 months ago (2015-06-08 23:42:03 UTC) #19
nyquist
https://codereview.chromium.org/1144543009/diff/140001/chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapterService.java File chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapterService.java (right): https://codereview.chromium.org/1144543009/diff/140001/chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapterService.java#newcode13 chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapterService.java:13: public class ChromeBrowserSyncAdapterService extends ChromiumSyncAdapterService { Requires manifest change. ...
5 years, 6 months ago (2015-06-08 23:45:52 UTC) #20
nyquist
Regarding OWNERS, please copy: chrome/android/java/src/org/chromium/chrome/browser/sync/OWNERS to chrome/android/java/src/org/chromium/chrome/browser/invalidation/OWNERS
5 years, 6 months ago (2015-06-09 05:58:10 UTC) #21
knn
https://codereview.chromium.org/1144543009/diff/140001/chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapter.java (right): https://codereview.chromium.org/1144543009/diff/140001/chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapter.java#newcode13 chrome/android/java/src/org/chromium/chrome/browser/invalidation/ChromeBrowserSyncAdapter.java:13: public class ChromeBrowserSyncAdapter extends ChromiumSyncAdapter { On 2015/06/08 23:42:03, ...
5 years, 6 months ago (2015-06-09 10:18:30 UTC) #22
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1144543009/160001
5 years, 6 months ago (2015-06-09 10:19:16 UTC) #25
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_android_rel_ng/builds/31538)
5 years, 6 months ago (2015-06-09 12:34:53 UTC) #27
nyquist
https://codereview.chromium.org/1144543009/diff/180001/components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java File components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java (right): https://codereview.chromium.org/1144543009/diff/180001/components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java#newcode25 components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java:25: public class PendingInvalidation { Given the test error; would ...
5 years, 6 months ago (2015-06-09 14:20:30 UTC) #28
knn
https://codereview.chromium.org/1144543009/diff/180001/components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java File components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java (right): https://codereview.chromium.org/1144543009/diff/180001/components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java#newcode25 components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java:25: public class PendingInvalidation { On 2015/06/09 14:20:29, nyquist wrote: ...
5 years, 6 months ago (2015-06-09 15:13:54 UTC) #29
nyquist
thanks. still lgtm.
5 years, 6 months ago (2015-06-09 16:46:39 UTC) #30
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1144543009/220001
5 years, 6 months ago (2015-06-09 17:04:23 UTC) #33
commit-bot: I haz the power
Committed patchset #11 (id:220001)
5 years, 6 months ago (2015-06-09 17:26:39 UTC) #34
commit-bot: I haz the power
Patchset 11 (id:??) landed as https://crrev.com/d6ed555991e93a5a18b40d9846dad00b624ec899 Cr-Commit-Position: refs/heads/master@{#333513}
5 years, 6 months ago (2015-06-09 17:27:50 UTC) #35
Bernhard Bauer
5 years, 6 months ago (2015-06-11 10:17:48 UTC) #36
Message was sent while issue was closed.
https://codereview.chromium.org/1144543009/diff/220001/components/invalidatio...
File
components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java
(right):

https://codereview.chromium.org/1144543009/diff/220001/components/invalidatio...
components/invalidation/android/java/src/org/chromium/components/invalidation/PendingInvalidation.java:132:
return String.format("objectSrc:%d,objectId:%s,version:%d,payload:%s",
mObjectSource,
BTW, I'm getting a Lint error during build about implicitly using the default
locale.

Powered by Google App Engine
This is Rietveld 408576698