mirror of
https://github.com/fluencelabs/redis
synced 2025-04-01 15:21:03 +00:00
benchmark.c fixes
This commit is contained in:
parent
c28b42acd9
commit
89ee361eef
14
benchmark.c
14
benchmark.c
@ -137,7 +137,8 @@ static void resetClient(client c) {
|
|||||||
aeCreateFileEvent(config.el,c->fd, AE_WRITABLE,writeHandler,c,NULL);
|
aeCreateFileEvent(config.el,c->fd, AE_WRITABLE,writeHandler,c,NULL);
|
||||||
sdsfree(c->ibuf);
|
sdsfree(c->ibuf);
|
||||||
c->ibuf = sdsempty();
|
c->ibuf = sdsempty();
|
||||||
c->readlen = (c->replytype == REPLY_BULK) ? -1 : 0;
|
c->readlen = (c->replytype == REPLY_BULK ||
|
||||||
|
c->replytype == REPLY_MBULK) ? -1 : 0;
|
||||||
c->mbulk = -1;
|
c->mbulk = -1;
|
||||||
c->written = 0;
|
c->written = 0;
|
||||||
c->state = CLIENT_SENDQUERY;
|
c->state = CLIENT_SENDQUERY;
|
||||||
@ -238,6 +239,7 @@ processdata:
|
|||||||
*p = '\0';
|
*p = '\0';
|
||||||
*(p-1) = '\0';
|
*(p-1) = '\0';
|
||||||
c->readlen = atoi(c->ibuf+1)+2;
|
c->readlen = atoi(c->ibuf+1)+2;
|
||||||
|
// printf("BULK ATOI: %s\n", c->ibuf+1);
|
||||||
/* Handle null bulk reply "$-1" */
|
/* Handle null bulk reply "$-1" */
|
||||||
if (c->readlen-2 == -1) {
|
if (c->readlen-2 == -1) {
|
||||||
clientDone(c);
|
clientDone(c);
|
||||||
@ -258,6 +260,7 @@ processdata:
|
|||||||
clientDone(c);
|
clientDone(c);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
// printf("%p) %d elements list\n", c, c->mbulk);
|
||||||
/* Leave all the rest in the input buffer */
|
/* Leave all the rest in the input buffer */
|
||||||
c->ibuf = sdsrange(c->ibuf,(p-c->ibuf)+1,-1);
|
c->ibuf = sdsrange(c->ibuf,(p-c->ibuf)+1,-1);
|
||||||
goto processdata;
|
goto processdata;
|
||||||
@ -273,9 +276,14 @@ processdata:
|
|||||||
(c->replytype == REPLY_BULK)) && c->readlen != -1 &&
|
(c->replytype == REPLY_BULK)) && c->readlen != -1 &&
|
||||||
(unsigned)c->readlen <= sdslen(c->ibuf))
|
(unsigned)c->readlen <= sdslen(c->ibuf))
|
||||||
{
|
{
|
||||||
|
// printf("BULKSTATUS mbulk:%d readlen:%d sdslen:%d\n",
|
||||||
|
// c->mbulk,c->readlen,sdslen(c->ibuf));
|
||||||
if (c->replytype == REPLY_BULK) {
|
if (c->replytype == REPLY_BULK) {
|
||||||
clientDone(c);
|
clientDone(c);
|
||||||
} else if (c->replytype == REPLY_MBULK) {
|
} else if (c->replytype == REPLY_MBULK) {
|
||||||
|
// printf("%p) %d (%d)) ",c, c->mbulk, c->readlen);
|
||||||
|
// fwrite(c->ibuf,c->readlen,1,stdout);
|
||||||
|
// printf("\n");
|
||||||
if (--c->mbulk == 0) {
|
if (--c->mbulk == 0) {
|
||||||
clientDone(c);
|
clientDone(c);
|
||||||
} else {
|
} else {
|
||||||
@ -486,7 +494,6 @@ int main(int argc, char **argv) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
do {
|
do {
|
||||||
#if 0
|
|
||||||
prepareForBenchmark();
|
prepareForBenchmark();
|
||||||
c = createClient();
|
c = createClient();
|
||||||
if (!c) exit(1);
|
if (!c) exit(1);
|
||||||
@ -548,7 +555,6 @@ int main(int argc, char **argv) {
|
|||||||
aeMain(config.el);
|
aeMain(config.el);
|
||||||
endBenchmark("PING");
|
endBenchmark("PING");
|
||||||
|
|
||||||
#endif
|
|
||||||
prepareForBenchmark();
|
prepareForBenchmark();
|
||||||
c = createClient();
|
c = createClient();
|
||||||
if (!c) exit(1);
|
if (!c) exit(1);
|
||||||
@ -558,7 +564,6 @@ int main(int argc, char **argv) {
|
|||||||
aeMain(config.el);
|
aeMain(config.el);
|
||||||
endBenchmark("LPUSH (again, in order to bench LRANGE)");
|
endBenchmark("LPUSH (again, in order to bench LRANGE)");
|
||||||
|
|
||||||
#if 0
|
|
||||||
prepareForBenchmark();
|
prepareForBenchmark();
|
||||||
c = createClient();
|
c = createClient();
|
||||||
if (!c) exit(1);
|
if (!c) exit(1);
|
||||||
@ -585,7 +590,6 @@ int main(int argc, char **argv) {
|
|||||||
createMissingClients(c);
|
createMissingClients(c);
|
||||||
aeMain(config.el);
|
aeMain(config.el);
|
||||||
endBenchmark("LRANGE (first 450 elements)");
|
endBenchmark("LRANGE (first 450 elements)");
|
||||||
#endif
|
|
||||||
|
|
||||||
prepareForBenchmark();
|
prepareForBenchmark();
|
||||||
c = createClient();
|
c = createClient();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user