-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: 2.0.6
-
Component/s: None
-
Labels:
-
Empty show more show less
I setup replicaset, I can connect to mongodb with my app. But when I shutdown whole replicaset (I get "left" event triggered 3 times) and then when I issue query from app to mongo server, webpage hangs, there is no timeout event triggered. So when I shutdown replicaset, mongo driver only triggers "left" event, nothings else ?. Can driver detect query timeout ? setting socketTimeout doesn't seem to work
This is my setup
var url = 'mongodb://' + config.db.host + ':9000,' + config.db.host + ':9001,' + config.db.host + ':9002' + '/viddb/?replicaSet=rs0';
var options = {};
options.db = {};
options.db.native_parser = true;
options.db.bufferMaxEntries = 100;
options.db.numberOfRetries = 1;
options.db.retryMiliSeconds = 100;
options.replSet = {};
options.replSet.poolSize = 1;
options.replSet.socketOptions = {};
options.replSet.socketOptions.socketTimeoutMS = 30000;
options.replSet.socketOptions.connectTimeoutMS = 30000;
options.server = {};
options.server.socketOptions = {};
options.server.socketOptions.autoReconnect = true;
MongoClient.connect(url, options, function(err, db) {
if (err)
else {
logger.status('Server connected to Db');
db.on('close', function(res)
);
db.on('reconnect', function(res)
);
db.on('error', function(res)
);
db.on('timeout', function(res)
);
db.serverConfig.on('connect', function(result)
);
db.serverConfig.on('open', function(result)
);
db.serverConfig.on('close', function(result)
);
db.serverConfig.on('joined', function(err, server)
);
db.serverConfig.on('left', function(err, server)
);
db.serverConfig.on('timeout', function(err, server)
);
db.serverConfig.on('reconnect', function()
);
db.serverConfig.on('error', function(err)
);