-
Type: Task
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Labels:
-
Environment:Windows
-
Empty show more show less
Mongoose is being used to connect to MongoDB.
Initially a pool of 100 connections is created and to connect to some other database using the mongoose method useDb.
Below is the code snippet.
var url = require("url");
var connectRoute = require('connect-route');
var connect = require('connect'),
app = connect.createServer();
var mongoose = require('mongoose');
var conn = mongoose.createConnection('mongodb://localhost:10040/first', {server: {poolSize: 100}});
conn.on('error', console.error.bind(console, 'connection error:'));
var Schema = mongoose.Schema;
var MySchema = new Schema(
,
{strict: false} );
app.use(connectRoute(function (router){
router.get('/get', function(req,res){
var db2 = conn.useDb('second_DB');
var data = db2.model('', MySchema, 'coll');
data.update(
, {$set: {"name": "test"}},
{upsert: true}, function (err, data,log)
{ //console.log(a.data.data ); res.end(JSON.stringify(log.connectionId)); });
});
}));
app.listen(3000);
console.log('info','Connect server listening on port 3000 ' );
Even though Poolsize is set to 100 , when more than 10 concurrent requests are given throwing the warning as
(node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit.
MongoDB version - 2.6.4 Mongoose version - 3.8.12
Node version - v0.10.30
When the line "var db2 = conn.useDb('second_DB');" is commented in the above code snippet , its not throwing the above mentioned warning.