New issue
Advanced search Search tips

Issue 920001 link

Starred by 1 user

Issue metadata

Status: Unconfirmed
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

ChromeOS telemetry perf test always times out on first story

Project Member Reported by enne@chromium.org, Jan 8

Issue description

Copied from https://github.com/catapult-project/catapult/issues/4613

I'm trying to run telemetry perf tests on a ChromeOS device via a Linux command line like this: tools/perf/run_benchmark run rendering.desktop --story-tag-filter=repaint_desktop --browser=cros-chrome-guest --remote=coral --use-live-sites

When I do this, the first story never runs and always times out. The second story never looks like it runs visually but telemetry only sometimes times out. This happens with other story tag filters. If I delete the first story or two, this will still happen on the first one that it runs.

Here's a log:

[ RUN      ] rendering.desktop/repaint_amazon_2018
(WARNING) 2019-01-07 14:48:05,126 shared_page_state.WillRunStory:224  WPR archive missing: /c/src/tools/perf/page_sets/data/rendering_desktop_fdde4c2d8b.wprgo
(ERROR) 2019-01-07 14:49:21,096 browser.__init__:53  Failed with BrowserConnectionGoneException while starting the browser backend.
(ERROR) 2019-01-07 14:49:38,358 story_runner.ProcessError:116  Possibly handleable error. Will try to restart shared state
Traceback (most recent call last):
  File "/c/src/third_party/catapult/telemetry/telemetry/internal/story_runner.py", line 134, in _RunStoryAndProcessErrorIfNeeded
    state.WillRunStory(story)
  File "/c/src/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/c/src/tools/perf/page_sets/rendering/rendering_shared_state.py", line 57, in WillRunStory
    super(RenderingSharedState, self).WillRunStory(page)
  File "/c/src/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/c/src/third_party/catapult/telemetry/telemetry/page/shared_page_state.py", line 230, in WillRunStory
    self._StartBrowser(page)
  File "/c/src/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/c/src/third_party/catapult/telemetry/telemetry/page/shared_page_state.py", line 194, in _StartBrowser
    self._browser = self._possible_browser.Create(clear_caches=False)
  File "/c/src/third_party/catapult/telemetry/telemetry/internal/backends/chrome/cros_browser_finder.py", line 105, in Create
    browser_backend, self._platform_backend, startup_args)
  File "/c/src/third_party/catapult/telemetry/telemetry/internal/browser/browser.py", line 47, in __init__
    self._browser_backend.Start(startup_args, startup_url=startup_url)
  File "/c/src/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/c/src/third_party/catapult/telemetry/telemetry/internal/backends/chrome/cros_browser_backend.py", line 106, in Start
    self._WaitForLogin()
  File "/c/src/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/c/src/third_party/catapult/telemetry/telemetry/internal/backends/chrome/cros_browser_backend.py", line 211, in _WaitForLogin
    self.BindDevToolsClient()
  File "/c/src/third_party/catapult/common/py_trace_event/py_trace_event/trace_event_impl/decorators.py", line 75, in traced_function
    return func(*args, **kwargs)
  File "/c/src/third_party/catapult/telemetry/telemetry/internal/backends/chrome/chrome_browser_backend.py", line 114, in BindDevToolsClient
    raise exceptions.BrowserConnectionGoneException(self.browser, e)
BrowserConnectionGoneException: Timed out while waiting 60s for _IsConnectionReady.
Found Minidump: False
Stack Trace:
********************************************************************************
	Cannot get stack trace on CrOS
********************************************************************************
Standard output:
********************************************************************************
	Cannot get standard output on CrOS
********************************************************************************
System log:
(Not implemented)
(WARNING) 2019-01-07 14:49:38,362 shared_page_state.DumpStateUponFailure:119  Cannot dump browser state: No browser.
(WARNING) 2019-01-07 14:49:45,289 artifact_results.AddArtifact:134  Moving artifact file '/tmp/tmp1LEOjM.png' to '/c/src/tools/perf/artifacts'
(ERROR) 2019-01-07 14:49:45,290 page_test_results.Fail:587  Failure recorded: Exception raised running repaint_amazon_2018
[  FAILED  ] rendering.desktop/repaint_amazon_2018 (110349 ms)
 
Components: Tests>Telemetry
Cc: achuith@chromium.org
+Achuith knows about Telemetry for ChromeOS.

I can help if need be, but it would take a while since I don't currently have a ChromeOS device and I have never run Telemetry on ChromeOS. 

How is your linux box connected to your ChromeOS device?
The ChromeOS device has a usbc ethernet adapter which is plugged into the second ethernet port on the back of my Linux box.  I set up dhcp/iptables via the guide linked in the "chromeos new team members" doc: https://docs.google.com/document/d/1vF937iGTOfoOW_m5Ru2rMXfPNdOEXk7Xh75pyaTEwu0/edit.  The ChromeOS devices connects to the wider network through my Linux box and my Linux box can just ssh directly to the ChromeOS device.

Comment 4 by benhenry@google.com, Jan 16 (6 days ago)

Components: Test>Telemetry

Comment 5 by benhenry@google.com, Jan 16 (6 days ago)

Components: -Tests>Telemetry

Sign in to add a comment