• Findit's avatar
    Revert "Consistently clear server credit cards with USS" · eaacef69
    Findit authored
    This reverts commit 3efff7c9.
    
    Reason for revert:
    
    Findit (https://goo.gl/kROfz5) identified CL at revision 595787 as the
    culprit for flakes in the build cycles as shown on:
    https://findit-for-me.appspot.com/waterfall/flake/flake-culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyQwsSDEZsYWtlQ3VscHJpdCIxY2hyb21pdW0vM2VmZmY3YzlkOGMxZTUzYTg5NGE5YmY1MTY2MTVhNWM3ZjliMjU2Ygw
    
    Sample Failed Build: https://ci.chromium.org/buildbot/tryserver.chromium.win/win10_chromium_x64_rel_ng/106570
    
    Sample Failed Step: sync_integration_tests (with patch) on Windows-10-15063
    
    Sample Flaky Test: USS/SingleClientWalletSyncTest.ClearOnStopSync/1
    
    Original change's description:
    > Consistently clear server credit cards with USS
    > 
    > AutofillWalletDataTypeController is used (pre-USS) for both AUTOFILL_WALLET_DATA
    > and AUTOFILL_WALLET_METADATA. When Sync is stopped, it calls
    > PersonalDataManager::ClearAllServerData. Since there are two instances of the
    > controller, that happens twice (which is unnecessary but doesn't hurt). However,
    > when AUTOFILL_WALLET_DATA is on USS, then the remaining ClearAllServerData call
    > (for the metadata controller) still happens, which brings Sync into a bad state
    > since the data is now gone, but the progress marker is still there (see bug 885211).
    > 
    > This CL changes AutofillWalletDataTypeController to only call ClearAllServerData
    > for AUTOFILL_WALLET_DATA (i.e. it won't be called anymore if Wallet is on USS).
    > Instead, AUTOFILL_WALLET_DATA gets special-cased in ModelAssociationManager to
    > clear even in the STOP_SYNC case. This achieves the same "clear data on stopping
    > sync, but *not* on browser shutdown", but without requiring a special side channel
    > to the SyncService.
    > 
    > One consequence is that with AUTOFILL_WALLET_DATA on USS, the clearing now happens
    > asynchronously (because it goes through the DB), which requires some test changes.
    > 
    > Bug: 889941
    > Change-Id: I54c36050c81fa862acfc0052f355ff1645a8b292
    > Reviewed-on: https://chromium-review.googlesource.com/1251041
    > Commit-Queue: Marc Treib <treib@chromium.org>
    > Reviewed-by: Sebastien Seguin-Gagnon <sebsg@chromium.org>
    > Reviewed-by: Jan Krcal <jkrcal@chromium.org>
    > Reviewed-by: Florian Uunk <feuunk@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#595787}
    
    Change-Id: I429e5ef10c8d5b858f36ce69cc2b41b30e318fd4
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Bug: 889941, 891254
    Reviewed-on: https://chromium-review.googlesource.com/1255573
    Cr-Commit-Position: refs/heads/master@{#595831}
    eaacef69
model_association_manager.h 7.87 KB