summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryongman <yming0221@gmail.com>2019-05-08 16:13:42 +0800
committeryongman <yming0221@gmail.com>2019-05-08 16:29:16 +0800
commitfb4ee7f0c5ad81cae88a10587d5246a1b4f4dd84 (patch)
tree3887541acab0ff8b5241c728f596e14d368a3967
parentf674e83215af5f15096bf53a27de6c4ccf21faae (diff)
downloadredis-fb4ee7f0c5ad81cae88a10587d5246a1b4f4dd84.tar.gz
Fix uint64_t hash value in active defrag
-rw-r--r--src/defrag.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/defrag.c b/src/defrag.c
index d67b6e253..ecf0255dc 100644
--- a/src/defrag.c
+++ b/src/defrag.c
@@ -47,7 +47,7 @@ int je_get_defrag_hint(void* ptr, int *bin_util, int *run_util);
/* forward declarations*/
void defragDictBucketCallback(void *privdata, dictEntry **bucketref);
-dictEntry* replaceSateliteDictKeyPtrAndOrDefragDictEntry(dict *d, sds oldkey, sds newkey, unsigned int hash, long *defragged);
+dictEntry* replaceSateliteDictKeyPtrAndOrDefragDictEntry(dict *d, sds oldkey, sds newkey, uint64_t hash, long *defragged);
/* Defrag helper for generic allocations.
*
@@ -355,7 +355,7 @@ long activeDefragSdsListAndDict(list *l, dict *d, int dict_val_type) {
sdsele = ln->value;
if ((newsds = activeDefragSds(sdsele))) {
/* When defragging an sds value, we need to update the dict key */
- unsigned int hash = dictGetHash(d, sdsele);
+ uint64_t hash = dictGetHash(d, sdsele);
replaceSateliteDictKeyPtrAndOrDefragDictEntry(d, sdsele, newsds, hash, &defragged);
ln->value = newsds;
defragged++;
@@ -392,7 +392,7 @@ long activeDefragSdsListAndDict(list *l, dict *d, int dict_val_type) {
* moved. Return value is the the dictEntry if found, or NULL if not found.
* NOTE: this is very ugly code, but it let's us avoid the complication of
* doing a scan on another dict. */
-dictEntry* replaceSateliteDictKeyPtrAndOrDefragDictEntry(dict *d, sds oldkey, sds newkey, unsigned int hash, long *defragged) {
+dictEntry* replaceSateliteDictKeyPtrAndOrDefragDictEntry(dict *d, sds oldkey, sds newkey, uint64_t hash, long *defragged) {
dictEntry **deref = dictFindEntryRefByPtrAndHash(d, oldkey, hash);
if (deref) {
dictEntry *de = *deref;