summaryrefslogtreecommitdiff
path: root/deps/hiredis
diff options
context:
space:
mode:
authorantirez <antirez@gmail.com>2012-02-19 20:33:59 +0100
committerantirez <antirez@gmail.com>2012-02-19 20:33:59 +0100
commit8e65b6a33d01f48f469735798806877e3168cb2c (patch)
tree12d6a9cfd47f0dec3fd85fafea0be40bd727ee34 /deps/hiredis
parentb66e5add82bf6785421111f505f41ed8bf09a6f7 (diff)
downloadredis-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.c8
-rw-r--r--deps/hiredis/hiredis.h2
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 */