mirror of
https://github.com/fluencelabs/redis
synced 2025-03-19 17:10:50 +00:00
MIGRATE: Fix new argument rewriting refcount handling.
This commit is contained in:
parent
d85fc1e9cf
commit
ac0a731057
@ -4763,8 +4763,6 @@ try_again:
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (!copy) {
|
if (!copy) {
|
||||||
robj *aux;
|
|
||||||
|
|
||||||
/* No COPY option: remove the local key, signal the change. */
|
/* No COPY option: remove the local key, signal the change. */
|
||||||
dbDelete(c->db,kv[j]);
|
dbDelete(c->db,kv[j]);
|
||||||
signalModifiedKey(c->db,kv[j]);
|
signalModifiedKey(c->db,kv[j]);
|
||||||
@ -4772,6 +4770,7 @@ try_again:
|
|||||||
|
|
||||||
/* Populate the argument vector to replace the old one. */
|
/* Populate the argument vector to replace the old one. */
|
||||||
newargv[del_idx++] = kv[j];
|
newargv[del_idx++] = kv[j];
|
||||||
|
incrRefCount(kv[j]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -4780,7 +4779,7 @@ try_again:
|
|||||||
/* Translate MIGRATE as DEL for replication/AOF. */
|
/* Translate MIGRATE as DEL for replication/AOF. */
|
||||||
if (del_idx > 1) {
|
if (del_idx > 1) {
|
||||||
newargv[0] = createStringObject("DEL",3);
|
newargv[0] = createStringObject("DEL",3);
|
||||||
replaceClientCommandVector(c,newargv,del_idx);
|
replaceClientCommandVector(c,del_idx,newargv);
|
||||||
} else {
|
} else {
|
||||||
/* No key transfer acknowledged, no need to rewrite as DEL. */
|
/* No key transfer acknowledged, no need to rewrite as DEL. */
|
||||||
zfree(newargv);
|
zfree(newargv);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user