Skip to content

core(stacks): timeout stack detection#11172

Merged
devtools-bot merged 5 commits into
masterfrom
stacks_gatherer_fix
Aug 5, 2020
Merged

core(stacks): timeout stack detection#11172
devtools-bot merged 5 commits into
masterfrom
stacks_gatherer_fix

Conversation

@patrickhulce

@patrickhulce patrickhulce commented Jul 28, 2020

Copy link
Copy Markdown
Collaborator

Summary
The stacks gatherer has a few async detections that can never resolve when the page overrides fetch or does other weird things. When this happens the entire run becomes fatal 😢

This adds a strict 1s timeout to each async detection to avoid PROTOCOL_TIMEOUT.

Real-world site that had this problem: https://www.tiffany.com/

Related Issues/PRs
fixes #11124
upstream fix johnmichel/Library-Detector-for-Chrome#175

@patrickhulce patrickhulce requested a review from a team as a code owner July 28, 2020 18:01
@patrickhulce patrickhulce requested review from paulirish and removed request for a team July 28, 2020 18:01

@paulirish paulirish left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sg just a nit asking for a comment

Comment thread lighthouse-core/lib/stack-collector.js
@devtools-bot devtools-bot merged commit f900675 into master Aug 5, 2020
@devtools-bot devtools-bot deleted the stacks_gatherer_fix branch August 5, 2020 18:09
radum added a commit to radum/lighthouse that referenced this pull request Aug 13, 2020
* upstream/master: (42 commits)
  docs: add Code of Conduct to project (GoogleChrome#11212)
  docs(readme): add related project: lighthouse-viewer (GoogleChrome#11250)
  core(font-size): remove deprecated DOM.getFlattenedDocument (GoogleChrome#11248)
  misc: fix typo in method name (GoogleChrome#11239)
  i18n: make double dollar validation less strict (GoogleChrome#10299)
  misc: rephrase comments to be more inclusive (GoogleChrome#11228)
  misc: tweak gcp scripts to work in google corp (GoogleChrome#11233)
  v6.2.0 (GoogleChrome#11232)
  report: correctly display CLS in budget table (GoogleChrome#11209)
  report: vertically center thumbnails (GoogleChrome#11220)
  i18n: import (GoogleChrome#11225)
  tests: istanbul ignore inpage function (GoogleChrome#11229)
  deps(snyk): update script to prune <0.0.0 and update snapshot (GoogleChrome#11223)
  core(stacks): timeout stack detection (GoogleChrome#11172)
  core(config): unsized-images to default (GoogleChrome#11217)
  core(image-elements): collect CSS sizing, ShadowRoot, & position (GoogleChrome#11188)
  core: add FormElements gatherer (GoogleChrome#11062)
  new_audit: report animations not run on compositor (GoogleChrome#11105)
  tests: update chromestatus expecatations (GoogleChrome#11221)
  deps: update dot-prop secondary dependency (GoogleChrome#11198)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Chrome crashes when running stacks gatherer sometimes

4 participants