diff --git a/lib/odbc.js b/lib/odbc.js index 8dec090c..331ac48f 100644 --- a/lib/odbc.js +++ b/lib/odbc.js @@ -1842,7 +1842,7 @@ Pool.prototype.open = function (connStr, callback) { // Move it to queue untill an existing connection is not closed. // Call it from db.close() version of pool.open and pool.init. - self.queue.push(function (next) { + function queueCallback(next) { if (self.availablePool[connStr] && self.availablePool[connStr].length) { db = self.availablePool[connStr].shift(); @@ -1851,7 +1851,11 @@ Pool.prototype.open = function (connStr, callback) self.usedPool[connStr].push(db); callback && callback(null, db); } - }); + else { + self.queue.push(queueCallback); + } + } + self.queue.push(queueCallback); } else {