1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-04 15:02:09 +03:00

Add redis error codes to the errors

This commit is contained in:
Ruben Bridgewater
2015-09-18 06:28:14 +02:00
parent 7e689253f9
commit 40c037eaf4
3 changed files with 15 additions and 1 deletions

View File

@@ -500,12 +500,19 @@ RedisClient.prototype.connection_gone = function (why) {
this.retry_timer = setTimeout(retry_connection, this.retry_delay, this);
};
var err_code = /^([A-Z]+)\s+(.+)$/;
RedisClient.prototype.return_error = function (err) {
var command_obj = this.command_queue.shift(), queue_len = this.command_queue.length;
if (command_obj.command && command_obj.command.toUpperCase) {
err.command_used = command_obj.command.toUpperCase();
}
var match = err.message.match(err_code);
// LUA script could return user errors that don't behave like all other errors!
if (match) {
err.code = match[1];
}
if (this.pub_sub_mode === false && queue_len === 0) {
this.command_queue = new Queue();
this.emit("idle");