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

Issue 913181 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 1
Type: Bug
Flaky-Test: AppShimInteractiveTest.Launch

Blocking:
issue 902583



Sign in to add a comment

AppShimInteractiveTest.Launch is flaky

Project Member Reported by Findit, Dec 8

Issue description

Have a fix ready.
Labels: -Sheriff-Chromium
Owner: ccameron@chromium.org
Status: Assigned (was: Untriaged)
The issue has the right owner, so I'm removing Sheriff-Chromium.
Cc: mamir@chromium.org szager@chromium.org yhirano@chromium.org ramyan@chromium.org ccameron@chromium.org
 Issue 913490  has been merged into this issue.
Cc: hua...@chromium.org
Project Member

Comment 6 by bugdroid1@chromium.org, Dec 10

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

commit 489b58517172cd4d17436e239b8e886f1467c47a
Author: Christopher Cameron <ccameron@chromium.org>
Date: Mon Dec 10 21:38:44 2018

De-flake AppShimInteractiveTest.Launch

This test depended on a synchronous quitting handshake. Now instead
just ensure that the messages are queued before terminate.

Bug: 913181
Change-Id: I15428a0fc263d16885a69486ef3f77faf74806cd
Reviewed-on: https://chromium-review.googlesource.com/c/1369136
Commit-Queue: ccameron <ccameron@chromium.org>
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Cr-Commit-Position: refs/heads/master@{#615269}
[modify] https://crrev.com/489b58517172cd4d17436e239b8e886f1467c47a/chrome/browser/apps/app_shim/app_shim_interactive_uitest_mac.mm

Blocking: 902583
Components: Tests>Flaky
Labels: OS-Mac
Sorry to inform you that the fix hasn't shown any effect. I have to revert the found culprit anyway.

14 of 17 Tests are still failing on Mac 10.11 and about half of all tests on Mac 10.13. Latest failures:
https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Mac10.11%20Tests/31644
https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Mac10.11%20Tests/31642

Error Log:
[ RUN      ] AppShimInteractiveTest.Launch
[46240:6151:1211/003323.895321:WARNING:notification_platform_bridge_mac.mm(521)] AlertNotificationService: XPC connection invalidated.
[46240:775:1211/003326.194391:ERROR:app_shim_host_mac.cc(69)] Channel error custom_reason:0 description:
../../chrome/browser/apps/app_shim/app_shim_interactive_uitest_mac.mm:419: Failure
Value of: GetFirstAppWindow()
  Actual: true
Expected: false
Stack trace:
0   interactive_ui_tests                0x00000001062b3b1b testing::internal::UnitTestImpl::CurrentOsStackTraceExceptTop(int) + 91
1   interactive_ui_tests                0x00000001062b34d9 testing::internal::AssertHelper::operator=(testing::Message const&) const + 89
2   interactive_ui_tests                0x000000010606e0cb apps::AppShimInteractiveTest_Launch_Test::RunTestOnMainThread() + 2171
3   interactive_ui_tests                0x0000000109758d2b content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() + 491
4   interactive_ui_tests                0x00000001091564bf ChromeBrowserMainParts::PreMainMessageLoopRunImpl() + 4319
5   interactive_ui_tests                0x000000010915531d ChromeBrowserMainParts::PreMainMessageLoopRun() + 45
6   interactive_ui_tests                0x000000010738a402 content::BrowserMainLoop::PreMainMessageLoopRun() + 50
7   interactive_ui_tests                0x00000001077ee807 content::StartupTaskRunner::RunAllTasksNow() + 39
8   interactive_ui_tests                0x0000000107388fab content::BrowserMainLoop::CreateStartupTasks() + 683
9   interactive_ui_tests                0x000000010738c605 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) + 85
10  interactive_ui_tests                0x0000000107387412 content::BrowserMain(content::MainFunctionParams const&) + 178
11  interactive_ui_tests                0x0000000108cfc3c1 content::ContentMainRunnerImpl::RunServiceManager(content::MainFunctionParams&, bool) + 241
12  interactive_ui_tests                0x0000000108cfc2a4 content::ContentMainRunnerImpl::Run(bool) + 292
13  interactive_ui_tests                0x000000010c0883e0 service_manager::Main(service_manager::MainParams const&) + 2352
14  interactive_ui_tests                0x0000000108cfb454 content::ContentMain(content::ContentMainParams const&) + 68
15  interactive_ui_tests                0x000000010975897d content::BrowserTestBase::SetUp() + 2829
16  interactive_ui_tests                0x00000001090fb2b1 InProcessBrowserTest::SetUp() + 529

[46240:775:1211/003326.658548:WARNING:pref_notifier_impl.cc(23)] Pref observer found at shutdown.
[46240:775:1211/003326.658581:WARNING:pref_notifier_impl.cc(23)] Pref observer found at shutdown.
[  FAILED  ] AppShimInteractiveTest.Launch, where TypeParam =  and GetParam() =  (2898 ms)
[ RUN      ] AppShimInteractiveTest.Launch
[48097:6919:1211/003738.714289:WARNING:notification_platform_bridge_mac.mm(521)] AlertNotificationService: XPC connection invalidated.
[48097:775:1211/003740.845456:ERROR:app_shim_host_mac.cc(69)] Channel error custom_reason:0 description:
../../chrome/browser/apps/app_shim/app_shim_interactive_uitest_mac.mm:419: Failure
Value of: GetFirstAppWindow()
  Actual: true
Expected: false
Stack trace:
0   interactive_ui_tests                0x000000010fd1ab1b testing::internal::UnitTestImpl::CurrentOsStackTraceExceptTop(int) + 91
1   interactive_ui_tests                0x000000010fd1a4d9 testing::internal::AssertHelper::operator=(testing::Message const&) const + 89
2   interactive_ui_tests                0x000000010fad50cb apps::AppShimInteractiveTest_Launch_Test::RunTestOnMainThread() + 2171
3   interactive_ui_tests                0x00000001131bfd2b content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() + 491
4   interactive_ui_tests                0x0000000112bbd4bf ChromeBrowserMainParts::PreMainMessageLoopRunImpl() + 4319
5   interactive_ui_tests                0x0000000112bbc31d ChromeBrowserMainParts::PreMainMessageLoopRun() + 45
6   interactive_ui_tests                0x0000000110df1402 content::BrowserMainLoop::PreMainMessageLoopRun() + 50
7   interactive_ui_tests                0x0000000111255807 content::StartupTaskRunner::RunAllTasksNow() + 39
8   interactive_ui_tests                0x0000000110deffab content::BrowserMainLoop::CreateStartupTasks() + 683
9   interactive_ui_tests                0x0000000110df3605 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) + 85
10  interactive_ui_tests                0x0000000110dee412 content::BrowserMain(content::MainFunctionParams const&) + 178
11  interactive_ui_tests                0x00000001127633c1 content::ContentMainRunnerImpl::RunServiceManager(content::MainFunctionParams&, bool) + 241
12  interactive_ui_tests                0x00000001127632a4 content::ContentMainRunnerImpl::Run(bool) + 292
13  interactive_ui_tests                0x0000000115aef3e0 service_manager::Main(service_manager::MainParams const&) + 2352
14  interactive_ui_tests                0x0000000112762454 content::ContentMain(content::ContentMainParams const&) + 68
15  interactive_ui_tests                0x00000001131bf97d content::BrowserTestBase::SetUp() + 2829
16  interactive_ui_tests                0x0000000112b622b1 InProcessBrowserTest::SetUp() + 529

[48097:775:1211/003741.281625:WARNING:pref_notifier_impl.cc(23)] Pref observer found at shutdown.
[48097:775:1211/003741.281665:WARNING:pref_notifier_impl.cc(23)] Pref observer found at shutdown.
[  FAILED  ] AppShimInteractiveTest.Launch, where TypeParam =  and GetParam() =  (2710 ms)
[ RUN      ] AppShimInteractiveTest.Launch
[48114:6403:1211/003741.625313:WARNING:notification_platform_bridge_mac.mm(521)] AlertNotificationService: XPC connection invalidated.
[48114:775:1211/003743.454476:ERROR:app_shim_host_mac.cc(69)] Channel error custom_reason:0 description:
../../chrome/browser/apps/app_shim/app_shim_interactive_uitest_mac.mm:419: Failure
Value of: GetFirstAppWindow()
  Actual: true
Expected: false
Stack trace:
0   interactive_ui_tests                0x0000000109332b1b testing::internal::UnitTestImpl::CurrentOsStackTraceExceptTop(int) + 91
1   interactive_ui_tests                0x00000001093324d9 testing::internal::AssertHelper::operator=(testing::Message const&) const + 89
2   interactive_ui_tests                0x00000001090ed0cb apps::AppShimInteractiveTest_Launch_Test::RunTestOnMainThread() + 2171
3   interactive_ui_tests                0x000000010c7d7d2b content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() + 491
4   interactive_ui_tests                0x000000010c1d54bf ChromeBrowserMainParts::PreMainMessageLoopRunImpl() + 4319
5   interactive_ui_tests                0x000000010c1d431d ChromeBrowserMainParts::PreMainMessageLoopRun() + 45
6   interactive_ui_tests                0x000000010a409402 content::BrowserMainLoop::PreMainMessageLoopRun() + 50
7   interactive_ui_tests                0x000000010a86d807 content::StartupTaskRunner::RunAllTasksNow() + 39
8   interactive_ui_tests                0x000000010a407fab content::BrowserMainLoop::CreateStartupTasks() + 683
9   interactive_ui_tests                0x000000010a40b605 content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) + 85
10  interactive_ui_tests                0x000000010a406412 content::BrowserMain(content::MainFunctionParams const&) + 178
11  interactive_ui_tests                0x000000010bd7b3c1 content::ContentMainRunnerImpl::RunServiceManager(content::MainFunctionParams&, bool) + 241
12  interactive_ui_tests                0x000000010bd7b2a4 content::ContentMainRunnerImpl::Run(bool) + 292
13  interactive_ui_tests                0x000000010f1073e0 service_manager::Main(service_manager::MainParams const&) + 2352
14  interactive_ui_tests                0x000000010bd7a454 content::ContentMain(content::ContentMainParams const&) + 68
15  interactive_ui_tests                0x000000010c7d797d content::BrowserTestBase::SetUp() + 2829
16  interactive_ui_tests                0x000000010c17a2b1 InProcessBrowserTest::SetUp() + 529

[48114:775:1211/003743.880934:WARNING:pref_notifier_impl.cc(23)] Pref observer found at shutdown.
[48114:775:1211/003743.880973:WARNING:pref_notifier_impl.cc(23)] Pref observer found at shutdown.
[  FAILED  ] AppShimInteractiveTest.Launch, where TypeParam =  and GetParam() =  (2384 ms)
Revert has landed and  issue 902583  was reopened accordingly. Forgot to link the bug in https://crrev.com/c/1364220.

So here's the change log:
commit 2e1e507d5b922a215e32bf7981e72fe3883997be
Author: Friedrich Horschig [CET] <fhorschig@chromium.org>
Date: Tue Dec 11 10:52:00 2018

Revert "RemoteMacViews: Fix hang at command-Q"

This reverts commit 464fae69315d22b6bce86525bb73305bd0cc7296.

Reason for revert: Causes heavy flakiness (14/17 on Mac 10.11) and attempted fix showed no effect: https://crrev.com/c/1369136

TBR=ccameron@chromium.org
Bug:  902583 

Original change's description:
> RemoteMacViews: Fix hang at command-Q
> 
> When we call -[NSApp terminate] in the app shim process, this does
> not immediately terminate. Rather, it
>  0. Sends the message appShimController_->host()->QuitApp() and waits
>     for a reply before actually terminating.
>  1. In the browser, this call hits ExtensionAppShimHandler::
>     CloseBrowsersForApp
>  2. Which will end up calling NativeWidgetMac::Close
>  3. Which will then politely request that the app shim process close
>     the corresponding window via
>     views_bridge_mac::mojom::BridgedNativeWidget::CloseWindow
>  4. Which will send an ack back to the browser via
>     views_bridge_mac::mojom::BridgedNativeWidgetHost::OnWindowHasClosed
>  5. Whereupon the browser window will be registered as closed, and a
>     close message will be sent to the app shim, and the wait for
>     termination will break
> 
> This ends up not working at step 3. Our suspended terminate ends up
> running a nested message loop inside a mojo message handler, and so
> it will never execute the CloseWindow message, and therefore never
> close.
> 
> Change the logic at [0] to send the QuitApp message, and then
> immediately terminate the application.
> 
> Bug:  902583 
> Change-Id: I60fd7b5fdf9f145369d06219e8ebef36cdcd0f44
> Reviewed-on: https://chromium-review.googlesource.com/c/1364220
> Reviewed-by: Robert Sesek <rsesek@chromium.org>
> Commit-Queue: ccameron <ccameron@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#614922}

TBR=ccameron@chromium.org,rsesek@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug:  902583 
Change-Id: I34a3300dc188cdd0de58692042ce131a8639117f
Reviewed-on: https://chromium-review.googlesource.com/c/1371475
Reviewed-by: Friedrich Horschig [CET] <fhorschig@chromium.org>
Commit-Queue: Friedrich Horschig [CET] <fhorschig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#615485}
[modify] https://crrev.com/2e1e507d5b922a215e32bf7981e72fe3883997be/chrome/app_shim/app_shim_controller.mm
[modify] https://crrev.com/2e1e507d5b922a215e32bf7981e72fe3883997be/chrome/app_shim/app_shim_delegate.h
[modify] https://crrev.com/2e1e507d5b922a215e32bf7981e72fe3883997be/chrome/app_shim/app_shim_delegate.mm
[modify] https://crrev.com/2e1e507d5b922a215e32bf7981e72fe3883997be/ui/views_bridge_mac/bridged_native_widget_impl.mm

Sign in to add a comment