]> git.saurik.com Git - redis.git/blobdiff - src/sort.c
Fixed INFO implementation to use the new allocator name define
[redis.git] / src / sort.c
index a44a6d63ba891ca21ea32c2fe881c58b62750dd1..ff275c958a22684ff7fbb1f92c1ce62ad3ca88f0 100644 (file)
@@ -199,6 +199,9 @@ void sortCommand(redisClient *c) {
         j++;
     }
 
         j++;
     }
 
+    /* Destructively convert encoded sorted sets for SORT. */
+    if (sortval->type == REDIS_ZSET) zsetConvert(sortval, REDIS_ENCODING_SKIPLIST);
+
     /* Load the sorting vector with all the objects to sort */
     switch(sortval->type) {
     case REDIS_LIST: vectorlen = listTypeLength(sortval); break;
     /* Load the sorting vector with all the objects to sort */
     switch(sortval->type) {
     case REDIS_LIST: vectorlen = listTypeLength(sortval); break;
@@ -368,7 +371,7 @@ void sortCommand(redisClient *c) {
          * SORT result is empty a new key is set and maybe the old content
          * replaced. */
         server.dirty += 1+outputlen;
          * SORT result is empty a new key is set and maybe the old content
          * replaced. */
         server.dirty += 1+outputlen;
-        touchWatchedKey(c->db,storekey);
+        signalModifiedKey(c->db,storekey);
         addReplyLongLong(c,outputlen);
     }
 
         addReplyLongLong(c,outputlen);
     }