SingleClientUserEventsSyncTest.PreserveConsentsOnDisableSync flaky on linux_chromium_rel_ng |
|||||||||||||||||
Issue descriptionEncountered in https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_rel_ng/94973 on an unrelated change. Failed 4 out of last 200 builds: https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_rel_ng/95667 https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_rel_ng/95583 https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_rel_ng/95527 https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_rel_ng/95517 [ RUN ] SingleClientUserEventsSyncTest.PreserveConsentsOnDisableSync [8847:8847:0516/091348.235366:5247324259:WARNING:loopback_server.cc(638)] Loopback sync persistent state file does not exist. Xlib: extension "RANDR" missing on display ":99". [8847:8914:0516/091348.399500:ERROR:bus.cc(394)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix") [8847:8847:0516/091348.401368:WARNING:password_store_factory.cc(250)] Using basic (unencrypted) store for password storage. See https://chromium.googlesource.com/chromium/src/+/master/docs/linux_password_storage.md for more information about password storage options. (sync_integration_tests:8847): LIBDBUSMENU-GLIB-WARNING **: Unable to get session bus: Unknown or unsupported transport 'disabled' for address 'disabled:' [8847:8847:0516/091348.490636:WARNING:gaia_auth_fetcher.cc(902)] Could not reach Google Accounts servers: errno -11 [8847:8847:0516/091348.546620:WARNING:password_store_factory.cc(250)] Using basic (unencrypted) store for password storage. See https://chromium.googlesource.com/chromium/src/+/master/docs/linux_password_storage.md for more information about password storage options. [8847:8958:0516/091348.654674:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Bookmarks [8847:8958:0516/091348.654827:WARNING:sync_encryption_handler_impl.cc(970)] Nigori had empty encryption keybag. [8847:8958:0516/091348.656239:WARNING:sync_encryption_handler_impl.cc(970)] Nigori had empty encryption keybag. [8847:8958:0516/091348.666635:WARNING:sync_encryption_handler_impl.cc(346)] Ignoring new implicit passphrase. Keystore migration already performed. [8847:8958:0516/091348.668248:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Bookmarks [8847:8958:0516/091348.730511:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Bookmarks [8847:8958:0516/091348.730535:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Preferences [8847:8958:0516/091348.730540:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Themes [8847:8958:0516/091348.730545:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Search Engines [8847:8958:0516/091348.730550:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Sessions [8847:8958:0516/091348.730555:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Apps [8847:8958:0516/091348.730561:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Device Info [8847:8958:0516/091348.734329:WARNING:sync_encryption_handler_impl.cc(346)] Ignoring new implicit passphrase. Keystore migration already performed. [8847:8958:0516/091348.738623:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Bookmarks [8847:8958:0516/091348.738641:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Preferences [8847:8958:0516/091348.738647:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Themes [8847:8958:0516/091348.738653:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Search Engines [8847:8958:0516/091348.738658:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Sessions [8847:8958:0516/091348.738663:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Apps [8847:8958:0516/091348.738669:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Device Info [8847:8958:0516/091348.739733:WARNING:get_updates_processor.cc(103)] Skipping unexpected progress marker for non-enabled type Device Info ../../chrome/browser/sync/test/integration/single_client_user_events_sync_test.cc:91: Failure Expected: (expected_specifics_.size()) >= (entities.size()), actual: 1 vs 2 Stack trace: #0 0x0000021ae06c testing::internal::UnitTestImpl::CurrentOsStackTraceExceptTop() #1 0x0000021ada49 testing::internal::AssertHelper::operator=() #2 0x0000020157ce (anonymous namespace)::UserEventEqualityChecker::IsExitConditionSatisfied() #3 0x0000046653cf StatusChangeChecker::CheckExitCondition() #4 0x000006fb6a05 browser_sync::ProfileSyncService::NotifySyncCycleCompleted() #5 0x000006fb7c43 browser_sync::ProfileSyncService::OnSyncCycleCompleted() #6 0x000006fa240b syncer::SyncBackendHostImpl::HandleSyncCycleCompletedOnFrontendLoop() #7 0x0000027db5cd _ZN4base8internal7InvokerINS0_9BindStateIMN5media12PipelineImplEFvRKN3gfx4SizeEEJNS_7WeakPtrIS4_EES6_EEEFvvEE3RunEPNS0_13BindStateBaseE #8 0x0000047be740 base::debug::TaskAnnotator::RunTask() #9 0x0000047e2776 base::internal::IncomingTaskQueue::RunTask() #10 0x0000047e0dc7 base::MessageLoop::RunTask() #11 0x0000047e11da base::MessageLoop::DeferOrRunPendingTask() #12 0x0000047e146e base::MessageLoop::DoWork() #13 0x0000047e61df base::(anonymous namespace)::WorkSourceDispatch() #14 0x7ffa1d80be04 g_main_context_dispatch #15 0x7ffa1d80c048 <unknown> #16 0x7ffa1d80c0ec g_main_context_iteration #17 0x0000047e5f92 base::MessagePumpGlib::Run() #18 0x0000047e06f1 base::MessageLoop::Run() #19 0x00000480c7b6 base::RunLoop::Run() #20 0x000004665293 StatusChangeChecker::StartBlockingWait() #21 0x0000046650e0 StatusChangeChecker::Wait() #22 0x000002015554 (anonymous namespace)::SingleClientUserEventsSyncTest::ExpectUserEvents() #23 0x00000201a985 (anonymous namespace)::SingleClientUserEventsSyncTest_PreserveConsentsOnDisableSync_Test::RunTestOnMainThread() #24 0x000009c87d3e content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() #25 0x000004b3d459 ChromeBrowserMainParts::PreMainMessageLoopRunImpl() #26 0x000004b3c11a ChromeBrowserMainParts::PreMainMessageLoopRun() #27 0x000002e95ed1 content::BrowserMainLoop::PreMainMessageLoopRun() #28 0x0000033414a5 content::StartupTaskRunner::RunAllTasksNow() #29 0x000002e94985 content::BrowserMainLoop::CreateStartupTasks() #30 0x000002e98a43 content::BrowserMainRunnerImpl::Initialize() #31 0x000002e92222 content::BrowserMain() #32 0x00000462d10b content::RunNamedProcessTypeMain() #33 0x00000462e502 content::ContentMainRunnerImpl::Run() #34 0x0000064ad5fb service_manager::Main() #35 0x00000462bcf4 content::ContentMain() #36 0x000009c878a2 content::BrowserTestBase::SetUp() #37 0x0000046765f0 InProcessBrowserTest::SetUp() #38 0x00000466b2b3 SyncTest::SetUp() ../../chrome/browser/sync/test/integration/single_client_user_events_sync_test.cc:105: Failure Value of: expected_specifics_.end() != iter Actual: false Expected: true Stack trace: #0 0x0000021ae06c testing::internal::UnitTestImpl::CurrentOsStackTraceExceptTop() #1 0x0000021ada49 testing::internal::AssertHelper::operator=() #2 0x0000020159a1 (anonymous namespace)::UserEventEqualityChecker::IsExitConditionSatisfied() #3 0x0000046653cf StatusChangeChecker::CheckExitCondition() #4 0x000006fb6a05 browser_sync::ProfileSyncService::NotifySyncCycleCompleted() #5 0x000006fb7c43 browser_sync::ProfileSyncService::OnSyncCycleCompleted() #6 0x000006fa240b syncer::SyncBackendHostImpl::HandleSyncCycleCompletedOnFrontendLoop() #7 0x0000027db5cd _ZN4base8internal7InvokerINS0_9BindStateIMN5media12PipelineImplEFvRKN3gfx4SizeEEJNS_7WeakPtrIS4_EES6_EEEFvvEE3RunEPNS0_13BindStateBaseE #8 0x0000047be740 base::debug::TaskAnnotator::RunTask() #9 0x0000047e2776 base::internal::IncomingTaskQueue::RunTask() #10 0x0000047e0dc7 base::MessageLoop::RunTask() #11 0x0000047e11da base::MessageLoop::DeferOrRunPendingTask() #12 0x0000047e146e base::MessageLoop::DoWork() #13 0x0000047e61df base::(anonymous namespace)::WorkSourceDispatch() #14 0x7ffa1d80be04 g_main_context_dispatch #15 0x7ffa1d80c048 <unknown> #16 0x7ffa1d80c0ec g_main_context_iteration #17 0x0000047e5f92 base::MessagePumpGlib::Run() #18 0x0000047e06f1 base::MessageLoop::Run() #19 0x00000480c7b6 base::RunLoop::Run() #20 0x000004665293 StatusChangeChecker::StartBlockingWait() #21 0x0000046650e0 StatusChangeChecker::Wait() #22 0x000002015554 (anonymous namespace)::SingleClientUserEventsSyncTest::ExpectUserEvents() #23 0x00000201a985 (anonymous namespace)::SingleClientUserEventsSyncTest_PreserveConsentsOnDisableSync_Test::RunTestOnMainThread() #24 0x000009c87d3e content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() #25 0x000004b3d459 ChromeBrowserMainParts::PreMainMessageLoopRunImpl() #26 0x000004b3c11a ChromeBrowserMainParts::PreMainMessageLoopRun() #27 0x000002e95ed1 content::BrowserMainLoop::PreMainMessageLoopRun() #28 0x0000033414a5 content::StartupTaskRunner::RunAllTasksNow() #29 0x000002e94985 content::BrowserMainLoop::CreateStartupTasks() #30 0x000002e98a43 content::BrowserMainRunnerImpl::Initialize() #31 0x000002e92222 content::BrowserMain() #32 0x00000462d10b content::RunNamedProcessTypeMain() #33 0x00000462e502 content::ContentMainRunnerImpl::Run() #34 0x0000064ad5fb service_manager::Main() #35 0x00000462bcf4 content::ContentMain() #36 0x000009c878a2 content::BrowserTestBase::SetUp() #37 0x0000046765f0 InProcessBrowserTest::SetUp() #38 0x00000466b2b3 SyncTest::SetUp() ../../chrome/browser/sync/test/integration/single_client_user_events_sync_test.cc:110: Failure Expected equality of these values: iter->second.event_case() Which is: 0 server_specifics.event_case() Which is: 8 Stack trace: #0 0x0000021ae06c testing::internal::UnitTestImpl::CurrentOsStackTraceExceptTop() #1 0x0000021ada49 testing::internal::AssertHelper::operator=() #2 0x000002015d3a (anonymous namespace)::UserEventEqualityChecker::IsExitConditionSatisfied() #3 0x0000046653cf StatusChangeChecker::CheckExitCondition() #4 0x000006fb6a05 browser_sync::ProfileSyncService::NotifySyncCycleCompleted() #5 0x000006fb7c43 browser_sync::ProfileSyncService::OnSyncCycleCompleted() #6 0x000006fa240b syncer::SyncBackendHostImpl::HandleSyncCycleCompletedOnFrontendLoop() #7 0x0000027db5cd _ZN4base8internal7InvokerINS0_9BindStateIMN5media12PipelineImplEFvRKN3gfx4SizeEEJNS_7WeakPtrIS4_EES6_EEEFvvEE3RunEPNS0_13BindStateBaseE #8 0x0000047be740 base::debug::TaskAnnotator::RunTask() #9 0x0000047e2776 base::internal::IncomingTaskQueue::RunTask() #10 0x0000047e0dc7 base::MessageLoop::RunTask() #11 0x0000047e11da base::MessageLoop::DeferOrRunPendingTask() #12 0x0000047e146e base::MessageLoop::DoWork() #13 0x0000047e61df base::(anonymous namespace)::WorkSourceDispatch() #14 0x7ffa1d80be04 g_main_context_dispatch #15 0x7ffa1d80c048 <unknown> #16 0x7ffa1d80c0ec g_main_context_iteration #17 0x0000047e5f92 base::MessagePumpGlib::Run() #18 0x0000047e06f1 base::MessageLoop::Run() #19 0x00000480c7b6 base::RunLoop::Run() #20 0x000004665293 StatusChangeChecker::StartBlockingWait() #21 0x0000046650e0 StatusChangeChecker::Wait() #22 0x000002015554 (anonymous namespace)::SingleClientUserEventsSyncTest::ExpectUserEvents() #23 0x00000201a985 (anonymous namespace)::SingleClientUserEventsSyncTest_PreserveConsentsOnDisableSync_Test::RunTestOnMainThread() #24 0x000009c87d3e content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() #25 0x000004b3d459 ChromeBrowserMainParts::PreMainMessageLoopRunImpl() #26 0x000004b3c11a ChromeBrowserMainParts::PreMainMessageLoopRun() #27 0x000002e95ed1 content::BrowserMainLoop::PreMainMessageLoopRun() #28 0x0000033414a5 content::StartupTaskRunner::RunAllTasksNow() #29 0x000002e94985 content::BrowserMainLoop::CreateStartupTasks() #30 0x000002e98a43 content::BrowserMainRunnerImpl::Initialize() #31 0x000002e92222 content::BrowserMain() #32 0x00000462d10b content::RunNamedProcessTypeMain() #33 0x00000462e502 content::ContentMainRunnerImpl::Run() #34 0x0000064ad5fb service_manager::Main() #35 0x00000462bcf4 content::ContentMain() #36 0x000009c878a2 content::BrowserTestBase::SetUp() #37 0x0000046765f0 InProcessBrowserTest::SetUp() #38 0x00000466b2b3 SyncTest::SetUp() BrowserTestBase received signal: Segmentation fault. Backtrace: #0 0x00000487725c base::debug::StackTrace::StackTrace() #1 0x000009c88025 content::(anonymous namespace)::DumpStackTraceSignalHandler() #2 0x7ffa184c3cb0 <unknown> #3 0x000002015df7 (anonymous namespace)::UserEventEqualityChecker::IsExitConditionSatisfied() #4 0x0000046653cf StatusChangeChecker::CheckExitCondition() #5 0x000006fb6a05 browser_sync::ProfileSyncService::NotifySyncCycleCompleted() #6 0x000006fb7c43 browser_sync::ProfileSyncService::OnSyncCycleCompleted() #7 0x000006fa240b syncer::SyncBackendHostImpl::HandleSyncCycleCompletedOnFrontendLoop() #8 0x0000027db5cd _ZN4base8internal7InvokerINS0_9BindStateIMN5media12PipelineImplEFvRKN3gfx4SizeEEJNS_7WeakPtrIS4_EES6_EEEFvvEE3RunEPNS0_13BindStateBaseE #9 0x0000047be740 base::debug::TaskAnnotator::RunTask() #10 0x0000047e2776 base::internal::IncomingTaskQueue::RunTask() #11 0x0000047e0dc7 base::MessageLoop::RunTask() #12 0x0000047e11da base::MessageLoop::DeferOrRunPendingTask() #13 0x0000047e146e base::MessageLoop::DoWork() #14 0x0000047e61df base::(anonymous namespace)::WorkSourceDispatch() #15 0x7ffa1d80be04 g_main_context_dispatch #16 0x7ffa1d80c048 <unknown> #17 0x7ffa1d80c0ec g_main_context_iteration #18 0x0000047e5f92 base::MessagePumpGlib::Run() #19 0x0000047e06f1 base::MessageLoop::Run() #20 0x00000480c7b6 base::RunLoop::Run() #21 0x000004665293 StatusChangeChecker::StartBlockingWait() #22 0x0000046650e0 StatusChangeChecker::Wait() #23 0x000002015554 (anonymous namespace)::SingleClientUserEventsSyncTest::ExpectUserEvents() #24 0x00000201a985 (anonymous namespace)::SingleClientUserEventsSyncTest_PreserveConsentsOnDisableSync_Test::RunTestOnMainThread() #25 0x000009c87d3e content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() #26 0x000004b3d459 ChromeBrowserMainParts::PreMainMessageLoopRunImpl() #27 0x000004b3c11a ChromeBrowserMainParts::PreMainMessageLoopRun() #28 0x000002e95ed1 content::BrowserMainLoop::PreMainMessageLoopRun() #29 0x0000033414a5 content::StartupTaskRunner::RunAllTasksNow() #30 0x000002e94985 content::BrowserMainLoop::CreateStartupTasks() #31 0x000002e98a43 content::BrowserMainRunnerImpl::Initialize() #32 0x000002e92222 content::BrowserMain() #33 0x00000462d10b content::RunNamedProcessTypeMain() #34 0x00000462e502 content::ContentMainRunnerImpl::Run() #35 0x0000064ad5fb service_manager::Main() #36 0x00000462bcf4 content::ContentMain() #37 0x000009c878a2 content::BrowserTestBase::SetUp() #38 0x0000046765f0 InProcessBrowserTest::SetUp() #39 0x00000466b2b3 SyncTest::SetUp() #40 0x0000021b2bad testing::Test::Run() #41 0x0000021b3710 testing::TestInfo::Run() #42 0x0000021b3c17 testing::TestCase::Run() #43 0x0000021bf4e7 testing::internal::UnitTestImpl::RunAllTests() #44 0x0000021bf06d testing::UnitTest::Run() #45 0x0000047a9a01 base::TestSuite::Run() #46 0x000004675902 ChromeTestSuiteRunner::RunTestSuite() #47 0x000009c8bde0 content::LaunchTests() #48 0x000004675da3 LaunchChromeTests() #49 0x000004645e8e main #50 0x7ffa184aef45 __libc_start_main #51 0x000001fe802a _start [57/313] SingleClientUserEventsSyncTest.PreserveConsentsOnDisableSync (CRASHED)
,
May 17 2018
Flakiness dashboard: https://test-results.appspot.com/dashboards/flakiness_dashboard.html#testType=sync_integration_tests&tests=PreserveConsentsOnDisableSync Seems to fail or flake in around 1 of 10 runs.
,
May 18 2018
Detected 36 new flakes for test/step "SingleClientUserEventsSyncTest.PreserveConsentsOnDisableSync". To see the actual flakes, please visit https://chromium-try-flakes.appspot.com/all_flake_occurrences?key=ahVzfmNocm9taXVtLXRyeS1mbGFrZXNyRwsSBUZsYWtlIjxTaW5nbGVDbGllbnRVc2VyRXZlbnRzU3luY1Rlc3QuUHJlc2VydmVDb25zZW50c09uRGlzYWJsZVN5bmMM. This message was posted automatically by the chromium-try-flakes app. Since flakiness is ongoing, the issue was moved back into Sheriff Bug Queue (unless already there).
,
May 18 2018
Findit identified the culprit r559028 with confidence 70.0% in the config "tryserver.chromium.chromiumos / linux-chromeos-rel" based on the flakiness trend: https://findit-for-me.appspot.com/waterfall/flake?key=ag9zfmZpbmRpdC1mb3ItbWVyygELEhdNYXN0ZXJGbGFrZUFuYWx5c2lzUm9vdCKTAWNocm9taXVtLmNocm9taXVtb3MvbGludXgtY2hyb21lb3MtcmVsLzgyMDgvc3luY19pbnRlZ3JhdGlvbl90ZXN0cy9VMmx1WjJ4bFEyeHBaVzUwVlhObGNrVjJaVzUwYzFONWJtTlVaWE4wTGxCeVpYTmxjblpsUTI5dWMyVnVkSE5QYmtScGMyRmliR1ZUZVc1agwLEhNNYXN0ZXJGbGFrZUFuYWx5c2lzGAEM Automatically posted by the findit-for-me app (https://goo.gl/Ot9f7N). Feedback is welcome! Please use component Tools>Test>FindIt>Flakiness
,
May 18 2018
+jkrcal@, since FindIt points to his change.
,
May 18 2018
Taking the bug over. It is likely my fault. I'd like to avoid reverting the culprit CL (because it is huge and the problem seems very localized) but I cannot investigate it now and I am OOO next Monday (public holiday). Thus, I disable the test for the time being and come back to it next week.
,
May 18 2018
,
May 18 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d61f943b7ad6f963863c23d1b3713cedb5006824 commit d61f943b7ad6f963863c23d1b3713cedb5006824 Author: Jan Krcal <jkrcal@chromium.org> Date: Fri May 18 20:52:49 2018 [USS] Disable a flaky test in SingleClientUserEventsSyncTest The CL disables a flaky test PreserveConsentsOnDisableSync before more investigation can be done to fix the issue. TBR=mastiz@chromium.org Bug: 843847 Change-Id: I9a91a5e69c9e51d72e7e4cb84a7b106821670696 Reviewed-on: https://chromium-review.googlesource.com/1065932 Reviewed-by: Jan Krcal <jkrcal@chromium.org> Commit-Queue: Jan Krcal <jkrcal@chromium.org> Cr-Commit-Position: refs/heads/master@{#560020} [modify] https://crrev.com/d61f943b7ad6f963863c23d1b3713cedb5006824/chrome/browser/sync/test/integration/single_client_user_events_sync_test.cc
,
May 22 2018
After an offline discussion, reassigning to vitaliii@ It seems the root cause of the flakiness is unrelated to r559028 identified in #4: If we run DisableSync and OnSyncStarting in a short sequence (as done by the now disabled test), we seem to get a race condition of disabling sync and enabling it back again. In particular, taks on the I/O thread seem to run in the following order: 1. store_->ReadAllData() called from UserEventSyncBridge::ApplyDisableSyncChanges(). 2. store_->ReadAllData() called from UserEventSyncBridge::OnSyncStarting() 3. store_->CommitWriteBatch() called from UserEventSyncBridge::OnReadAllDataToDelete(). In fact, 3. should run before 2. in order to get a consistent state from the DB. One possible solution is to implement this read-and-delete code atomically, by only one jump between the UI thread and the IO thread. Because the task runner is sequenced, we then get a guarantee that this code finishes before step 2. This solution would need adding a DeleteIf function into the model_type_store.h interface where the if logic is implemented using a callback (so it is run on the I/O thread and thus it runs atomically). Not sure how much work it would be. There are possibilities for more hacky fixes (like making step 2. also composed of two substeps, step 2. that jumps to the I/O thread and does nothing and jumps back and step 4 that jumps to the I/O thread and does the actually work; or actually changing the test so that we flush the i/o thread before we enable sync again). Vitalii won't have time to look at it this week but the bug does not seem urgent.
,
May 22 2018
,
May 22 2018
So, if this is a testing-only problem, I wonder if we can just deal with that in test code. IMO, ProfileSyncServiceHarness::StopSyncService() should wait for such tasks to finish. The background task runner is accessed via a singleton: https://cs.chromium.org/chromium/src/components/sync/model_impl/model_type_store_impl.cc?rcl=43090f2c8c2cde1683fc1d97354b63616ea1c671&l=220 So the harness could simply get access to that runner, post a dummy task to it and wait for that to be finished. Arguably, that's also brittle, but much less intrusive. Of course, things get much trickier if multiple tasks gets scheduled on that runner (or if runners get changed)...
,
May 23 2018
We are not sure, but it seems that this can happen on a real device as well (but it is unlikely). The read-delete happens non-atomically and that seems bad.
,
May 23 2018
I'm pretty sure this can be reproduced in production, outside tests, if the IO thread is busy enough (which is plausible). Note that this issue would be fixed for free once we split consents into a dedicated datatype.
,
Jun 7 2018
Ping: Any updates on this? Is it still a P1?
,
Jun 7 2018
Having consents as a separate datatype ( issue 840357 ) will fix this automatically. This is our only browser test for consents, so this looks like P1.
,
Jun 11 2018
,
Jun 20 2018
Triage ping, thanks.
,
Jun 20 2018
We won't enable the new datatype in the nearest future, thus, this CL has to wait.
,
Aug 6
triage ping
,
Sep 9
sync-triage-ping, any updates?
,
Oct 4
,
Oct 4
,
Nov 15
Once issue 905639 is addressed: 1) Rewrite the test to verify that everything gets deleted and reenable it. 2) Make a copy of the test but for Consent datatype and verify that nothing gets delete.
,
Nov 21
We already have SingleClientUserConsentsSyncTest.ShouldPreserveConsentsOnDisableSyncAndResubmitWhenReenabled. I think that covers it?
,
Nov 21
Yes, it covers this case, so no need to add another. Please consider repurposing this test in UserEventService to test deleting all user events when sync is disabled.
,
Nov 23
I'm not sure I follow. UserEventService doesn't buffer/cache any events at all. Maybe we could add some test on the bridge? But I think that's already covered.
,
Yesterday
(47 hours ago)
Adding vitaliii@ back to respond to #26. Can you please elaborate?
,
Yesterday
(42 hours ago)
Sorry, I meant user_event_sync_bridge.cc. AFAIK it should delete everything from the store when sync is disabled. |
|||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||
Comment 1 by treib@chromium.org
, May 17 2018