New issue
Advanced search Search tips

Issue 739959 link

Starred by 3 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Aug 2
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment

tools/perf presubmit checks can silently hang

Project Member Reported by kbr@chromium.org, Jul 7 2017

Issue description

I'm attempting to upload a change skipping a benchmark on Windows and src/tools/perf/validate_story_expectation_data is hanging, seemingly forever.

When I run it locally and Ctrl-C it, it seems to me it's hanging communicating with cloud storage. I'm probably not authenticated properly to cloud storage, but the script needs to provide a visible warning about this and exit cleanly.

Traceback (most recent call last):
  <module> at /usr/local/google/home/kbr/src/chrome/src/tools/perf/validate_story_expectation_data:12
    sys.exit(story_expectation_validator.main(sys.argv[1:]))
  main at /usr/local/google/home/kbr/src/chrome/src/tools/perf/core/story_expectation_validator.py:42
    validate_story_names(benchmarks)
  validate_story_names at /usr/local/google/home/kbr/src/chrome/src/tools/perf/core/story_expectation_validator.py:34
    story_set = b.CreateStorySet(options)
  CreateStorySet at /usr/local/google/home/kbr/src/chrome/src/tools/perf/benchmarks/system_health.py:113
    take_memory_measurement=True)
  __init__ at /usr/local/google/home/kbr/src/chrome/src/tools/perf/page_sets/system_health/system_health_stories.py:33
    self.AddStory(story_class(self, take_memory_measurement))
  __init__ at /usr/local/google/home/kbr/src/chrome/src/tools/perf/page_sets/system_health/system_health_story.py:90
    platform_specific=self.PLATFORM_SPECIFIC)
  __init__ at /usr/local/google/home/kbr/src/chrome/src/third_party/catapult/telemetry/telemetry/page/__init__.py:46
    cloud_storage.GetIfChanged(credentials_path, credentials_bucket)
  GetIfChanged at /usr/local/google/home/kbr/src/chrome/src/third_party/catapult/common/py_utils/py_utils/cloud_storage.py:422
    _GetLocked(bucket, expected_hash, file_path)
  _GetLocked at /usr/local/google/home/kbr/src/chrome/src/third_party/catapult/common/py_utils/py_utils/cloud_storage.py:348
    _RunCommand(['cp', url, partial_download_path.name])
  _RunCommand at /usr/local/google/home/kbr/src/chrome/src/third_party/catapult/common/py_utils/py_utils/cloud_storage.py:150
    stdout, stderr = gsutil.communicate()
  communicate at /usr/lib/python2.7/subprocess.py:799
    return self._communicate(input)
  _communicate at /usr/lib/python2.7/subprocess.py:1401
    stdout, stderr = self._communicate_with_poll(input)
  _communicate_with_poll at /usr/lib/python2.7/subprocess.py:1455
    ready = poller.poll()
KeyboardInterrupt


 
Owner: rnep...@chromium.org
Status: Assigned (was: Untriaged)
Randy: can you look at this since the code path in the stack is in story_expectation_validator?

Comment 2 by kbr@chromium.org, Jul 7 2017

Note, I didn't have a ~/.boto. Manually ran gsutil config and logged in with @chromium.org, but the script still takes a really long time, if it's making progress at all.

I believe we're seeing GCS errors on their side; so this should go away soon.

If you're running this locally you can pass --use-live-sites in run_benchmark which will not use WPR replays.

Comment 4 by kbr@chromium.org, Jul 7 2017

This is src/tools/perf/validate_story_expectation_data. I don't think it takes the --use-live-sites argument per src/tools/perf/core/story_expectation_validator.py , which deletes the incoming args.

Owner: ----
Status: Available (was: Assigned)
Status: WontFix (was: Available)
Haven't seen this in a while.

Components: Test>Telemetry
Components: -Speed>Telemetry

Sign in to add a comment