]>
git.saurik.com Git - redis.git/log
Pieter Noordhuis [Thu, 26 Aug 2010 09:22:58 +0000 (11:22 +0200)]
Make the function intsetUpgrade self-contained
Pieter Noordhuis [Thu, 26 Aug 2010 09:06:30 +0000 (11:06 +0200)]
Expand macro's to functions for readability
Pieter Noordhuis [Wed, 25 Aug 2010 12:48:50 +0000 (14:48 +0200)]
Use fstat to detect if stdin was redirected
Pieter Noordhuis [Wed, 25 Aug 2010 12:15:41 +0000 (14:15 +0200)]
Make helper functions simpler
Pieter Noordhuis [Wed, 25 Aug 2010 12:08:32 +0000 (14:08 +0200)]
Comments in redis-cli tests
Pieter Noordhuis [Wed, 25 Aug 2010 11:39:11 +0000 (13:39 +0200)]
Add a newline to tty output after every reply
Pieter Noordhuis [Wed, 25 Aug 2010 08:05:50 +0000 (10:05 +0200)]
Re-introduce the interactive field so we can reconnect in interactive mode
Pieter Noordhuis [Wed, 25 Aug 2010 07:54:02 +0000 (09:54 +0200)]
Merge master and move argument splitting patch to sds.c
antirez [Tue, 24 Aug 2010 16:39:34 +0000 (18:39 +0200)]
redis-cli now supports automatically reconnection in interactive mode
antirez [Tue, 24 Aug 2010 16:08:09 +0000 (18:08 +0200)]
Issue 179 fixed, now redis-cli is able to parse correctly multi bulk replies with elements that are errors
antirez [Tue, 24 Aug 2010 15:09:25 +0000 (17:09 +0200)]
The pid file is now created only after the server is correctly initialied. It is also removed on sigterm and when the stack trace is produced after a sigbus or a sigsegv. This two changes should fix the Issue 175
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
Pieter Noordhuis [Sat, 21 Aug 2010 09:25:13 +0000 (11:25 +0200)]
Rename iterator to setTypeIterator for consistency
Pieter Noordhuis [Sat, 21 Aug 2010 09:15:31 +0000 (11:15 +0200)]
Make SORT use the hybrid set accessors to allow sorting intsets
Pieter Noordhuis [Sat, 21 Aug 2010 09:03:56 +0000 (11:03 +0200)]
SORT tests with hash table encoded set as input
Pieter Noordhuis [Sat, 21 Aug 2010 09:02:22 +0000 (11:02 +0200)]
Make SORT tests use both ziplists and linked lists as input
Pieter Noordhuis [Sat, 21 Aug 2010 08:55:53 +0000 (10:55 +0200)]
Move SORT tests around
Pieter Noordhuis [Sat, 21 Aug 2010 08:54:31 +0000 (10:54 +0200)]
Don't abort test suite when the server block has a return value
Pieter Noordhuis [Fri, 20 Aug 2010 11:42:42 +0000 (13:42 +0200)]
Check if stroll return value was clamped
Pieter Noordhuis [Fri, 20 Aug 2010 10:40:29 +0000 (12:40 +0200)]
Merge branch 'master' into intset-split
Conflicts:
src/Makefile
src/t_set.c
Pieter Noordhuis [Fri, 13 Aug 2010 17:28:49 +0000 (19:28 +0200)]
Make ziplist schema more efficient for strings with length > 15
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
Pieter Noordhuis [Wed, 4 Aug 2010 16:36:03 +0000 (18:36 +0200)]
Deprecate starting interactive mode using the -i flag
Pieter Noordhuis [Wed, 4 Aug 2010 16:16:39 +0000 (18:16 +0200)]
Set tty before going into interactive mode to get non-pretty output when
the commands are read from stdin.
Pieter Noordhuis [Wed, 4 Aug 2010 15:46:56 +0000 (17:46 +0200)]
Change output format for non-tty redis-cli execution
Pieter Noordhuis [Wed, 4 Aug 2010 15:16:05 +0000 (17:16 +0200)]
Let the output mode depend on having a tty or not
Pieter Noordhuis [Wed, 4 Aug 2010 15:02:13 +0000 (17:02 +0200)]
Tests for redis-cli in non-interactive mode
Minor change in redis-cli output for the (multi-)bulk response but this
will be fixed in the next commit.
Pieter Noordhuis [Wed, 4 Aug 2010 13:29:28 +0000 (15:29 +0200)]
Add tests for quotation in an interactive redis-cli session
Patched redis-cli to abort on unexpected quotation. This caused
redis-cli to get into an infinite, memory-consuming loop.
Pieter Noordhuis [Wed, 4 Aug 2010 12:15:52 +0000 (14:15 +0200)]
Tests for the interactive mode of redis-cli
Changed redis-cli to output the raw response for a bulk reply when it is
run in interactive mode instead of checking isatty.
Pieter Noordhuis [Tue, 3 Aug 2010 18:49:53 +0000 (20:49 +0200)]
Reference zset score in zskiplistNode from dict entries
This avoids the extra allocation of sizeof(double) for storing the score
of a zset entry in the hash table. Saves sizeof(double) + malloc
overhead = approx. 16 bytes per zset entry.
Pieter Noordhuis [Tue, 3 Aug 2010 17:21:16 +0000 (19:21 +0200)]
Use flexible array in zskiplistNode to reduce memory usage
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
Pieter Noordhuis [Fri, 2 Jul 2010 18:42:20 +0000 (20:42 +0200)]
fix aof and digest code to work with dual set encoding
Pieter Noordhuis [Fri, 2 Jul 2010 17:57:12 +0000 (19:57 +0200)]
merged intset code into the split files
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