Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bad crash loading a site in Chrome v76 #4990

Closed
bahmutov opened this issue Aug 15, 2019 · 7 comments · Fixed by #5478
Closed

Bad crash loading a site in Chrome v76 #4990

bahmutov opened this issue Aug 15, 2019 · 7 comments · Fixed by #5478
Assignees

Comments

@bahmutov
Copy link
Contributor

Cypress v3.4.1 on Mac

The website starts loading and then Chrome just crashes. Running with all debug logs shows this

  cypress:server:server Getting remote state: { auth: undefined, props: { port: '443', tld: 'com', domain: 'theguardian' }, origin: 'https://www.theguardian.com', strategy: 'http', visiting: undefined, domainName: 'theguardian.com', fileServer: null } +0ms
  cypress:server:server sending request with options { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: { accept: 'text/html,*/*' }, timeout: 30000, gzip: false, url: 'https://www.theguardian.com/uk/', onBeforeReqInit: [Function: runPhase], followRedirect: [Function: followRedirect] } +2ms
  cypress:server:cookies getting:cookies { url: 'https://www.theguardian.com/uk/' } +54ms
  cypress:server:cookies received get:cookies [] +3ms
  cypress:server:request sending request as stream { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: { accept: 'text/html,*/*', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36' }, timeout: 30000, gzip: false, url: 'https://www.theguardian.com/uk/', onBeforeReqInit: [Function: runPhase] } +0ms
  cypress:network:agent addRequest called { isHttps: true, href: 'https://www.theguardian.com/uk/' } +10s
  cypress:network:connect beginning getAddress { hostname: 'www.theguardian.com', port: 443 } +222ms
  cypress:network:connect got addresses { hostname: 'www.theguardian.com', port: 443, addresses: [ { address: '151.101.1.111', family: 4 }, { address: '151.101.65.111', family: 4 }, { address: '151.101.129.111', family: 4 }, { address: '151.101.193.111', family: 4 } ] } +35ms
  cypress:network:agent got family { family: 4, href: 'https://www.theguardian.com/uk/' } +47ms
  cypress:server:request setting request jar cookies [ { key: 'GU_mvt_id', value: '11457', expires: '2019-11-13T15:11:05.000Z', domain: 'theguardian.com', path: '/', secure: true, hostOnly: false, creation: '2019-08-15T15:11:05.348Z', lastAccessed: '2019-08-15T15:11:05.348Z', url: 'https://www.theguardian.com/uk/' }, { key: 'GU_geo_continent', value: 'NA', domain: 'www.theguardian.com', path: '/', secure: true, hostOnly: true, creation: '2019-08-15T15:11:05.352Z', lastAccessed: '2019-08-15T15:11:05.352Z', url: 'https://www.theguardian.com/uk/' } ] +207ms
  cypress:server:cookies set:cookie { name: 'GU_mvt_id', value: '11457', path: '/', domain: 'theguardian.com', secure: true, expirationDate: 1573657865, url: 'https://www.theguardian.com/uk/' } +213ms
  cypress:server:cookies received set:cookie { name: 'GU_mvt_id', value: '11457', path: '/', domain: '.theguardian.com', secure: true, httpOnly: false, expiry: 1573657865 } +3ms
  cypress:server:cookies set:cookie { name: 'GU_geo_continent', value: 'NA', path: '/', secure: true, url: 'https://www.theguardian.com/uk/' } +0ms
  cypress:server:cookies received set:cookie { name: 'GU_geo_continent', value: 'NA', path: '/', domain: 'www.theguardian.com', secure: true, httpOnly: false } +3ms
  cypress:server:cookies getting:cookies { url: 'http://www.theguardian.com/uk' } +0ms
  cypress:server:cookies received get:cookies [] +3ms
  cypress:server:request setting request jar cookies [ { key: 'GU_mvt_id', value: '11457', expires: '2019-11-13T15:11:05.000Z', domain: 'theguardian.com', path: '/', secure: true, hostOnly: false, creation: '2019-08-15T15:11:05.348Z', lastAccessed: '2019-08-15T15:11:05.348Z', url: 'https://www.theguardian.com/uk/' }, { key: 'GU_geo_continent', value: 'NA', domain: 'www.theguardian.com', path: '/', secure: true, hostOnly: true, creation: '2019-08-15T15:11:05.352Z', lastAccessed: '2019-08-15T15:11:05.408Z', url: 'http://www.theguardian.com/uk' } ] +56ms
  cypress:server:cookies set:cookie { name: 'GU_mvt_id', value: '11457', path: '/', domain: 'theguardian.com', secure: true, expirationDate: 1573657865, url: 'https://www.theguardian.com/uk/' } +42ms
  cypress:server:cookies received set:cookie { name: 'GU_mvt_id', value: '11457', path: '/', domain: '.theguardian.com', secure: true, httpOnly: false, expiry: 1573657865 } +3ms
  cypress:server:cookies set:cookie { name: 'GU_geo_continent', value: 'NA', path: '/', secure: true, url: 'http://www.theguardian.com/uk' } +1ms
  cypress:server:file get values from /Users/gleb/Library/Application Support/Cypress/cy/production/cache +10s
  cypress:server:file attempt to get lock on /Users/gleb/Library/Application Support/Cypress/cy/production/cache +1ms
  cypress:server:file gettin lock succeeded or failed for /Users/gleb/Library/Application Support/Cypress/cy/production/cache +1ms
  cypress:server:file read /Users/gleb/Library/Application Support/Cypress/cy/production/cache +0ms
  cypress:server:file read succeeded or failed for /Users/gleb/Library/Application Support/Cypress/cy/production/cache +1ms
  cypress:server:file attempt to unlock /Users/gleb/Library/Application Support/Cypress/cy/production/cache +0ms
  cypress:server:file unlock succeeded or failed for /Users/gleb/Library/Application Support/Cypress/cy/production/cache +0ms
  cypress:server:api request to url: POST https://api.cypress.io/exceptions with params: {"body":{"err":{"name":"","message":"Failed to parse or set cookie named \"GU_geo_continent\".","stack":""},"version":"3.4.1","osName":"darwin","osVersion":"16.7.0","osCpus":[{"model":"Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz","speed":2500,"times":{"user":78434340,"nice":0,"sys":49035920,"idle":433832150,"irq":0}},{"model":"Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz","speed":2500,"times":{"user":10064400,"nice":0,"sys":5712330,"idle":545318150,"irq":0}},{"model":"Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz","speed":2500,"times":{"user":68456150,"nice":0,"sys":27425700,"idle":465285890,"irq":0}},{"model":"Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz","speed":2500,"times":{"user":10342860,"nice":0,"sys":5694470,"idle":545033540,"irq":0}},{"model":"Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz","speed":2500,"times":{"user":68563630,"nice":0,"sys":27420570,"idle":465158450,"irq":0}},{"model":"Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz","speed":2500,"times":{"user":10351460,"nice":0,"sys":5674280,"idle":545022680,"irq":0}},{"model":"Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz","speed":2500,"times":{"user":68428900,"nice":0,"sys":27303080,"idle":465386820,"irq":0}},{"model":"Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz","speed":2500,"times":{"user":10352590,"nice":0,"sys":5673090,"idle":545007160,"irq":0}}],"osMemory":{"free":50679808,"total":17179869184}},"headers":{"x-os-name":"darwin","x-cypress-version":"3.4.1"}} and token: undefined +0ms
  cypress:network:agent addRequest called { isHttps: true, href: 'https://api.cypress.io/exceptions' } +176ms
  cypress:network:connect beginning getAddress { hostname: 'api.cypress.io', port: 443 } +189ms
{ [Error: Failed to parse or set cookie named "GU_geo_continent".] name: undefined }
undefined
  cypress:server:browsers killing browser process +4s
  cypress:network:connect got addresses { hostname: 'api.cypress.io', port: 443, addresses: [ { address: '104.25.214.23', family: 4 }, { address: '104.25.215.23', family: 4 }, { address: '2606:4700:20::6819:d617', family: 6 }, { address: '2606:4700:20::6819:d717', family: 6 } ] } +19ms
@bahmutov
Copy link
Contributor Author

Interesting - the exit code after the crash is 0

$ echo $?
0

@bahmutov
Copy link
Contributor Author

Assigning @flotwig for now because the last meaningful error message is about cookies

@bahmutov
Copy link
Contributor Author

Very interesting: the crash happens when the base url is set in cypress.json

{
  "baseUrl": "https://www.theguardian.com/uk"
}

and the test just does cy.visit('/')

The crash does NOT happen when I move the full url out of cypress.json file

{}
cy.visit('https://www.theguardian.com/uk')

@bahmutov
Copy link
Contributor Author

on related note: sometimes people report that on CI Cypress crashes, but the exit code is still 0 - like here. This might be related to the above crash in the sense that the browser crashes, yet CLI does not know it and exits with 0

Screen Shot 2019-08-16 at 7 27 01 PM

@flotwig
Copy link
Contributor

flotwig commented Nov 7, 2019

Just tested this with the changes in #5478 and it appears that this is resolved with those changes! 🎉

@cypress-bot cypress-bot bot added the stage: needs review The PR code is done & tested, needs review label Nov 7, 2019
@cypress-bot cypress-bot bot added stage: pending release and removed stage: needs review The PR code is done & tested, needs review labels Nov 8, 2019
@cypress-bot
Copy link
Contributor

cypress-bot bot commented Nov 8, 2019

The code for this is done in cypress-io/cypress#5478, but has yet to be released.
We'll update this issue and reference the changelog when it's released.

@cypress-bot
Copy link
Contributor

cypress-bot bot commented Nov 8, 2019

Released in 3.6.1.

@cypress-io cypress-io locked as resolved and limited conversation to collaborators Dec 24, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
2 participants