New issue
Advanced search Search tips

Issue 753818 link

Starred by 5 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug-Regression



Sign in to add a comment

Headless chrome failing on gzip compression check

Reported by eyt...@gmail.com, Aug 9 2017

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.86 Safari/537.36

Steps to reproduce the problem:
1. chrome --headless --disable-gpu --enable-logging -v=99 http://www.aerojetrocketdyne.com/

2. repeat a couple of times
3. 

What is the expected behavior?
Should load the page.

What went wrong?
It crashes with the message head being:

[0809/150544.422425:FATAL:blink_platform_impl.cc(606)] Check failed: compression::GzipUncompress(resource.as_string(), &uncompressed). 

It doesn't always reliably reproduce, as I have to run it several times before the crash occurs. It could also be an artifact of my network setup, although I've tried it on an internal and an external (AWS) network and have encountered the same problem.

Crashed report ID: 

How much crashed? Whole browser

Is it a problem with a plugin? N/A 

Did this work before? Yes 60.0.3112.78

Chrome version: 62.0.3181.0  Channel: canary
OS Version: ubuntu-xenial
Flash Version:
 

Comment 1 by eyt...@gmail.com, Aug 9 2017

I've attached the log output. Also, I obtained this version using the scripts from https://github.com/scheib/chromium-latest-linux.

And the current build (of 62.0.3181.0, I presume) is 492966.
chrome-crash.log
23.3 KB View Download

Comment 2 by mattm@chromium.org, Aug 9 2017

Labels: Needs-Feedback
It appears the function that's crashing is retrieving static resources included with chrome: https://chromium.googlesource.com/chromium/src/+/5a52527e6a2e2/content/child/blink_platform_impl.cc#606

If it's randomly failing to gunzip that would imply to me that you may have some sort of hardware issue like bad ram. 
(It could also be a corrupted file in your installation, but I'd expect that to reproduce reliably, not randomly.)

Are you able to reproduce this on more than one machine?

Comment 3 by eyt...@gmail.com, Aug 9 2017

I've been able to reproduce it on at least three different linux machines, one of which has 32GB of RAM.

It also looks like that line of code was introduced in commit 60f0d3f.

https://chromium.googlesource.com/chromium/src/+/60f0d3fdcd32ace98f0baafab27ee420637d3760

I can't figure out if that changeset has been put into the dev release channel yet, but I tried the latest dev version (62.0.3178.0), and--on the same machines--I don't have this issue. It's only with the nightly build.
Project Member

Comment 4 by sheriffbot@chromium.org, Aug 9 2017

Cc: mattm@chromium.org
Labels: -Needs-Feedback
Thank you for providing more feedback. Adding requester "mattm@chromium.org" to the cc list and removing "Needs-Feedback" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 5 by mattm@chromium.org, Aug 10 2017

That change has been in since M59: https://storage.googleapis.com/chromium-find-releases-static/60f.html#60f0d3fdcd32ace98f0baafab27ee420637d3760

I was able to repro with https://www.googleapis.com/download/storage/v1/b/chromium-browser-snapshots/o/Linux_x64%2F493142%2Fchrome-linux.zip?alt=media

It appears that the crash occurs immediately after printing [0809/150532.266271:VERBOSE1:network_delegate.cc(31)] NetworkDelegate::NotifyBeforeURLRequest: https://www.youtube.com/yts/jsbin/player-vflIVpVc9/en_US/remote.js

On the runs that don't crash, that NotifyBeforeURLRequest is not in the output. So the randomness is probably due to either some variability in what content the site serves, or perhaps headless mode decides to exit sooner sometimes than others, before all the subresources have loaded?

Indeed, adding --repl argument makes the CHECK happen reliably since it stops chrome exiting automatically.

However, I can't seem to repro on a local debug build (@493145), even when it's loading /remote.js.

I'll see if I can bisect-build it.

Comment 6 by mattm@chromium.org, Aug 10 2017

Components: Blink>Media>Controls
Owner: beccahughes@chromium.org
Status: Assigned (was: Unconfirmed)
bisect-builds says:
You are probably looking for a change made after 492297 (known good), but no later than 492299 (first known bad).
CHANGELOG URL: https://chromium.googlesource.com/chromium/src/+log/067d2c7f8fc65efd7debca8673fc11225cce9430..ac52dfae0506a18df0c1ccaa6cda19fcc502e658

Only two changes in that range, and this one does change blink resources, so looks seems quite likely:
https://chromium.googlesource.com/chromium/src/+/68e47c3e05ed056586f167cb3d5da4ab75fd3238

I looked at the Media Controls CSS files that were changed in that commit and they are present and gzipped in the PAK file.

I could not reproduce this locally with the following GN args:

  4 is_component_build = false
  5 is_debug = false
  6 strip_absolute_paths_from_debug_symbols = true
  7 use_goma = true
  8 headless_use_embedded_resources = true

But I could download the snapshot and reproduce it.
Components: Internals>Headless

Comment 9 by eyt...@gmail.com, Aug 14 2017

Are the snapshots built with different flags?
Status: Fixed (was: Assigned)
We did some gzip work on the media controls and this is now fixed in latest.
Hello, we're getting this crash continuously on our non-headless chromium build. Can you please point to a commit so we can consider taking this as a pre-release patch? Thanks!

Sign in to add a comment