New issue
Advanced search Search tips

Issue 750334 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug

Blocking:
issue 557406



Sign in to add a comment

Different ShelfModel::AddAt Failure

Project Member Reported by jonr...@chromium.org, Jul 28 2017

Issue description

Similar to  issue 743050  a different shelf item is expected, yet missing, within the mash_browser_tests.

FATAL:shelf_model.cc(128)] Check failed: ItemIndexByID(item.id) == -1 (3 vs. -1) The id is not unique: app_id:poepnkcaokciidpipjecbhckenmhpnbl, launch_id:
#0 0x0000038b4f3c base::debug::StackTrace::StackTrace()
#1 0x0000038cd361 logging::LogMessage::~LogMessage()
#2 0x000006346ee0 ash::ShelfModel::AddAt()
#3 0x00000624091b ash::ShelfController::AddShelfItem()
#4 0x000002c383be ash::mojom::ShelfControllerStubDispatch::Accept()
#5 0x000004d985e2 mojo::InterfaceEndpointClient::HandleValidatedMessage()
#6 0x000004d98196 mojo::FilterChain::Accept()
#7 0x000004d99935 mojo::InterfaceEndpointClient::HandleIncomingMessage()
#8 0x000004da181d mojo::internal::MultiplexRouter::ProcessIncomingMessage()
#9 0x000004da0f0f mojo::internal::MultiplexRouter::Accept()
#10 0x000004d98196 mojo::FilterChain::Accept()
#11 0x000004d9747b mojo::Connector::ReadSingleMessage()
#12 0x000004d97d81 mojo::Connector::ReadAllAvailableMessages()
#13 0x000004d97c39 mojo::Connector::OnHandleReadyInternal()
#14 0x000001a49495 chromeos::file_system_provider::Int64ToIntCompletionCallback()
#15 0x000004db0716 mojo::SimpleWatcher::OnHandleReady()
#16 0x00000198e9ce _ZN4base8internal12InvokeHelperILb1EvE8MakeItSoIRKMN3arc40ArcActiveDirectoryEnrollmentTokenFetcherEFvN6policy22DeviceManagementStatusEiRKN21enterprise_management24DeviceManagementResponseEERKNS_7WeakPtrIS5_EEJS7_iSB_EEEvOT_OT0_DpOT1_
#17 0x0000038b56b0 base::debug::TaskAnnotator::RunTask()
#18 0x0000038d4b75 base::MessageLoop::RunTask()
#19 0x0000038d4e2b base::MessageLoop::DeferOrRunPendingTask()
#20 0x0000038d5234 base::MessageLoop::DoWork()
#21 0x0000038d75e9 base::MessagePumpLibevent::Run()
#22 0x0000038d47ab base::MessageLoop::Run()
#23 0x0000038fee3a base::RunLoop::Run()
#24 0x0000038a5dc2 (anonymous namespace)::StartEmbeddedService()
#25 0x00000258378d _ZN4base8internal7InvokerINS0_9BindStateIPFvN4mojo16InterfaceRequestIN5blink5mojom19KeyboardLockServiceEEEEJEEES9_E3RunEPNS0_13BindStateBaseEOS8_
#26 0x000002270572 service_manager::RunStandaloneService()
#27 0x0000038a59ee RunMashBrowserTests()
#28 0x0000038a5847 main
#29 0x7f108bf8ff45 __libc_start_main
#30 0x000000647bea <unknown>

First failing test logs: https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Fchromium.fyi%2FMojo_ChromiumOS%2F20447%2F%2B%2Frecipes%2Fsteps%2Fmash_browser_tests%2F0%2Fstdout
 

Comment 1 by msw@chromium.org, Jul 28 2017

Components: UI>Shell>Shelf
Labels: OS-Chrome
Status: Assigned (was: Untriaged)
Hmm, it's tough to tell what test failed from those logs...
I'll see if I can repro locally by just running the whole suite.

The problem here is likely a conflict between ChromeLauncherController and ShelfWindowWatcher both adding an item for the same window. That might be solved by fixing  Issue 730884 , ie. mark windows whose ShelfItem is managed by chrome to be ignored by ash's ShelfWindowWatcher earlier and more reliably.

Comment 2 by msw@chromium.org, Jul 28 2017

Blocking: 557406
Project Member

Comment 3 by bugdroid1@chromium.org, Sep 5 2017

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

commit 30f34f828ec3b91e86617e2af9732f0958a37a46
Author: Mike Wasserman <msw@chromium.org>
Date: Tue Sep 05 23:32:43 2017

mash: Avoid ChromeLauncherController and ShelfWindowWatcher race.

Initialize the shelf item type for chrome app [panel] windows early.
The window type should be marked before adding it to a container.
(that prevents ash::ShelfWindowWatcher from ever creating a shelf item)
(otherwise, Ash and Chrome race to create a shelf items for windows)

TODO: Apply this window property similarly early in classic ash.
(we don't currently use ShelfWindowWatcher for unknown windows there)

Bug:  730884 ,  750334 
Change-Id: I67fbf0fa48ddfdb4c89500e1f4dd3606ac69d675
Reviewed-on: https://chromium-review.googlesource.com/644849
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: Michael Wasserman <msw@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499796}
[modify] https://crrev.com/30f34f828ec3b91e86617e2af9732f0958a37a46/chrome/browser/ui/ash/launcher/arc_app_window_launcher_controller.cc
[modify] https://crrev.com/30f34f828ec3b91e86617e2af9732f0958a37a46/chrome/browser/ui/ash/launcher/extension_app_window_launcher_controller.cc
[modify] https://crrev.com/30f34f828ec3b91e86617e2af9732f0958a37a46/chrome/browser/ui/ash/launcher/multi_profile_app_window_launcher_controller.cc
[modify] https://crrev.com/30f34f828ec3b91e86617e2af9732f0958a37a46/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc

Comment 4 by msw@chromium.org, Sep 11 2017

Status: Fixed (was: Assigned)
I'm going to mark this as fixed, running the suite locally passes, and this hasn't been the cause of any recent fyi bot failures. ( 18 of the last 50 builds failed mash_browser_tests, but none showed a failure like this: https://luci-milo.appspot.com/buildbot/chromium.fyi/Mojo%20ChromiumOS/?limit=50 )

Comment 5 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Comment 6 by dchan@chromium.org, Jan 23 2018

Status: Fixed (was: Archived)
Components: -MUS Internals>Services>WindowService

Sign in to add a comment