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

Issue 858922 link

Starred by 2 users

Issue metadata

Status: Duplicate
Merged: issue 858963
Owner:
Closed: Jul 12
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug-Regression

Blocked on:
issue 858963



Sign in to add a comment

mini_installer_tests failing on win10_chromium_x64_rel_ng

Project Member Reported by kbr@chromium.org, Jun 29 2018

Issue description

Examples:

https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win10_chromium_x64_rel_ng/40039
https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win10_chromium_x64_rel_ng/40015
https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win10_chromium_x64_rel_ng/40009
https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win10_chromium_x64_rel_ng/39992

Failing tests:
__main__.InstallerTest.ChromeUserLevel
__main__.InstallerTest.MigrateMultiSimple

Excerpt from one shard:
ERROR: ChromeUserLevel: no_pv -> install_chrome_user -> chrome_user_installed_not_inuse -> test_chrome_with_chromedriver_user -> chrome_user_installed_not_inuse -> uninstall_chrome_user -> clean

----------------------------------------------------------------------
Traceback (most recent call last):
  File "../../chrome/test/mini_installer/test_installer.py", line 156, in runTest
    self._config.actions[action], self._variable_expander)
  File "../../chrome/test/mini_installer/test_installer.py", line 231, in RunCommand
    expanded_command, returncode))
Exception: Command python test_chrome_with_chromedriver.py --chromedriver-path="C:\b\s\w\ir\out\Release_x64\chromedriver.exe"  "C:\Users\chrome-bot\AppData\Local\Chromium\Application\chrome.exe" returned non-zero exit status 1

 

Comment 1 by grt@chromium.org, Jun 29 2018

Components: Tests>WebDriver
Labels: -Pri-1 Pri-2
Status: Available (was: Untriaged)
exit code 1 == content::RESULT_CODE_KILLED

Looking at the timestamps, it looks like webdriver gave up after 10 minutes:

selenium.common.exceptions.WebDriverException: Message: u'session not created exception\nfrom timeout: Timed out receiving message from renderer: 600.000\n  (Session info: chrome=69.0.3476.0)\n  (Driver info: chromedriver=2.40.571344 (6670570c8283f3cd02e4e99fe72c7e2f87c2e217),platform=Windows NT 10.0.15063 x86_64)' 

So something happened between Chrome and chromedriver. I'll ask on chromedriver-users if there's a way to diagnose this better.

Comment 2 by kbr@chromium.org, Jun 29 2018

Blockedon: 858963
Cc: sunn...@chromium.org
Note: this might have had the same root cause as  Issue 858963  and might already be fixed. Regardless, yes, chromedriver or our harness should add some facility for symbolizing any minidumps that were generated during the test's run. Telemetry already contains such code and there are already build targets to get the needed binaries onto the test machine (like cdb.exe on Windows) so hopefully this should not be too difficult.

Cc: kbr@chromium.org yihongg@chromium.org
Owner: crouleau@chromium.org
Status: Assigned (was: Available)
Hi, are these test still broken? Are they turned off? I am happy to take a look at this if needed.
Mergedinto: 858963
Status: Duplicate (was: Assigned)
They were fixed by the fix for  Issue 858963 . Duplicating into that bug.

kbr: is the extra diagnostic info you propose in comment 2 something to be done in the mini_installer test, or does it belong somewhere in webdriver/chromedriver? could you point out where this is already done in the telemetry tests? thanks.
Here's the code in Telemetry that gets a stack trace from a minidump:
https://cs.chromium.org/chromium/src/third_party/catapult/telemetry/telemetry/internal/backends/chrome/desktop_browser_backend.py?type=cs&q=_GetStackFromMinidump&sq=package:chromium&g=0&l=420

The code which can enumerate all unsymbolized minidumps:
https://cs.chromium.org/chromium/src/third_party/catapult/telemetry/telemetry/internal/backends/chrome/desktop_browser_backend.py?type=cs&q=GetAllUnsymbolizedMinidumpPaths&sq=package:chromium&g=0&l=514

and the code which automatically appends the symbolized minidump to the AppCrashException which is propagated through Telemetry if something goes wrong with the browser:
https://cs.chromium.org/chromium/src/third_party/catapult/telemetry/telemetry/core/exceptions.py?type=cs&q=_minidump_path&sq=package:chromium&g=0&l=74

Hopefully some of this scaffolding could be integrated into WebDriver. There are still issues like if both the GPU and a renderer process crash we don't see both minidumps, but this would at least be a start if it were integrated into WebDriver.

Thanks!

Sign in to add a comment