summaryrefslogtreecommitdiff
path: root/src/module.c
diff options
context:
space:
mode:
authorantirez <antirez@gmail.com>2018-06-19 16:03:00 +0200
committerantirez <antirez@gmail.com>2018-06-19 16:03:00 +0200
commit4848fbec8b95b8783f5becbdd72e461c9fa30716 (patch)
treee7576a93d59478214bc181b3e26954cc045de732 /src/module.c
parent333c98c43a1f7debac0f5579df62b41259a3efd5 (diff)
downloadredis-4848fbec8b95b8783f5becbdd72e461c9fa30716.tar.gz
Modules: convert hash to hash table for big objects.
Diffstat (limited to 'src/module.c')
-rw-r--r--src/module.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/module.c b/src/module.c
index cb03ad2cd..b5ef0da02 100644
--- a/src/module.c
+++ b/src/module.c
@@ -2239,6 +2239,9 @@ int RM_HashSet(RedisModuleKey *key, int flags, ...) {
* to avoid a useless copy. */
if (flags & REDISMODULE_HASH_CFIELDS)
low_flags |= HASH_SET_TAKE_FIELD;
+
+ robj *argv[2] = {field,value};
+ hashTypeTryConversion(key->value,argv,0,1);
updated += hashTypeSet(key->value, field->ptr, value->ptr, low_flags);
/* If CFIELDS is active, SDS string ownership is now of hashTypeSet(),