- 
    Type:Bug 
- 
    Resolution: Done
- 
    Priority:Major - P3 
- 
    None
- 
    Affects Version/s: None
- 
    Component/s: None
- 
        None
- 
        None
- 
        None
- 
        None
- 
        None
- 
        None
- 
        None
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(); }); });