tools/perf presubmit checks can silently hang |
|||||
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
,
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.
,
Jul 7 2017
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.
,
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.
,
Aug 2
,
Aug 2
Haven't seen this in a while.
,
Jan 16
,
Jan 16
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by nedngu...@google.com
, Jul 7 2017Status: Assigned (was: Untriaged)