]>
git.saurik.com Git - redis.git/log
antirez [Tue, 24 Aug 2010 14:25:00 +0000 (16:25 +0200)]
slave now detect lost connection during SYNC, fixing Issue 173
antirez [Tue, 24 Aug 2010 14:04:13 +0000 (16:04 +0200)]
slave with attached slaves now close the conection to all the slaves when the connection to the master is lost. Now a slave without a connected link to the master will refuse SYNC from other slaves. Enhanced the replication error reporting. All this will fix Issue 156
antirez [Tue, 24 Aug 2010 10:10:59 +0000 (12:10 +0200)]
BLPOPping clients are no longer subject to connection timeouts, fixing issues 155
antirez [Tue, 24 Aug 2010 09:49:05 +0000 (11:49 +0200)]
added tests for invalid bulk argument
antirez [Tue, 24 Aug 2010 09:45:05 +0000 (11:45 +0200)]
sanity check for the bulk argument in protocol parsing code, fixing issue 146
antirez [Tue, 24 Aug 2010 08:10:01 +0000 (10:10 +0200)]
changed the comments on top of redis-copy.rb to reflect what the program really does
antirez [Mon, 23 Aug 2010 15:06:38 +0000 (17:06 +0200)]
Fixed overflow detection in argument to long convertion function in general, and in expire/ttl pairs specifically, addressing issue 54
antirez [Thu, 5 Aug 2010 09:36:39 +0000 (11:36 +0200)]
redis cli argument splitting is general and is now moved into the sds.c lib
antirez [Tue, 3 Aug 2010 12:25:22 +0000 (14:25 +0200)]
PERSIST: a fix and some basic test
antirez [Tue, 3 Aug 2010 12:19:20 +0000 (14:19 +0200)]
PERSIST command implemented
antirez [Tue, 3 Aug 2010 11:38:39 +0000 (13:38 +0200)]
replication test with expires
antirez [Tue, 3 Aug 2010 11:09:27 +0000 (13:09 +0200)]
Merge remote branch 'pietern/test-encoding-fix' into writeonexpire
antirez [Tue, 3 Aug 2010 11:08:32 +0000 (13:08 +0200)]
no longer passing tests due to the new write-on-volatile semantics modified/removed
antirez [Tue, 3 Aug 2010 10:26:30 +0000 (12:26 +0200)]
allow to set a new EXPIRE of an existing volatile key
antirez [Mon, 2 Aug 2010 19:37:39 +0000 (21:37 +0200)]
memory leak removed from expire propagation code
antirez [Mon, 2 Aug 2010 16:13:39 +0000 (18:13 +0200)]
support for write operations against expiring keys, by master-controlled expiring in replication and AOF synthesizing DEL operations
Pieter Noordhuis [Sun, 1 Aug 2010 09:20:26 +0000 (11:20 +0200)]
Fix assertion function on value encoding
antirez [Sat, 31 Jul 2010 11:55:06 +0000 (13:55 +0200)]
Merge remote branch 'pietern/list-test'
Pieter Noordhuis [Thu, 29 Jul 2010 20:13:31 +0000 (22:13 +0200)]
Change getDoubleFromObject to fail on NaN.
Return an error when the resulting value is not a number (NaN). Fix
ZUNIONSTORE/ZINTERSTORE to clean up when a weight argument is not a
double value.
Pieter Noordhuis [Thu, 29 Jul 2010 19:31:58 +0000 (21:31 +0200)]
Fix ZUNIONSTORE/ZINTERSTORE to never store a NaN score.
When +inf and -inf are added, the result is NaN. We don't want NaN
scores in a sorted set, so agreed on the result of this operation being
zero.
Pieter Noordhuis [Thu, 29 Jul 2010 11:53:52 +0000 (13:53 +0200)]
Use a large value to consistently trigger a list encoding,
even when the list is swapped out and in again.
Pieter Noordhuis [Thu, 29 Jul 2010 11:31:24 +0000 (13:31 +0200)]
ensure the value is swapped in before testing its encoding
antirez [Wed, 28 Jul 2010 16:56:52 +0000 (18:56 +0200)]
fix of the fix for the replication bug
antirez [Wed, 28 Jul 2010 16:42:02 +0000 (18:42 +0200)]
Fixed a replication bug in ZINTERSTORE.
In order to trigger the bug what's needed is to call ZINTERSTORE
resulting into an empty set created, bug against a key that already
existed. The command was not propagated, so the replica ended with the
key that the master removed. Sequence of command to reproduce:
redis-cli hset 446 34 905
redis-cli hset 446 393 911
redis-cli zadd 966 0.
085412045980529885 652
redis-cli zadd 645 0.
25081839284432045 280
redis-cli zinterstore 446 2 966 645
antirez [Wed, 28 Jul 2010 12:08:46 +0000 (14:08 +0200)]
better random dataset creation function in test. master-slave replication test now is able to save the two datasets in CSV when an inconsistency is detected.
antirez [Tue, 27 Jul 2010 13:26:08 +0000 (15:26 +0200)]
fixed a ziplist bug about encoding of integer values overflowing 64 bit
antirez [Tue, 27 Jul 2010 12:46:39 +0000 (14:46 +0200)]
removed test code having bad effects...
antirez [Tue, 27 Jul 2010 12:42:11 +0000 (14:42 +0200)]
Consistency test improved
antirez [Tue, 27 Jul 2010 12:30:02 +0000 (14:30 +0200)]
malloc definition with deprecated attribute was duplicated, one removed
antirez [Tue, 27 Jul 2010 08:09:26 +0000 (10:09 +0200)]
STRLEN command implemented
antirez [Tue, 27 Jul 2010 08:00:38 +0000 (10:00 +0200)]
hash table example commented out in dict.c
antirez [Tue, 27 Jul 2010 07:36:42 +0000 (09:36 +0200)]
use the function deprecated attribute if compiling with GCC to get warnings for malloc/free usages. We always want to use our zmalloc/zfree versions for memory usage tracking
Benjamin Kramer [Sat, 24 Jul 2010 21:20:00 +0000 (23:20 +0200)]
Add zcalloc and use it where appropriate
calloc is more effecient than malloc+memset when the system uses mmap to
allocate memory. mmap always returns zeroed memory so the memset can be
avoided. The threshold to use mmap is 16k in osx libc and 128k in bsd
libc and glibc. The kernel can lazily allocate the pages, this reduces
memory usage when we have a page table or hash table that is mostly
empty.
This change is most visible when you start a new redis instance with vm
enabled. You'll see no increased memory usage no matter how big your
page table is.
Benjamin Kramer [Sat, 24 Jul 2010 21:10:42 +0000 (23:10 +0200)]
Remove _dictAlloc and friends
zmalloc calls abort() so _dictPanic will never be called.
Benjamin Kramer [Sat, 24 Jul 2010 20:37:01 +0000 (22:37 +0200)]
Reduce code duplication
Pieter Noordhuis [Fri, 23 Jul 2010 11:08:35 +0000 (13:08 +0200)]
exit with non-zero status when there are failed tests
antirez [Thu, 22 Jul 2010 21:31:40 +0000 (23:31 +0200)]
don't open/close log file if log level is not matched
Pieter Noordhuis [Thu, 22 Jul 2010 14:06:27 +0000 (16:06 +0200)]
fix rare condition where 'key' would already be destroyed while is was needed later on
antirez [Thu, 22 Jul 2010 13:48:57 +0000 (15:48 +0200)]
defensive programming: set o->ptr to NULL before freeing objects
antirez [Thu, 22 Jul 2010 12:48:45 +0000 (14:48 +0200)]
other shared objects where created in the I/O thread in createStringObjectFromLongLong. Fixed as well.
antirez [Thu, 22 Jul 2010 11:12:24 +0000 (13:12 +0200)]
minor typo fixed in a comment
antirez [Thu, 22 Jul 2010 11:08:02 +0000 (13:08 +0200)]
don't use object sharing inside I/O threads, as a fix for a well known instability of VM introduced with the new object sharing code
antirez [Wed, 21 Jul 2010 11:16:26 +0000 (13:16 +0200)]
vm_blocked_clients count fixed in INFO, thanks to Pietern Noordhuis
antirez [Fri, 16 Jul 2010 21:56:18 +0000 (23:56 +0200)]
TODO list modified, trivial change to source code
antirez [Mon, 12 Jul 2010 10:01:15 +0000 (12:01 +0200)]
WATCH is now affected only when write commands actually modify the key content
antirez [Fri, 9 Jul 2010 08:51:41 +0000 (10:51 +0200)]
fmacro included in linenoise.c
antirez [Wed, 7 Jul 2010 16:44:53 +0000 (18:44 +0200)]
redis-cli history saved across sessions
antirez [Tue, 6 Jul 2010 17:17:09 +0000 (19:17 +0200)]
redis-cli is now able to report version information using -v
antirez [Tue, 6 Jul 2010 17:10:20 +0000 (19:10 +0200)]
Make install fixed using a dummy taget
antirez [Tue, 6 Jul 2010 17:07:16 +0000 (19:07 +0200)]
make install target, finally ;)
antirez [Tue, 6 Jul 2010 16:54:54 +0000 (18:54 +0200)]
top level Makefile added, so you do not need to cd src
antirez [Tue, 6 Jul 2010 16:30:38 +0000 (18:30 +0200)]
improved random dataset creation in test: del, sunionstore, zunionstore
antirez [Tue, 6 Jul 2010 15:24:00 +0000 (17:24 +0200)]
First implementation of a replication consistency test
Pieter Noordhuis [Mon, 5 Jul 2010 19:16:33 +0000 (15:16 -0400)]
merged code from
184d74ab ,
4774a53b ,
f483ce5f to new file structure
antirez [Mon, 5 Jul 2010 18:37:20 +0000 (20:37 +0200)]
INSTALL file added BETATESTING.txt removed
antirez [Mon, 5 Jul 2010 18:14:48 +0000 (20:14 +0200)]
Fixed compilation on *BSD systems
antirez [Mon, 5 Jul 2010 18:06:54 +0000 (20:06 +0200)]
Fixed a crash loading the AOF file containing MULTI/EXEC, a result of WATCH implementation. Test needed...
antirez [Mon, 5 Jul 2010 17:38:12 +0000 (19:38 +0200)]
WATCH will now consider touched keys target of EXPIRE command after the WATCH is performed, but not before
antirez [Thu, 1 Jul 2010 19:13:38 +0000 (21:13 +0200)]
Compilation fixed on Linux after the source code split
antirez [Thu, 1 Jul 2010 18:22:46 +0000 (20:22 +0200)]
Fixed MONITOR output for consistency: now integer encoded values are also formatted like this: "3932"
antirez [Thu, 1 Jul 2010 18:18:48 +0000 (20:18 +0200)]
Fix the AOF fix of the latest commit ;)
antirez [Thu, 1 Jul 2010 18:13:33 +0000 (20:13 +0200)]
fixed error code checking for *write operations and return value in AOF rewriting function
antirez [Thu, 1 Jul 2010 14:55:12 +0000 (16:55 +0200)]
Merged with split
antirez [Thu, 1 Jul 2010 13:14:25 +0000 (15:14 +0200)]
minor aesthetic change
antirez [Thu, 1 Jul 2010 12:52:01 +0000 (14:52 +0200)]
TODO updated
antirez [Thu, 1 Jul 2010 12:47:26 +0000 (14:47 +0200)]
Version is now 2.1.2
antirez [Thu, 1 Jul 2010 12:45:37 +0000 (14:45 +0200)]
Make log target fixed
antirez [Thu, 1 Jul 2010 12:41:03 +0000 (14:41 +0200)]
gitignore modified
antirez [Mon, 21 Jun 2010 22:07:48 +0000 (00:07 +0200)]
redis.c split into many different C files.
networking related stuff moved into networking.c
moved more code
more work on layout of source code
SDS instantaneuos memory saving. By Pieter and Salvatore at VMware ;)
cleanly compiling again after the first split, now splitting it in more C files
moving more things around... work in progress
split replication code
splitting more
Sets split
Hash split
replication split
even more splitting
more splitting
minor change
antirez [Thu, 24 Jun 2010 22:23:38 +0000 (00:23 +0200)]
Merge remote branch 'pietern/zfixes'
Pieter Noordhuis [Thu, 24 Jun 2010 22:12:42 +0000 (15:12 -0700)]
fix unexpected behavior on an out of range end index for LRANGE and LTRIM
Pieter Noordhuis [Wed, 16 Jun 2010 09:03:23 +0000 (11:03 +0200)]
more pub/sub tests
Pieter Noordhuis [Tue, 15 Jun 2010 20:40:21 +0000 (22:40 +0200)]
initial basic pub/sub tests
Pieter Noordhuis [Tue, 15 Jun 2010 19:16:56 +0000 (21:16 +0200)]
fix BLPOP/BRPOP to use the wrapped function for list length
Pieter Noordhuis [Tue, 15 Jun 2010 19:16:27 +0000 (21:16 +0200)]
tests for BLPOP/BRPOP via an option in the tcl client that defers reading the reply
Pieter Noordhuis [Tue, 15 Jun 2010 14:21:42 +0000 (16:21 +0200)]
fix behavior for out-of-range negative end index on ZREMRANGEBYRANK
Pieter Noordhuis [Tue, 15 Jun 2010 13:40:28 +0000 (15:40 +0200)]
more tests for zrange and zrevrange; fix behavior for out-of-range negative end index
antirez [Mon, 14 Jun 2010 15:59:03 +0000 (17:59 +0200)]
TODO updated
antirez [Mon, 14 Jun 2010 08:22:38 +0000 (10:22 +0200)]
Merge branch 'ltrim-tests' of git://github.com/pietern/redis
Pieter Noordhuis [Mon, 14 Jun 2010 08:21:23 +0000 (10:21 +0200)]
rename "list" to "linkedlist" to be more verbose
antirez [Mon, 14 Jun 2010 08:19:45 +0000 (10:19 +0200)]
allow running the test suite against an external Redis instance, without auto spawning
Pieter Noordhuis [Mon, 14 Jun 2010 07:45:34 +0000 (09:45 +0200)]
change ltrim tests to cover all min/max cases and add stronger stresser
antirez [Sun, 13 Jun 2010 21:51:43 +0000 (23:51 +0200)]
Fixed deps in makefile and mkreleasehdr.sh script to really take advantage of the new trick to avoid recompilation of redis.c on git sha1 or dirty status change
antirez [Sun, 13 Jun 2010 21:45:14 +0000 (23:45 +0200)]
hopefully faster recompiling with a trick
antirez [Sun, 13 Jun 2010 19:09:51 +0000 (21:09 +0200)]
fixed a bug in rdbLoadObject abount specially encoded objects
Pieter Noordhuis [Sun, 13 Jun 2010 13:07:53 +0000 (15:07 +0200)]
use raw strings when loading a hash from the rdb into a zipmap
antirez [Sat, 12 Jun 2010 14:26:04 +0000 (16:26 +0200)]
Merge branch 'expire' of git://github.com/pietern/redis
antirez [Fri, 11 Jun 2010 18:27:56 +0000 (20:27 +0200)]
Merge branch 'lists' of git://github.com/pietern/redis
Pieter Noordhuis [Fri, 11 Jun 2010 15:35:48 +0000 (17:35 +0200)]
LPUSHX, RPUSHX, LINSERT only work on non-empty lists, so there are no clients waiting for a push
Pieter Noordhuis [Fri, 11 Jun 2010 15:34:23 +0000 (17:34 +0200)]
make LINSERT return -1 when the value could not be inserted
Pieter Noordhuis [Fri, 11 Jun 2010 12:51:59 +0000 (14:51 +0200)]
check if the list encoding needs to be changed on LPUSHX, RPUSHX, LINSERT
Pieter Noordhuis [Fri, 11 Jun 2010 11:27:21 +0000 (13:27 +0200)]
make sure the value to insert is string encoded
Pieter Noordhuis [Fri, 11 Jun 2010 11:06:03 +0000 (13:06 +0200)]
rename vars, move arguments, add comments
Pieter Noordhuis [Fri, 11 Jun 2010 10:03:15 +0000 (12:03 +0200)]
always iterate from head to tail on LINSERT
Pieter Noordhuis [Fri, 11 Jun 2010 09:53:16 +0000 (11:53 +0200)]
use REDIS_TAIL to insert AFTER an entry and REDIS_HEAD to insert BEFORE an entry
Pieter Noordhuis [Fri, 11 Jun 2010 08:52:09 +0000 (10:52 +0200)]
move listTypeInsert to be grouped with other wrapper functions
Robey Pointer [Fri, 11 Jun 2010 08:08:59 +0000 (10:08 +0200)]
squashed merge from robey/twitter3: LINSERT BEFORE|AFTER, LPUSHX, RPUSHX
Pieter Noordhuis [Wed, 9 Jun 2010 09:36:58 +0000 (11:36 +0200)]
remove pop function and the sds dependency; can be implemented using get+delete
Pieter Noordhuis [Mon, 7 Jun 2010 19:53:21 +0000 (21:53 +0200)]
compute swappability for ziplist encoded lists
Pieter Noordhuis [Mon, 7 Jun 2010 18:44:12 +0000 (20:44 +0200)]
reuse the sds from the main dictionary in the expiration dictionary