]> git.saurik.com Git - redis.git/commitdiff
dictGetRandomKey bug fixed, RANDOMKEY will not block the server anymore
authorantirez <antirez@gmail.com>
Thu, 23 Apr 2009 16:46:11 +0000 (18:46 +0200)
committerantirez <antirez@gmail.com>
Thu, 23 Apr 2009 16:46:11 +0000 (18:46 +0200)
Changelog
client-libraries/php/redis.php
dict.c

index d3d4f6c529de06386f38e1f20d9f78318f654501..e470cd07a1a25158adeabd095697c6991f708e7b 100644 (file)
--- a/Changelog
+++ b/Changelog
@@ -1,3 +1,9 @@
+2009-04-22 FLUSHALL/FLUSHDB no longer sync on disk. Just increment the dirty counter by the number of elements removed, that will probably trigger a background saving operation
+2009-04-21 forgot to comment testing code in PHP lib. Now it is ok
+2009-04-21 PHP client ported to PHP5 and fixed
+2009-04-21 doc update
+2009-04-20 Non blocking replication (finally!). C-side linked lists API improved.
+2009-04-19 SUNION, SUNIONSTORE, Initial work on non blocking replication
 2009-04-10 Redis 0.091 released
 2009-04-10 SINTER/SINTERSTORE/SLEMENTS fix: misisng keys are now not errors, but just like empty sets
 2009-04-09 doc changes
index 1e582d244fa28311ed20320b13d78dbeb70c9d51..6a0d21be68d10dca22210eb09f7664768d145988 100644 (file)
@@ -68,6 +68,12 @@ class Redis {
         $this->write("GET $name\r\n");
         return $this->get_response();
     }
+
+    public function mget($keys) {
+        $this->connect();
+        $this->write("MGET ".implode(" ",$keys)."\r\n");
+        return $this->get_response();
+    }
     
     public function incr($name, $amount=1) {
         $this->connect();
diff --git a/dict.c b/dict.c
index 4e740e7d2013ef9deb644e46e53af0a966c23f1b..9360d52ebeac482cae8f1d092fa3273fc22d525f 100644 (file)
--- a/dict.c
+++ b/dict.c
@@ -377,7 +377,7 @@ dictEntry *dictGetRandomKey(dict *ht)
     unsigned int h;
     int listlen, listele;
 
-    if (ht->size == 0) return NULL;
+    if (ht->used == 0) return NULL;
     do {
         h = random() & ht->sizemask;
         he = ht->table[h];