Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

"mrt add router" failing on Ubuntu 12.04 with 0.10.8 nodejs #135

Closed
bmancini55 opened this Issue · 29 comments
@bmancini55

user@ubuntu-dev:~/myapp$ mrt add router

Installing Meteor

branch: https://github.com/meteor/meteor.git#master

Installing smart packages

/usr/lib/node_modules/meteorite/node_modules/ddp/node_modules/ws/lib/WebSocket.js:175
else throw new Error('not opened');
^
Error: not opened
at WebSocket.send (/usr/lib/node_modules/meteorite/node_modules/ddp/node_modules/ws/lib/WebSocket.js:175:16)
at DDPClient._send (/usr/lib/node_modules/meteorite/node_modules/ddp/lib/ddp-client.js:77:15)
at WebSocket. (/usr/lib/node_modules/meteorite/node_modules/ddp/lib/ddp-client.js:49:10)
at WebSocket.EventEmitter.emit (events.js:92:17)
at WebSocket.establishConnection (/usr/lib/node_modules/meteorite/node_modules/ddp/node_modules/ws/lib/WebSocket.js:576:8)
at ClientRequest. (/usr/lib/node_modules/meteorite/node_modules/ddp/node_modules/ws/lib/WebSocket.js:488:25)
at ClientRequest.g (events.js:175:14)
at ClientRequest.EventEmitter.emit (events.js:106:17)
at CleartextStream.socketOnData (http.js:1587:11)
at CleartextStream.read as _read


This is on Ubuntu 12.04 using the 0.10.8 build of nodejs from the PPA here: https://launchpad.net/~chris-lea/+archive/node.js/

It works fine with the 0.10.7 release of node from the PPA.

@tmeasday
Owner

Interesting.

Are you totally sure it still works with 0.10.7? We recently updated atmosphere, which could be part of the problem.

If you could, could you go upstream with this, i.e. can you reduce the bug against https://github.com/oortcloud/node-ddp-client ? I'd really appreciate that.

@bmancini55

Yep it worked with 0.10.7 and errors with 0.10.8. I just re-verified with two fresh VMs, both versions installed from binaries.

Sure thing, I'll take a look.

@Charminbear

I have the exact same problem on Mac OS X Mountain Lion. I tried the suggested solution of jason on stackoverflow (link above) to change the port from 443 to 80 in atmosphere.js, but that only caused the mrt add command to do nothing anymore until killing it with ctrl + c.

@kareems

jason's suggestion of changing from port 443 to port 80 worked for me. I'm on Mac OS X 10.7.5 and Node.js 0.10.8.

@bmancini55

I debugged into DDPClient and determined that the "not opened" exception is a byproduct of the initial socket connection failing. The retry logic then results in a "not opened" exception when it gets into an inconsistent state.

The socket connection failing is giving me two different errors:

"no handler for opcode 13"
"reserved fields must be empty"

The latter message is currently being tracked in node: joyent/node#5557

@tmeasday
Owner

@bmancini55 -- do you think that maybe the problem is what @nathan7 mentioned "All the ws tests pass except for the SSL-related ones (due to unrelated changes in SSL cert strictness)"?

Is this a problem with meteor.com's SSL certificate?

@tmeasday
Owner

For the record all: if you are hitting this problem, you can run mrt --repoPort=80.

@Multiply

I've been having this exact problem, and I didn't bother checking issues here, till now. (1 hour wasted on debugging. :P)

Anyway, thanks for the 'fix', for now.

@tmeasday
Owner

Can everyone try updating to 0.10.10 and see if it fixes this? Thanks.

@songz

updated to 0.10.10, same error. adding argument --repoPort=80 argument works for me.

@tmeasday
Owner

@songz -- can you try reinstalling meteorite?

@tmeasday
Owner

Ok. It's not fixed in 0.10.10.

We'll just default to port 80 for now. Will change back once node has sorted it out.

@tmeasday tmeasday closed this
@BhimAle

how about node 0.10.11 and meteorite version 0.6.5...... I am also facing same issue. I am unable to add the package.

@tmeasday
Owner

Hi @BhimAle -- does it fail with both --repoPort 80 and --repoPort 443?

Can you confirm if it works with node 0.10.7?

@BhimAle
@tmeasday
Owner

@bmancini55 @Charminbear @kareems

Can you confirm if you are still seeing this with node 0.10.12?

mrt add X --verbose --repoPort 443
@ommkar23

Seriously !! It is still problematic.
I'm behind proxy.
mrt add X is not working.

@tmeasday
Owner

@ommkar23 -- both with --repoPort 80 and --repoPort 443?

@ommkar23

Yes. I tried both. Not working.
Node version : 0.10.12
npm version : 1.2.32
meteorite version : 0.6.5

@tmeasday
Owner

@ommkar23 can you track #127 as you are looking at a separate issue.

@BhimAle

@ommkar23 I have the same version of node, npm, and meteorite as you and I also face the same problem as you but it worked on me " mrt add --repoPort 443 ". What does your "mrt add --verbose says ?

@bmancini55

Was trying to verify in 0.10.12 and I'm seeing an issue with meteorite after a fresh install. Looks like meteor isn't being installed.

mrt --version

execvp(): No such file or directory
Can't find meteor executable!

Please install meteor from http://meteor.com


Manually installing meteor resolves the issue. Is this new behavior in Meteorite 0.6.5?

My procedure was:

local binary install of node 0.10.12
npm install -g meteorite
mrt --version

Then

curl https://install.meteor.com | /bin/sh

@tmeasday
Owner

@bmancini55 --- yes, as Meteorite says, the standard use case is for you to install Meteor yourself (and run it manually too, you don't need to use mrt any more for anything apart from mrt add and/or mrt install).

On the topic of mrt add not working though?

@bmancini55

Gotcha, thanks!

mrt add is working for me on both port 80 and 443.

node: 0.10.12
npm: 1.2.32
meteor: 0.6.4
meteorite: 0.6.6

@tmeasday
Owner

@Charminbear @kareems can you confirm if you are still seeing problems with port 443? I'm planning on switching back soon (as port 80 causes unresolvable problems with some firewalls).

@batewtew

I came across the thread while searching for solution to "mrt add not downloading from atmosphere". mrt install and mrt update are fine.

Using port 443 solved it.

$ mrt add user-status --repoPort=443
$ mrt --version
Meteorite version 0.6.6
Unreleased (running from a checkout)
$ node --version
v0.10.5

I also tried it in another machine and was OK. Using port 80 didn't work.

$ mrt add mini-pages --repoPort=443
$ mrt --version
Meteorite version 0.6.6
Release 0.6.4
[eweb@lxmv40 my-app]$ node --version
v0.10.12 
@tmeasday
Owner

Haven't heard back so I went ahead and switched back. Hopefully everyone is good.

@sterlingwes

For anyone who was hung up on mrt update or install and runs meteor on vagrant on windows, a vagrant reload helps resolve what might be a filesystem-caused hang.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.