diff --git a/server/util-server.js b/server/util-server.js index daf98de62..3c382b714 100644 --- a/server/util-server.js +++ b/server/util-server.js @@ -413,12 +413,18 @@ exports.radius = function ( exports.redisPingAsync = function (dsn) { return new Promise((resolve, reject) => { const client = redis.createClient({ - url: dsn, + url: dsn }); client.on("error", (err) => { + if (client.isOpen) { + client.disconnect(); + } reject(err); }); client.connect().then(() => { + if (!client.isOpen) { + client.emit("error", new Error("connection isn't open")); + } client.ping().then((res, err) => { if (client.isOpen) { client.disconnect(); @@ -428,7 +434,7 @@ exports.redisPingAsync = function (dsn) { } else { resolve(res); } - }); + }).catch(error => reject(error)); }); }); };