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

Cannot read property '_destroySSL' of undefined at destroySSL #73

Closed
gauntface opened this issue Mar 24, 2016 · 11 comments
Closed

Cannot read property '_destroySSL' of undefined at destroySSL #73

gauntface opened this issue Mar 24, 2016 · 11 comments
Assignees

Comments

@gauntface
Copy link

Just tried running a lighthouse trace and hit the following issues:

  • launch-chrome.sh is OS X. Would it be worth considering moving this to an npm script and using which to pick the version of chrome to use

  • Node 5.9.1 is required. We could add a check for >= 5.9 and throw a warning otherwise

  • On linux I get the following error:

    TypeError: Cannot read property '_destroySSL' of undefined
    at destroySSL (_tls_wrap.js:370:7)

Going to dig into that one and try and figure out the problem but wanted to raise an issue on it..

@gauntface
Copy link
Author

Looks like:

TypeError: Cannot read property '_destroySSL' of undefined
at destroySSL (_tls_wrap.js:370:7)

is coming from the chrome remote interface close() call. Not sure there is anything that can be done to silence the error

@paulirish
Copy link
Member

I tried to diagnose this exception but only got so far. I'm pretty sure it's a node core bug, as that area (_tls_wrap.js) has gotten some fixes.

@paulirish
Copy link
Member

TypeError: Cannot read property '_destroySSL' of undefined at destroySSL (_tls_wrap.js:370:7)

Took another stab last night. AFAIK, this is due to the request call for the manifest, and not cri's close(). 😌 So we'll be done with it soon.

@paulirish paulirish changed the title Getting Started Issues Cannot read property '_destroySSL' of undefined at destroySSL Mar 30, 2016
@paulirish
Copy link
Member

Broke out the other two issues into #106 and #105.

Retitled this to be just the destroySSL. This will be fixed when #83 is done. \o/

@paulirish
Copy link
Member

fixed by #83

@paulirish
Copy link
Member

paulirish commented Jan 5, 2017

Just ran into this problem again, while working on pwmetrics.. here's what I found out:

the _destroySSL stuff is happening inside _tls_wrap, which the request module uses:
image

As you can see, the this is passed as a parameter to setImmediate but a heartbeat later, that param isn't there. And why not?

chrome-devtools-frontend has been polyfilling setImmediate, and unfortunately for us... incorrectly:
image

:)


Update: I'm submitting a patch to fix it in devtools

@ebidel
Copy link
Contributor

ebidel commented Jan 25, 2017

I just ran into this using lighthouse 1.4.1 as a submodule. @paulirish did you ever submit a CL for devtools?

@paulirish
Copy link
Member

Yes. Fixed over there: https://codereview.chromium.org/2615083002

But we'll need to bump our dependency to handle the update: #1535

@mohsen1
Copy link
Contributor

mohsen1 commented Feb 24, 2017

Still seeing this in TravisCI when I launch chrome programmatically

@two7sclash-zz
Copy link

still seeing this too, running lighthouse on heroku.

@paulirish
Copy link
Member

paulirish commented Jun 16, 2017

@two7sclash evaluate this after lighthouse is required:

self.setImmediate = function(callback, ...argsForCallback) {
  Promise.resolve().then(() => callback(...argsForCallback));
  return 0;
};

sorry for this, guys.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants