diff options
author | antirez <antirez@gmail.com> | 2012-02-19 20:33:59 +0100 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2012-02-19 20:33:59 +0100 |
commit | 8e65b6a33d01f48f469735798806877e3168cb2c (patch) | |
tree | 12d6a9cfd47f0dec3fd85fafea0be40bd727ee34 /deps/hiredis | |
parent | b66e5add82bf6785421111f505f41ed8bf09a6f7 (diff) | |
download | redis-8e65b6a33d01f48f469735798806877e3168cb2c.tar.gz |
Applied a few modifications to hiredis to tune it for speed (redis-benchmark) and ability to read more deeply nested replies (redis-cli).
Diffstat (limited to 'deps/hiredis')
-rw-r--r-- | deps/hiredis/hiredis.c | 8 | ||||
-rw-r--r-- | deps/hiredis/hiredis.h | 2 |
2 files changed, 6 insertions, 4 deletions
diff --git a/deps/hiredis/hiredis.c b/deps/hiredis/hiredis.c index 1a57adb1b..e6109db84 100644 --- a/deps/hiredis/hiredis.c +++ b/deps/hiredis/hiredis.c @@ -447,9 +447,9 @@ static int processMultiBulkItem(redisReader *r) { int root = 0; /* Set error for nested multi bulks with depth > 2 */ - if (r->ridx == 3) { + if (r->ridx == 8) { __redisReaderSetError(r,REDIS_ERR_PROTOCOL, - "No support for nested multi bulk replies with depth > 2"); + "No support for nested multi bulk replies with depth > 7"); return REDIS_ERR; } @@ -590,6 +590,7 @@ int redisReaderFeed(redisReader *r, const char *buf, size_t len) { /* Copy the provided buffer. */ if (buf != NULL && len >= 1) { +#if 0 /* Destroy internal buffer when it is empty and is quite large. */ if (r->len == 0 && sdsavail(r->buf) > 16*1024) { sdsfree(r->buf); @@ -599,6 +600,7 @@ int redisReaderFeed(redisReader *r, const char *buf, size_t len) { /* r->buf should not be NULL since we just free'd a larger one. */ assert(r->buf != NULL); } +#endif newbuf = sdscatlen(r->buf,buf,len); if (newbuf == NULL) { @@ -1067,7 +1069,7 @@ int redisSetTimeout(redisContext *c, struct timeval tv) { * After this function is called, you may use redisContextReadReply to * see if there is a reply available. */ int redisBufferRead(redisContext *c) { - char buf[2048]; + char buf[1024*16]; int nread; /* Return early when the context has seen an error. */ diff --git a/deps/hiredis/hiredis.h b/deps/hiredis/hiredis.h index 835837548..a73f50e95 100644 --- a/deps/hiredis/hiredis.h +++ b/deps/hiredis/hiredis.h @@ -123,7 +123,7 @@ typedef struct redisReader { size_t pos; /* Buffer cursor */ size_t len; /* Buffer length */ - redisReadTask rstack[4]; + redisReadTask rstack[9]; int ridx; /* Index of current read task */ void *reply; /* Temporary reply pointer */ |