New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 880735 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 2
Type: Bug

Blocked on:
issue 906995

Blocking:
issue 821065
issue 840703



Sign in to add a comment

Wallet USS integration doesn't clear data on DICe signout

Project Member Reported by feuunk@google.com, Sep 5

Issue description

The directory-based Wallet implementation clears the server data when sync gets disabled: https://cs.chromium.org/chromium/src/components/autofill/core/browser/autofill_wallet_data_type_controller.cc?rcl=a1ca22add2038d11daf60ac015f046a7725c1574&l=90.

We should do the same for the USS implementation. In the current USS experiment, this is fortunately masked by the fact that Wallet metadata still uses the autofill_wallet_data_type_controller, which deletes all wallet data anyways, but for the 1% butter experiment, we don't have this luxury.
 
Blocking: 840703
Project Member

Comment 2 by bugdroid1@chromium.org, Sep 6

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

commit 18686a4655c7c0640fbed731decd392fabf14832
Author: Florian Uunk <feuunk@chromium.org>
Date: Thu Sep 06 17:03:20 2018

Wallet USS: clear data on signout

Make sure the USS implementation also clears data on signout, just like
the directory-based implementation does. This also enables an
integration test to test this in the butter scenario.

Also making a small fix: Updating the storage in PDM in
OnSyncInitialized, because if sync is disabled, we won't get the
OnStateChanged call.

Bug: 880735
Change-Id: I6aa49b8c459a48cb92a1e3d7283f05eed8e6eb5c
Reviewed-on: https://chromium-review.googlesource.com/1206490
Commit-Queue: Florian Uunk <feuunk@chromium.org>
Reviewed-by: Mikel Astiz <mastiz@chromium.org>
Reviewed-by: Marc Treib <treib@chromium.org>
Reviewed-by: Sebastien Seguin-Gagnon <sebsg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#589197}
[modify] https://crrev.com/18686a4655c7c0640fbed731decd392fabf14832/chrome/browser/sync/test/integration/single_client_wallet_sync_test.cc
[modify] https://crrev.com/18686a4655c7c0640fbed731decd392fabf14832/components/autofill/core/browser/personal_data_manager.cc
[modify] https://crrev.com/18686a4655c7c0640fbed731decd392fabf14832/components/autofill/core/browser/personal_data_manager_unittest.cc
[modify] https://crrev.com/18686a4655c7c0640fbed731decd392fabf14832/components/autofill/core/browser/webdata/autofill_wallet_sync_bridge.cc
[modify] https://crrev.com/18686a4655c7c0640fbed731decd392fabf14832/components/autofill/core/browser/webdata/autofill_wallet_sync_bridge.h
[modify] https://crrev.com/18686a4655c7c0640fbed731decd392fabf14832/components/autofill/core/browser/webdata/autofill_wallet_sync_bridge_unittest.cc

Labels: Merge-Request-70
Labels: Sync-Triaged
Project Member

Comment 5 by sheriffbot@chromium.org, Sep 8

Labels: -Merge-Request-70 Hotlist-Merge-Approved Merge-Approved-70
Your change meets the bar and is auto-approved for M70. Please go ahead and merge the CL to branch 3538 manually. Please contact milestone owner if you have questions.
Owners: benmason@(Android), kariahda@(iOS), geohsu@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Owner: jkrcal@chromium.org
Project Member

Comment 7 by bugdroid1@chromium.org, Sep 10

Labels: -merge-approved-70 merge-merged-3538
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/217664340695d5c0af147a1ca1cecb75b6197a64

commit 217664340695d5c0af147a1ca1cecb75b6197a64
Author: Florian Uunk <feuunk@chromium.org>
Date: Mon Sep 10 14:08:39 2018

Wallet USS: clear data on signout

Make sure the USS implementation also clears data on signout, just like
the directory-based implementation does. This also enables an
integration test to test this in the butter scenario.

Also making a small fix: Updating the storage in PDM in
OnSyncInitialized, because if sync is disabled, we won't get the
OnStateChanged call.

Bug: 880735
Change-Id: I6aa49b8c459a48cb92a1e3d7283f05eed8e6eb5c
Reviewed-on: https://chromium-review.googlesource.com/1206490
Commit-Queue: Florian Uunk <feuunk@chromium.org>
Reviewed-by: Mikel Astiz <mastiz@chromium.org>
Reviewed-by: Marc Treib <treib@chromium.org>
Reviewed-by: Sebastien Seguin-Gagnon <sebsg@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#589197}(cherry picked from commit 18686a4655c7c0640fbed731decd392fabf14832)
Reviewed-on: https://chromium-review.googlesource.com/1216284
Reviewed-by: Jan Krcal <jkrcal@chromium.org>
Cr-Commit-Position: refs/branch-heads/3538@{#205}
Cr-Branched-From: 79f7c91a2b2a2932cd447fa6f865cb6662fa8fa6-refs/heads/master@{#587811}
[modify] https://crrev.com/217664340695d5c0af147a1ca1cecb75b6197a64/chrome/browser/sync/test/integration/single_client_wallet_sync_test.cc
[modify] https://crrev.com/217664340695d5c0af147a1ca1cecb75b6197a64/components/autofill/core/browser/personal_data_manager.cc
[modify] https://crrev.com/217664340695d5c0af147a1ca1cecb75b6197a64/components/autofill/core/browser/personal_data_manager_unittest.cc
[modify] https://crrev.com/217664340695d5c0af147a1ca1cecb75b6197a64/components/autofill/core/browser/webdata/autofill_wallet_sync_bridge.cc
[modify] https://crrev.com/217664340695d5c0af147a1ca1cecb75b6197a64/components/autofill/core/browser/webdata/autofill_wallet_sync_bridge.h
[modify] https://crrev.com/217664340695d5c0af147a1ca1cecb75b6197a64/components/autofill/core/browser/webdata/autofill_wallet_sync_bridge_unittest.cc

Labels: butter-hotlist
Status: Fixed (was: Untriaged)
The merged CL depends on https://chromium-review.googlesource.com/c/chromium/src/+/1209605 for the sync_integration_tests target (everything else seems to be fine). Since that's a test-only CL, probably best to just merge that too,
Project Member

Comment 11 by bugdroid1@chromium.org, Sep 18

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

commit 9873085335a1212cd7ab16d27ff9908532eb609a
Author: Marc Treib <treib@chromium.org>
Date: Tue Sep 18 12:11:08 2018

Fix sync_integration_tests build on M70 branch

https://crrev.com/c/1216284 was merged to the branch without all its
dependencies, with the result that sync_integration_tests currently
doesn't compile on the branch. Since multiple additional merges would
be required to sort everything out, this CL instead just fixed the build
directly on the branch. It's a simple rename in a test, so there's no
risk for the actual release builds.

Bug: 880735
Change-Id: I1079ac1bfdac57b5169181dbde54a8349c3fd564
Reviewed-on: https://chromium-review.googlesource.com/1230060
Reviewed-by: Jan Krcal <jkrcal@chromium.org>
Cr-Commit-Position: refs/branch-heads/3538@{#483}
Cr-Branched-From: 79f7c91a2b2a2932cd447fa6f865cb6662fa8fa6-refs/heads/master@{#587811}
[modify] https://crrev.com/9873085335a1212cd7ab16d27ff9908532eb609a/chrome/browser/sync/test/integration/single_client_wallet_sync_test.cc

Cc: se...@chromium.org
Status: Assigned (was: Fixed)
This is not properly fixed. 

The fix from #7
 - (probably) works for signout from Chrome (i.e. disabling sync) but 
 - it does not work for signout from secondary account (i.e. Dice signout) as sync data types do not get informed at all about this event.

The proper fix (from a disussion with mastiz@) is to stop sync and reconfigure sync on secondary account signout/signin.

Seb, how severe is this USS regression from your point of view? Should we stop the USS rollout?
Labels: -M-70 M-71
Summary: Wallet USS integration doesn't clear data on secondary account signout (was: Wallet USS integration doesn't clear data on sync disable/signout)
Summary: Wallet USS integration doesn't clear data on DICe signout (was: Wallet USS integration doesn't clear data on secondary account signout)
Terminology complaint :) (maybe nit-picky, but terminology around this is already confusing)

I don't think "secondary accounts" are involved at all here. The problem is that signing out via DICe is not a sign-out at all from Sync's POV, but rather "just" an auth error.
I thought we had code to re-mask server cards on a persistent auth error, specifically for this case?
Labels: -Pri-1 -M-71 M-73 Pri-2
Yes, I confirmed with Seb that the current code is WAI, at the moment.

I still believe a proper fix (outlined in #12) would be nice but I reduce prio back to 2 and punt it to M73.
Yes, exactly. This is not a regression as it happened pre-USS as well. I'd like to get this fixed now that we can with USS, but it should not block launch.
Blocking: 821065
Blockedon: 906995
Filed a blocking bug with a generic solution (from #12). 
When this is fixed, we can remove the wallet specific code to re-mask server cards.
Blocked-on bug not fixed yet, no updates expected here.

Sign in to add a comment