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
Meteor 1.8.0.2: TypeError: Cannot set property 'setWebsocketTimeout' of null #10468
Comments
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Please solve this. Don't just ignore it and close it like it never happened. No one from Meteor team has ever responded to this issue at all. We are still facing this problem in production and have serious meteor issues since this started. There was no response on this for a long time so we started to make plans on substituting meteor with something else. Please don't make us speed that process up. |
Hi @kombadzomba thanks for bringing this up. I'm Meteor Evangelist working for Meteor Software (the new Tiny company behind Meteor). I'm also a Meteor user for a long time and I never saw this error in my apps, maybe you have something different in your application. Can you create somehow a reproduction? I would like to understand this issue in depth. We are committed to Meteor (see the roadmap published today) and you are not going to need to substitute Meteor, at least not because of issues 😉 I already marked this issue as confirmed then stale bot is going to ignore it. |
Hi @filipenevola and thanks for kind human response. We didn't find a way to reproduce it. However, when it hapends node process crashes. We had to pm2 the node processes in order to keep them alive. Here is the link to details on the related subject so you could get deeper into understanding it: Urigo/meteor-client-bundler#96 (comment) |
hi @kombadzomba the only reason that can be happening is Have you tried to run Meteor from a fork adding this line below:
before this line (the line where the error is happening):
I believe this is not going to cause any issue and probably If you didn't try this yet I would suggest to you: Please let me know if this plan sounds good to you. |
Thanks for your effort. However, you are suggesting a quick patch while believing it won't cause any further issues asking me to test your believes. However, as I mentioned, we have already patched this thanks to pm2. With all my respect, I would rather preffer a thorough approach in solving this issue without trial and error approach. |
@filipenevola We are now seeing this issue happen seemingly at random in production on Meteor 1.9 (an app upgraded from 1.8.2 that never experienced this before). It is happening not on startup but at some point while the server is running. |
Same when upgrading from 1.8.2 to 1.9.
|
We are also seeing this issue happening after upgrading to 1.9. Same stacktrace as above:
|
After some more investigating with @Discordius, this looks like mostly a bug in We don't know exactly what circumstances will trigger this, but likely cases are if either something else in the node event loop takes long enough to make this time out, or if a nonstandard client opens a connection and closes it immediately without completing all of the handshake. If it's the latter, this would explain why it's hard to replicate in a debugging environment: the most likely source of that nonstandard client behavior would be from crawlers. Regardless of what actually triggers it, putting a check for null in either We're getting this error on our production servers several times per hour, so after we deploy with a forked version of sockjs, we should be able to report whether it worked. |
This has also started happening to us since updating to 1.9.0. Can't determine exactly what's causing it at this point but it looks to me like @jimrandomh's defensive code in |
I just published |
Version of Meteor: 1.8.0.2.
Operating System: Windows Server 2012, Linux Centos
When we deploy and start meteor app we log error:
Meteor log:
Direct file link:
meteor/packages/ddp-server/stream_server.js
Line 99 in f04160a
More info:
SockJS (maybe) related issue: sockjs/sockjs-node#121
The right way for a client to reconnect after the server does a socket.disconnect( true )
socketio/socket.io#2476
Is there any way how to make this work?
Thanks.
The text was updated successfully, but these errors were encountered: