-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Labels:
-
Empty show more show less
I created a simple node.js app to connect to my running mongo replSetServers and all the mongos look great. However, I'm getting a strange error from the node driver. Here's what my rs.status() gives:
tesla:PRIMARY> rs.status() { "set" : "tesla", "date" : ISODate("2014-05-20T22:00:29Z"), "myState" : 1, "members" : [ { "_id" : 0, "name" : "localhost:27017", "health" : 1, "state" : 1, "stateStr" : "PRIMARY", "uptime" : 142, "optime" : Timestamp(1400620030, 1), "optimeDate" : ISODate("2014-05-20T21:07:10Z"), "electionTime" : Timestamp(1400623097, 1), "electionDate" : ISODate("2014-05-20T21:58:17Z"), "self" : true }, { "_id" : 1, "name" : "localhost:27018", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 140, "optime" : Timestamp(1400620030, 1), "optimeDate" : ISODate("2014-05-20T21:07:10Z"), "lastHeartbeat" : ISODate("2014-05-20T22:00:29Z"), "lastHeartbeatRecv" : ISODate("2014-05-20T22:00:29Z"), "pingMs" : 0, "syncingTo" : "localhost:27017" }, { "_id" : 2, "name" : "localhost:27019", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 138, "optime" : Timestamp(1400620030, 1), "optimeDate" : ISODate("2014-05-20T21:07:10Z"), "lastHeartbeat" : ISODate("2014-05-20T22:00:29Z"), "lastHeartbeatRecv" : ISODate("2014-05-20T22:00:28Z"), "pingMs" : 0, "syncingTo" : "localhost:27017" } ], "ok" : 1 }
And here's the error I see when running my node app:
Error: No primary found in set at /Users/montgomeryc/Projects/mongoskin-auth-test/node_modules/mongodb/lib/mongodb/connection/repl_set/repl_set.js:449:45 at /Users/montgomeryc/Projects/mongoskin-auth-test/node_modules/mongodb/lib/mongodb/connection/server.js:376:9 at Server.Base._callHandler (/Users/montgomeryc/Projects/mongoskin-auth-test/node_modules/mongodb/lib/mongodb/connection/base.js:445:41) at /Users/montgomeryc/Projects/mongoskin-auth-test/node_modules/mongodb/lib/mongodb/connection/server.js:468:18 at MongoReply.parseBody (/Users/montgomeryc/Projects/mongoskin-auth-test/node_modules/mongodb/lib/mongodb/responses/mongo_reply.js:68:5) at null.<anonymous> (/Users/montgomeryc/Projects/mongoskin-auth-test/node_modules/mongodb/lib/mongodb/connection/server.js:426:20) at EventEmitter.emit (events.js:95:17) at null.<anonymous> (/Users/montgomeryc/Projects/mongoskin-auth-test/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:201:13) at EventEmitter.emit (events.js:98:17) at Socket.<anonymous> (/Users/montgomeryc/Projects/mongoskin-auth-test/node_modules/mongodb/lib/mongodb/connection/connection.js:422:22)
And my simple node app:
var Db = require('mongodb').Db, MongoClient = require('mongodb').MongoClient, Server = require('mongodb').Server, ReplSetServers = require('mongodb').ReplSetServers; var replSet = new ReplSetServers([ new Server('localhost', 27017), new Server('localhost', 27018), new Server('localhost', 27019) ]); var db = new Db('stratus', replSet, { w:0 }); db.open(function(err, p_db) { if (err) throw err; console.log('connect success!!'); // Authenticate db.authenticate('admin', 'secretPwd', function(err, result) { if (err) throw err; console.log('auth success!!'); db.close(); }); });