-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: 1.4
-
Component/s: None
-
Labels:
-
Environment:Ubuntu 12 64bit, Node v0.10.29, mongodb 2.6.3
-
Empty show more show less
I've setup three mongo nodes in replica set (primary,secondary and arbiter)
I'm using driver 1.4.7
All is working expected with node driver, I can retrieve data, mongo does switching from secondary to primary when I shutdown primary. Problem is that I can't detect on error/close events, it doesn't trigger.
I tried with standalone mongo and it does triggers error/close when I kill mongo process, but when I use replicaset, it doesn't do anything.
here is the code for replicaset:
........
var MongoClient = require('mongodb').MongoClient,
MongoServer = require('mongodb').Server,
MongoRepSet = require('mongodb').ReplSetServers;
var server1 = new MongoServer(config.db.host, 9000);
var server2 = new MongoServer(config.db.host, 9001);
var server3 = new MongoServer(config.db.host, 9002);
var servers = [];
servers[0] = server1;
servers[1] = server2;
servers[2] = server3;
var Client = new MongoClient(new MongoRepSet(servers));
Client.open(function(err, Client) {
if (err)
else {
logger.status('Server connected to Db');
var db = Client.db('db_name');
db.on('close', function(result)
);
db.on('reconnect', function()
);
db.on('error', function(err)
)
DB.client = db; // assign to module property, for reuse
..............