293 Commits

Author SHA1 Message Date
antirez
ac6de3d151 Fixed replication when multiple slaves are attaching at the same time. The output buffer was not copied correctly between slaves. This fixes issue #141. 2011-12-30 19:40:43 +01:00
antirez
64afc922e6 server.replstate -> server.repl_state 2011-12-21 12:23:18 +01:00
antirez
c466e56e91 Fixed memleak in CLIENT INFO, added simple test that will work as regression test on mac os x and in the CI when running over valgrind. This fixes issue #256 2011-12-19 10:16:37 +01:00
antirez
09f5c58216 show initial querybuf bytes on querybuf overflow. 2011-11-28 11:12:55 +01:00
antirez
ce13e0d064 log client protocol errors for log level >= verbose 2011-11-25 16:09:34 +01:00
antirez
aac9f95be1 minor refactoring to networking.c adding a separated function to get a string representing the current state of all the connected clients. 2011-11-24 15:04:42 +01:00
antirez
9dbcab8b08 last executed command in CLIENT LIST output. 2011-11-24 14:56:34 +01:00
antirez
785a743b78 new counter in INFO output: rejected_connections with number of dropped connections because of maxclients limit reached. 2011-11-23 18:38:12 +01:00
antirez
22d6f6579b Fixed bug in getClientInfoString() that was not rendering the N (no flags) special flag correctly. 2011-11-21 16:19:30 +01:00
antirez
8dd9319cb2 Close client connection and log the event when the client input buffer reaches 1GB. 2011-11-21 16:17:51 +01:00
antirez
3f428bb5c2 show active events in client file descriptor in CLIENT LIST. 2011-11-21 16:06:03 +01:00
antirez
52c3150e1e added output list and buffer length, query buffer size, to CLIENT LIST output. 2011-11-21 15:54:49 +01:00
antirez
48f70ac1b7 code generating the CLIENT LIST output refactored to have a function that is able to render a single client into a client info string. 2011-11-21 15:34:32 +01:00
antirez
006d721473 useless double if removed. 2011-11-08 11:26:06 +01:00
antirez
2ce2bb347a yet another #if REDIS_MBULK_BIG_ARG removed. 2011-11-08 11:24:12 +01:00
antirez
bbc8260844 Multi bulk optimization for creating big objects without copying data is no longer optional, #ifdefs removed. Also debugging messages removed. 2011-11-08 11:22:40 +01:00
antirez
8da0b6d7b8 A comment moved a few lines for clarity. 2011-11-04 11:18:15 +01:00
antirez
7c615d3a26 Added a define to set the size threshold to enable the multi bulk parsing big objects optimization. 2011-11-04 11:16:11 +01:00
antirez
661dfc7ba6 further optimizations for the multi bulk protocol parsing code when big objects are transmitted to Redis. 2011-11-03 15:53:40 +01:00
antirez
7cef7b3847 optimized object creation in multi-bulk protocol parsing 2011-11-02 17:30:19 +01:00
antirez
8b02578017 sdsIncrLen() / sdsMakeRoomFor() used to avoid copying to intermediate buffer while reading the client query. 2011-11-02 16:52:45 +01:00
antirez
9ae9fcaefb maxclients configuration is now implemented dealing with the actual process rlimits. Setting maxclients to 0 no longer makes sense and is now invalid, the new default is 10000.
See issue #162 for more information.
2011-10-31 10:49:27 +01:00
antirez
70a04c93cb First implementation of the ASKING command. Semantics still to verify. 2011-10-17 17:35:23 +02:00
antirez
357f49db2f replaced redisAssert() with redisAssertWithInfo() in a shitload of places. 2011-10-04 18:43:03 +02:00
antirez
0d57e6afc1 Remove the write handler only if there are no longer objects in the output queue AND if the static buffer is empty. This bug was the cause of a possible server-stop-responding-to-client bug under some specific work load. Thanks to Pieter Noordhuis for spotting and fixing it. 2011-09-12 11:06:28 +02:00
Hampus Wessman
e558915223 Fix crash when pipelining several blocking commands. 2011-07-28 13:50:44 +02:00
antirez
3aa9917e6e Replicate EVALSHA as EVAL taking a dictionary of sha1 -> script source code. 2011-07-13 15:38:03 +02:00
antirez
335b27ecd0 master branch merged into scripting. 2011-07-12 12:39:16 +02:00
antirez
ee2dc83094 Take a pointer to the relevant entry of the command table in the client structure. This is generally a more sounding design, simplifies a few functions prototype, and as a side effect fixes a bug related to the conversion of EXPIRE -1 to DEL: before of this fix Redis tried to convert it into an EXPIREAT in the AOF code, regardless of our rewrite of the command. 2011-07-08 12:59:30 +02:00
antirez
4d0e1714f0 unstable merge conflicts resolved 2011-06-25 12:29:24 +02:00
antirez
59f09141f5 diskstore removed 2011-06-25 12:22:03 +02:00
antirez
7192cd5cb7 Fix for bug 561 and other related problems 2011-06-20 17:19:36 +02:00
antirez
c91c904e1c new INFO filed master_link_down_since_seconds 2011-06-17 16:16:46 +02:00
antirez
cfd32c162f Make sure error and status replies emitted by Lua scripts can never have more than a newline, otherwise it is a protocol violation and clients will desync. 2011-05-25 12:32:50 +02:00
antirez
4a56ea5b76 when creating not connected clients do not add them into the clients list, otherwise they will be subject to timeouts and other stuff 2011-05-25 12:32:44 +02:00
antirez
2039ac2211 Correctly glue the reply buffer. For now returned as it is to Lua, but will be converted into Lua native type later. 2011-05-25 12:32:44 +02:00
antirez
09e9cb316e Lua call of Redis command work in progress: sorry I have to go to the cinema to watch the Source Code movie 2011-05-25 12:32:44 +02:00
antirez
ab1d6f5ca0 when Redis fails accepting a new connection reports the error at WARNING and not VERBOSE error level. Thanks to offby1 for proposing this in the Redis mailing list. #backport-candidate 2011-05-07 11:47:34 +02:00
Pieter Noordhuis
77ae0ac00f Check for \n after finding \r 2011-05-05 16:32:22 +02:00
Pieter Noordhuis
29d9fa9840 Move code 2011-05-05 16:25:48 +02:00
Pieter Noordhuis
9cd7cd5140 Use custom string2ll and strchr 2011-05-05 16:25:48 +02:00
antirez
467a2d613b Fixed a bug with replication where SLAVEOF NO ONE caused a slave to close the connection with its slaves 2011-04-29 14:18:16 +02:00
antirez
4e107a1f58 CLIENT KILL implemented 2011-04-21 15:47:47 +02:00
antirez
8a3ff7cff3 CLIENT LIST implemented 2011-04-21 15:38:02 +02:00
antirez
4da9895092 removed check for zmalloc return NULL in createClient(). The check was misplaced, and zmalloc never returns NULL. 2011-04-20 12:51:03 +02:00
antirez
6dd67262a4 addReplyLongLong optimized to return shared objects when the value to reply is 0 or 1 2011-04-15 18:08:24 +02:00
antirez
3b666e64dc fixed memory leak introduced with the previous commit. Many thanks to Pieter Noordhuis for spotting it in no time 2011-03-31 19:52:15 +02:00
antirez
baffa73b48 Fixed issue #503. MONITOR + QUIT could crash the server, there are actually other interactions that could have the same effect (for instance Pub/Sub). 2011-03-31 16:44:43 +02:00
antirez
3f3b6a3c6f Fixed issue #435 and at the same time introduced explicit ping in the master-slave channel that will detect a blocked master or a broken even if apparently connected TCP link. 2011-01-20 13:18:23 +01:00
Pieter Noordhuis
418603038c Remove client from list of unblocked clients when it is free'd 2011-01-17 10:04:13 +01:00