antirez
|
069139ce75
|
after all closing a client for output buffer limit overcoming is a WARNING level message.
|
2012-01-24 12:03:48 +01:00 |
|
antirez
|
9844d172b9
|
Client output buffer limits: configuration of parameters for the different classes of clients implemented.
|
2012-01-24 10:43:30 +01:00 |
|
antirez
|
65654feac2
|
asyncCloseClientOnOutputBufferLimitReached() now ignores clients with REDIS_CLOSE_ASAP flag already set. Return value of the function changed from int to void since it is not used. Fixed logging of the client scheduled to be closed.
|
2012-01-24 09:32:39 +01:00 |
|
antirez
|
ddec8a8903
|
client buffer handling refactoring and optimization
|
2012-01-23 17:15:49 +01:00 |
|
antirez
|
1caa425a7c
|
Implementation of the internals that make possible to terminate clients overcoming configured output buffer (soft and hard) limits.
|
2012-01-23 16:12:37 +01:00 |
|
antirez
|
edfaedafb0
|
Introduced three client limit classes: normal, slave, pubsub
|
2012-01-17 12:43:01 +01:00 |
|
antirez
|
b7a33b7322
|
Track the length of the client pending output buffers (still to transfer) in a new field in the client structure.
|
2012-01-17 12:23:25 +01:00 |
|
antirez
|
a9ea3f0700
|
On crash print information about the current client (if any), command vector, and object associated to first argument assuming it is a key.
|
2012-01-12 16:02:57 +01:00 |
|
antirez
|
2d4305c5b8
|
Protections against protocol desyncs, leading to infinite query buffer growing, due to nul-terms in specific bytes of the request or indefinitely long multi bulk or bulk count strings without newlines. This bug is related to Issue #141 as well.
|
2011-12-31 16:09:46 +01:00 |
|
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 |
|