Commit f648c5a7 authored by tielei's avatar tielei
Browse files

A string with 21 chars is not representable as a 64-bit integer.

parent 3d48c931
...@@ -385,10 +385,10 @@ robj *tryObjectEncoding(robj *o) { ...@@ -385,10 +385,10 @@ robj *tryObjectEncoding(robj *o) {
if (o->refcount > 1) return o; if (o->refcount > 1) return o;
/* Check if we can represent this string as a long integer. /* Check if we can represent this string as a long integer.
* Note that we are sure that a string larger than 21 chars is not * Note that we are sure that a string larger than 20 chars is not
* representable as a 32 nor 64 bit integer. */ * representable as a 32 nor 64 bit integer. */
len = sdslen(s); len = sdslen(s);
if (len <= 21 && string2l(s,len,&value)) { if (len <= 20 && string2l(s,len,&value)) {
/* This object is encodable as a long. Try to use a shared object. /* This object is encodable as a long. Try to use a shared object.
* Note that we avoid using shared integers when maxmemory is used * Note that we avoid using shared integers when maxmemory is used
* because every object needs to have a private LRU field for the LRU * because every object needs to have a private LRU field for the LRU
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment