1872 Commits

Author SHA1 Message Date
antirez
0b73cbb69f sds.c no longe pre-allocate more than 1MB of free space ahead. This fixes issue #252. 2012-02-02 12:40:44 +01:00
antirez
1cd0cdd523 Set a 3.5 GB maxmemory limit with noeviction policy if a 32 bit instance without user-provided memory limits is detected. 2012-02-02 10:17:21 +01:00
antirez
f373061563 Added a server.arch_bits field instead of computing it at runtime for INFO. 2012-02-02 10:02:40 +01:00
antirez
29b3794231 Only incremnet stats for key miss/hit when the key is semantically accessed in read-only. 2012-02-02 09:51:11 +01:00
Salvatore Sanfilippo
58bfbd1fa4 Merge pull request #296 from pietern/2.4-expirefix
Don't expire keys when loading an RDB after a SYNC
2012-01-16 01:18:41 -08:00
Pieter Noordhuis
aa794ac06d Don't expire keys when loading an RDB after a SYNC
The cron is responsible for expiring keys. When keys are expired at
load time, it is possible that the snapshot of a master node gets
modified. This can in turn lead to inconsistencies in the data set.

A more concrete example of this behavior follows. A user reported a
slave that would show an monotonically increase input buffer length,
shortly after completing a SYNC. Also, `INFO` output showed a single
blocked client, which could only be the master link. Investigation
showed that indeed the `BRPOP` command was fed by the master. This
command can only end up in the stream of write operations when it did
NOT block, and effectively executed `RPOP`. However, when the key
involved in the `BRPOP` is expired BEFORE the command is executed, the
client executing it will block. The client in this case, is the master
link.
2012-01-13 18:03:33 -08:00
antirez
8b8261edc3 Possible fix for false positives in issue 141 regression test 2012-01-12 16:24:41 +01:00
antirez
fbfe656236 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:16:23 +01:00
antirez
e1849b6456 Redis 2.4.6 2.4.6 2012-01-11 20:30:55 +01:00
antirez
d0f37e247c error in comment fixed 2012-01-11 20:25:41 +01:00
antirez
3b67a0f905 show GCC version in INFO output. 2012-01-10 18:39:32 +01:00
antirez
2c2b6159d3 Regression test for the main problem causing issue #141. Minor changes/fixes/additions to the test suite itself needed to write the test. 2012-01-07 12:52:42 +01:00
antirez
d4945b253b Redis test: when assertion fails print not just the expression but also expanded values in the error message. 2012-01-07 12:52:32 +01:00
antirez
53785789a0 Regression tests for protocol desync bug related to Issue #141 2012-01-07 12:51:22 +01:00
antirez
e7b85b3315 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. 2012-01-07 12:50:44 +01:00
antirez
a5045d552c Fixed replication when multiple slaves are attaching at the same time. The output buffer was not copied correctly between slaves. This fixes issue #141. 2012-01-07 12:48:10 +01:00
antirez
8939ff1230 Do not propagate DEBUG LOADAOF 2012-01-07 12:47:10 +01:00
antirez
8b102e041a List connected slaves with ip,port,state information in INFO, as requested by github issue #219 2012-01-07 12:44:27 +01:00
antirez
273f41023d Redis 2.4.5 2.4.5 2011-12-23 09:43:24 +01:00
antirez
5bb2565959 Added regression test for ZUNIONSTORE creating NaN (github issue #264) 2011-12-23 09:34:41 +01:00
antirez
0692d060b3 Prevent NaN scores in sorted sets resulting from calls to ZUNIONSTORE and ZINTERSTORE. 2011-12-23 09:28:51 +01:00
antirez
2e689217d5 Redis test: vaoid two false positives while running under valgrind. 2011-12-20 10:35:33 +01:00
antirez
b76088845c Redis test: two redundant tests removed as they tend to create issues when running the test with valgrind. 2011-12-20 10:35:23 +01:00
antirez
8a625029e7 Redis test port allocation fixed. 2011-12-20 10:34:51 +01:00
antirez
8a6b21da61 unit/introspection.tcl added 2011-12-19 10:22:04 +01:00
antirez
c08eb8e74d unit/introspection added among tests executed by default 2011-12-19 10:19:12 +01:00
antirez
8b860b36b3 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:19:08 +01:00
antirez
61e44f614d added assertion in zslInsert() that ensures the inserted element score is not NaN 2011-12-18 11:13:13 +01:00
antirez
bc62bc5eac Fixed SORT bugs (issue #224) with regression tests. 2011-12-01 16:08:30 +01:00
antirez
67d6b29404 Replication bug fixed: now non blocking connect is also forced to follow the configured replication timeout. 2011-11-30 17:13:15 +01:00
antirez
901120f8e6 --quiet option implemented in the Redis test. Output improved a bit. 2011-11-30 09:36:30 +01:00
antirez
54a2934f10 Redis 2.4.4 2.4.4 2011-11-28 11:22:08 +01:00
antirez
a675e5b171 two new AOF related INFO fields that can be interesting information for debugging. 2011-11-28 11:11:13 +01:00
antirez
0f2199ec29 show initial querybuf bytes on querybuf overflow. 2011-11-25 17:08:25 +01:00
antirez
241e3cff83 jemalloc gitignore updated to jemalloc 2.2.5 2011-11-25 16:48:07 +01:00
jbergstroem
a9c2f0f28a Update to jemalloc 2.2.5 2011-11-25 16:47:55 +01:00
antirez
7558b1fe4d log client protocol errors for log level >= verbose 2011-11-25 16:09:16 +01:00
antirez
fcf5783632 Added regression tests for issue #209 2011-11-25 12:27:00 +01:00
woowenjie
6532df2e7e clean REDIS_DIRTY_CAS when discard Command runs. otherwise the next MULTI/EXEC may fail in the same RedisClient 2011-11-25 12:13:57 +01:00
antirez
8a82ee0f3c better bug report info on crash (backported from unstable) 2011-11-24 15:53:35 +01:00
antirez
f4e2abfcd4 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:47:55 +01:00
antirez
3852e2a831 last executed command in CLIENT LIST output. 2011-11-24 14:56:43 +01:00
antirez
6a252e9498 Redis 2.4.3 2.4.3 2011-11-21 18:47:39 +01:00
antirez
5d5e68a486 Fixed bug in getClientInfoString() that was not rendering the N (no flags) special flag correctly. 2011-11-21 18:37:22 +01:00
antirez
a6e4627438 Close client connection and log the event when the client input buffer reaches 1GB. 2011-11-21 18:37:17 +01:00
antirez
93babe4b41 show active events in client file descriptor in CLIENT LIST. 2011-11-21 18:37:05 +01:00
antirez
713b4c5401 new ae.c API to get current events by file descriptor. 2011-11-21 18:37:01 +01:00
antirez
51baa1922b added output list and buffer length, query buffer size, to CLIENT LIST output. 2011-11-21 18:36:56 +01:00
antirez
f3ac12aac2 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 18:36:41 +01:00
antirez
0b1531e50b Added sdscatsds() to sds.c/h 2011-11-21 18:32:29 +01:00