Skip to content

Commit a3f9eec

Browse files
committed
KEYS now returns a multi bulk reply
1 parent 18b6cb7 commit a3f9eec

File tree

2 files changed

+6
-8
lines changed

2 files changed

+6
-8
lines changed

redis.c

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3820,7 +3820,7 @@ static void keysCommand(redisClient *c) {
38203820
dictEntry *de;
38213821
sds pattern = c->argv[1]->ptr;
38223822
int plen = sdslen(pattern);
3823-
unsigned long numkeys = 0, keyslen = 0;
3823+
unsigned long numkeys = 0;
38243824
robj *lenobj = createObject(REDIS_STRING,NULL);
38253825

38263826
di = dictGetIterator(c->db->dict);
@@ -3833,17 +3833,15 @@ static void keysCommand(redisClient *c) {
38333833
if ((pattern[0] == '*' && pattern[1] == '\0') ||
38343834
stringmatchlen(pattern,plen,key,sdslen(key),0)) {
38353835
if (expireIfNeeded(c->db,keyobj) == 0) {
3836-
if (numkeys != 0)
3837-
addReply(c,shared.space);
3836+
addReplyBulkLen(c,keyobj);
38383837
addReply(c,keyobj);
3838+
addReply(c,shared.crlf);
38393839
numkeys++;
3840-
keyslen += sdslen(key);
38413840
}
38423841
}
38433842
}
38443843
dictReleaseIterator(di);
3845-
lenobj->ptr = sdscatprintf(sdsempty(),"$%lu\r\n",keyslen+(numkeys ? (numkeys-1) : 0));
3846-
addReply(c,shared.crlf);
3844+
lenobj->ptr = sdscatprintf(sdsempty(),"*%lu\r\n",numkeys);
38473845
}
38483846

38493847
static void dbsizeCommand(redisClient *c) {

test-redis.tcl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ proc createComplexDataset {r ops} {
178178
}
179179

180180
proc datasetDigest r {
181-
set keys [lsort [split [$r keys *] " "]]
181+
set keys [lsort [$r keys *]]
182182
set digest {}
183183
foreach k $keys {
184184
set t [$r type $k]
@@ -204,7 +204,7 @@ proc datasetDigest r {
204204
set aux [::sha1::sha1 -hex [$r zrange $k 0 -1]]
205205
}
206206
} default {
207-
error "Type not supported"
207+
error "Type not supported: $t"
208208
}
209209
}
210210
if {$aux eq {}} continue

0 commit comments

Comments
 (0)