Skip to content

Instantly share code, notes, and snippets.

@ivanstoyanov
Created February 5, 2013 07:14
Show Gist options
  • Save ivanstoyanov/4712814 to your computer and use it in GitHub Desktop.
Save ivanstoyanov/4712814 to your computer and use it in GitHub Desktop.
var connectString = "mongodb://user:pass@host:port,host:port,host:port/admin?replicaSet=myset&autoReconnect=true&connectTimeoutMS=1500&socketTimeoutMS=3000";
var mongo = require('mongodb');
var async = require('async');
var admin_db;
var interval = 6000;
var db1;
var db2;
var simpleQuery = function(callback) {
if (db1==null) {
db1 = admin_db.db('db1');
}
db1.collection('foo').save({zoo:1}, {safe:true}, function(err, results) {
if (err) {
console.log(err);
} else {
db1.collection('foo').findOne({zoo:1}, function (err, results) {
if (err) {
console.log(err);
} else {
//console.log(results);
if (db2==null) {
db2 = admin_db.db('db2');
}
db2.collection('bar').save({hi:'there'}, {safe:true}, function (err, results) {
if (err) {
console.log(err);
} else {
db2.collection('bar').findOne({hi:'there'}, function (err, results) {
if (err) {
console.log(err);
} else {
//console.log(results);
setTimeout(callback, interval);
}
});
}
});
}
});
}
});
}
mongo.connect(connectString, {db: {safe: true}}, function (err, db) {
if (typeof err !== "undefined" && err !== null) {
console.log (err);
} else {
admin_db = db;
console.log('connected');
async.whilst(
function() {
return true;
},
function(callback) {
simpleQuery(callback);
},
function() {
console.log("done");
}
);
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment