diff --git a/src/object.c b/src/object.c index 5602b688e..46f1f3f8b 100644 --- a/src/object.c +++ b/src/object.c @@ -76,8 +76,11 @@ robj *createEmbeddedStringObject(char *ptr, size_t len) { /* Create a string object with EMBSTR encoding if it is smaller than * REIDS_ENCODING_EMBSTR_SIZE_LIMIT, otherwise the RAW encoding is - * used. */ -#define REDIS_ENCODING_EMBSTR_SIZE_LIMIT 32 + * used. + * + * The current limit of 39 is chosen so that the biggest string object + * we allocate as EMBSTR will still fit into the 64 byte arena of jemalloc. */ +#define REDIS_ENCODING_EMBSTR_SIZE_LIMIT 39 robj *createStringObject(char *ptr, size_t len) { if (len <= REDIS_ENCODING_EMBSTR_SIZE_LIMIT) return createEmbeddedStringObject(ptr,len);