]> git.saurik.com Git - redis.git/blame_incremental - Changelog
Changelog updated
[redis.git] / Changelog
... / ...
CommitLineData
12010-01-21 REDIS_MAX_COMPLETED_JOBS_PROCESSED is now in percentage, not number of jobs. Moved a debugging message a few lines forward as it was called where a few logged parameters where invalid, leading to a crash
22010-01-20 fixed a deadlock caused by too much finished processes in queue so that I/O clients writing to the wirte side of the pipe used to awake the main thread where blocking. Then a BGSAVE started waiting for the last active thread to finish, condition impossible because all the I/O threads where blocking on threads. Takes this as a note to myself...
32010-01-20 ae.c event loop does no longer support exception notifications, as they are fully pointless. Also a theoretical bug that never happens in practice fixed.
42010-01-19 commercial tools stuff removed from the Redis makefile. cotools are now migrated into a different repos
52010-01-19 removed a bug in the function to cancel an I/O job
62010-01-17 static symbols update
72010-01-16 removed support for REDIS_HELGRIND_FRIENDLY since Helgrind 3.5.0 is friendly enough even with many threads created and destroyed
82010-01-15 now redis-cli understands -h
92010-01-15 Create swap file only if not exists
102010-01-15 I hate warnings
112010-01-15 fixed a minor memory leak in configuration file parsing
122010-01-15 minor fix
132010-01-15 support for named VM swap file. Fixed a few important interaction issues between the background saving processes and IO threads
142010-01-15 fix for the just added new test
152010-01-15 useless debugging messages removed
162010-01-15 new test added
172010-01-15 thread safe zmalloc used memory counter
182010-01-15 A define to make Redis more helgrind friendly
192010-01-15 removed a few races from threaded VM
202010-01-14 Fixed a never experienced, theoretical bug that can actually happen in practice. Basically when a thread is working on a I/O Job we need to wait it to finish before to cancel the Job in vmCancelThreadedIOJob(), otherwise the thread may mess with an object that is being manipulated by the main thread as well.
212010-01-14 Set the new threads stack size to a LZF friendly amount
222010-01-13 access to already freed job structure fixed by statements reoredering
232010-01-13 removed a useless debugging message
242010-01-13 Wait zero active threads condition before to fork() for BGSAVE or BGREWRITEAOF
252010-01-13 list API is now thread safe
262010-01-13 minor TODO and debugging info changes
272010-01-12 support for blocking VM in config file
282010-01-12 more non blocking VM changes
292010-01-12 fix for test #11
302010-01-12 a few more stuff in INFO about VM. Test #11 changed a bit in order to be less lame
312010-01-12 Added a define to configure how many completed IO jobs the handler should process at every call.
322010-01-11 Fixed a bug in the IO Job canceling funtion
332010-01-11 more steps towards a working non blocking VM
342010-01-11 converted random printfs in debug logs
352010-01-11 removed a bug introduced with non blocking VM
362010-01-11 a few non blocking VM bugs fixed
372010-01-11 More work on non-blocking VM. Should work in a few days
382010-01-11 More threaded I/O VM work + Redis init script
392010-01-10 more work on VM threaded I/O. Still nothing of usable
402010-01-09 non-blocking VM data structures, just a start
412010-01-08 used_memory_human added to INFO output. Human readable amount of memory used.
422010-01-07 Now DEBUG OBJECT plays well with swapped out objects
432010-01-07 fflush VM swap file after object swapping
442010-01-07 added the fmacros to enable support for fseeko() lseeko() with 64bit off_t
452010-01-07 VM now swaps objects out while loading datasets not fitting into vm-max-memory bytes of RAM
462010-01-07 added process id information in INFO
472010-01-06 vm-enabled set to no by default in redis.conf
482010-01-06 a new default redis.conf
492010-01-06 VM stats in INFO command
502010-01-06 Introduced a new log verbosity level, so now DEBUG is really for debugging. Refactored a bit maxmemory. When virtual memory is short in RAM free the objects freelist as well as swapping things out.
512010-01-05 fixed a bug in bgsave when VM is off but still it was testing for obj->storage field
522010-01-05 converted a few calls to assert() => redisAssert() to print stack trace
532010-01-05 BGREWRITEAOF now works with swapping on
542010-01-05 A first fix for SET key overwrite
552010-01-05 SAVE now works with VM
562010-01-05 swapping algorithm a bit more aggressive under low memory
572010-01-05 basic VM mostly working!
582010-01-05 New object field (one of the unused bytes) to hold the type of the swapped out value object in key objects
592010-01-05 VM internals bugfixes, set 1
602010-01-05 load key from swap on key lookup
612010-01-05 more object-level VM primitives
622010-01-05 Redis objects swapping / loading
632010-01-05 rdbLoadObject() as a separated function to load objects from disk. Dropped support for RDB version 0, I guess no longer has this legacy DBs around
642010-01-04 VM low level pages handling
652010-01-04 vm swap file creation, and some basic configuration
662010-01-04 version marked 1.3.2
672010-01-04 saving code refactored a bit, added a function returning the number of bytes an object will use on disk
682010-01-02 Now the PUSH side of RPOPLPUSH is able to unblock clients blocked on BLPOP
692010-01-02 Version is now 1.3.1
702010-01-02 New vararg BLPOP able to block against multiple keys
712009-12-29 fixed a problem with BLPOP timeout of zero, now it blocks forever
722009-12-29 BLPOP timeouts implemented
732009-12-29 first working implementation of BLPOP and BRPOP, still everything is to test well
742009-12-29 a few more fixes, still broken
752009-12-29 First fix, still broken
762009-12-29 minor fix for Linux 64 bit
772009-12-29 not yet working BLPOP implementation
782009-12-27 AOFSYNC removed, got a better idea...
792009-12-27 AOFSYNC command implemented
802009-12-27 Version changed to 1.3.0, welcome to the new unstable
812009-12-27 Now MULTI returns +OK as well
822009-12-27 MULTI/EXEC first implementation
832009-12-24 Fixed a minor bug in GETSET, now the SET part is not performed if the GET fails because the key does not contain a string value
842009-12-23 html doc readded
852009-12-23 ZRANGE WITHSCORES test added
862009-12-23 version is now 1.1.94
872009-12-23 Add the command name in the unknown command error message.
882009-12-22 ZRANGE, ZREVRANGE now support WITHSCORES options
892009-12-22 html docs update (ZINCRBY added)
902009-12-18 TODO list update
912009-12-18 the pipelining test was ran against DB 1 for error, now it runs on DB 9 like all the other tests
922009-12-18 still more tests
932009-12-18 SORT STORE test added
942009-12-18 Now SORT returns an empty bulk reply if the key does not exist
952009-12-18 modified a bit the ZREVRANGE test to cover a few lines of code more
962009-12-18 SHUTDOWN now does the right thing when append only is on, that is, fsync instead to save the snapshot.
972009-12-18 Added a missing server.dirty increment in a non critical place, added more tests
982009-12-18 LTRIM stress testing test added
992009-12-18 LTRIM now returns +OK against non existing keys. More tests in test-redis.tcl
1002009-12-18 added sdstoupper() declaration in sds.h
1012009-12-18 Fixed sds.c bug #124
1022009-12-16 LZF compression re-enabled by default, but with INIT_HTAB set to 0 to avoid the very costly memset initialization. Note that with this option set valgrind will output some false positive about lzf_c.c
1032009-12-16 lzf compression switched off by default now, with config file option to enable it in redis.conf
1042009-12-16 Regression for epoll bug in redis-test.tcl, version is now 1.1.93
1052009-12-16 Fixed a lame epoll issue
1062009-12-15 html doc updated
1072009-12-15 version is now 1.1.92
1082009-12-15 Two important fixes to append only file: zero length values and expires. A pretty neat new test to check consistency of randomly build datasets against snapshotting and AOF.
1092009-12-15 debug loadaof implemented in order to add more consistency tests in test-redis.tcl
1102009-12-15 Added a new test able to stress a lot the snapshotting engine
1112009-12-15 Unified handling of empty queries with normal queries.
1122009-12-15 Fixed some subtle bug in the command processing code almost impossible to spot in the real world, thanks to gcov
1132009-12-15 Regression test for SINTERSTORE added
1142009-12-15 Fixed issue #121
1152009-12-14 a few more tests and ability to run a specific test in test-redis.tcl
1162009-12-13 Changed the reply of BGSAVE and BGREWRITEAOF from +OK to a more meaningful message that makes the user aware of an operation that just started and is not yet finished.
1172009-12-13 Set the master->slave logical client as authenticated on creation, so that if the slave requires a password replication works anyway
1182009-12-13 TODO update
1192009-12-12 bgrewriteaof_in_progress added to INFO
1202009-12-12 TODO list modified. What's planned for 1.4 is now written in the stone ;)
1212009-12-12 better handling of non blocking connect on redis-benchmark: EPIPE on read does not print an error message now
1222009-12-11 some change to redis-sha1.rb utility to make it more robust against non-meaningful changes in the dataset
1232009-12-10 redis-sha1.rb utility updated
1242009-12-10 a bit more verbose -ERR wrong number o arguments error, now gives info about the command name causing the error
1252009-12-10 TODO change and minor SETNX optimization
1262009-12-06 in rdbLoadDoubleValue now the buffer is nul terminated correctly. Thanks valgrind.
1272009-12-06 printf format warnings fixed by casting
1282009-12-06 Regression tests for SETNX and MSETNX bugs added
1292009-12-06 SETNX and MSETNX now respect the delete-on-write operation of EXPIREing keys
1302009-12-06 Fixed daemonization when using kqueue/kevent. Now the server initialization is performed *after* the daemonization
1312009-12-05 more HTML doc changes
1322009-12-05 HTML doc update
1332009-12-05 a few redis-cli format specified fixed
1342009-12-05 use __attribute__ format in sdscatprintf() when the compiler is GCC. Fixed format bugs resulting from the new warnings.
1352009-12-01 TODO update
1362009-12-01 compilation problem on 64bit mac os x 10.5 possibly fixed
1372009-12-01 virtual memory design doc typos
1382009-12-01 design documents added to the project
1392009-11-30 Fixed issued #85 (getDecodedObject: Assertion 1 != 1 failed. While sorting a set), added a smarter assert() function to dump the stacktrace, provided a macro to initalize Redis objects on the stack to avoid this kind of bugs.
1402009-11-30 fixed a subtle bug in redis-cli not having visible effects
1412009-11-29 TODO updated
1422009-11-29 Version chagned to 1.100, also known as the first first 2.0 beta version
1432009-11-29 more tests in test-redis.tcl, some minor fix
1442009-11-29 SORT support for sorted sets
1452009-11-28 Implemented LIMIT option in ZRANGEBYSCORE. We now enter feature-freeze
1462009-11-28 Changelog updated
1472009-11-28 html doc updated
1482009-11-28 enable kqueue/kevent only for Mac OS X 10.6.x as it seems that 10.5.x has a broken implementation of this syscalls.
1492009-11-28 TODO updated
1502009-11-28 ZRANGEBYSCORE fuzzy test
1512009-11-28 ZRANGEBYSCORE memory leak fixed, ZRANGEBYSCORE initial test added
1522009-11-28 INFO refactored. Stack trace on memory corruption now dumps the same information as the INFO command
1532009-11-28 ifdefs added to use kevent on Free Open and Net BSD as well. INFO and ae.c modified in order to report the multiplexing API in use
1542009-11-28 Enabled object encoding for multiple keys in MSET. Added a test for memory leaks in test-redis.tcl when running on Mac OS X
1552009-11-28 Merge branch 'kqueue' of git://github.com/mallipeddi/redis
1562009-11-28 Changes to TODO list, commented a function in redis.c
1572009-11-28 Added support for kqueue.
1582009-11-27 TODO updated
1592009-11-26 zero length bulk data reading fixed in loadAppendOnlyFile()
1602009-11-26 append only file fixes
1612009-11-26 log rebuilding, random refactoring, work in progress please wait for an OK commit before to use this version
1622009-11-24 DEBUG RELOAD implemented, and test-redis.tcl modified to use it to check for persistence consistency.
1632009-11-24 Redis version set to 1.07
1642009-11-24 sorted sets saving fixed
1652009-11-24 minor TODO change
1662009-11-24 minor fix to avoid a false valgrind warning.
1672009-11-23 epoll support enabled by default for Linux builds
1682009-11-23 epoll module for ae.c implemented. Some more testing needed
1692009-11-23 commented the HAVE_EPOLL test in config.h to allow compilation under Linux now that the epoll module is still missing
1702009-11-23 ae_select module added
1712009-11-23 ae.c now supports multiple polling API modules, even if only ae_select.c is implemented currently. Also adding and removing an event is now O(1).
1722009-11-23 ae.c initial refactoring for epoll implementation
1732009-11-21 version incremented up to 1.06
1742009-11-21 TODO aesthetic changes
1752009-11-21 TODO updated with plans up to 1.5
1762009-11-21 SRANDMEMBER test
1772009-11-21 Fixed a SORT memory leak that should never happen in practice
1782009-11-21 SORT GET # implemented, with a test
1792009-11-21 EXPIREAT test
1802009-11-20 EXPIRE tests
1812009-11-20 more RPOPLPUSH tests
1822009-11-20 RPOPLPUSH tests added
1832009-11-20 ZINCRBY return value fixed
1842009-11-20 ZINCRSCOREBY => ZINCRBY
1852009-11-19 ZINCRSCOREBY implemented
1862009-11-19 writev() finally uncommented again
1872009-11-19 redis-benchmark hopefully last bug with multi bulk reply fixed
1882009-11-19 debug mode in redis-bench
1892009-11-19 Use writev(2) if glue output buffers is disabled
1902009-11-19 benchmark.c fixes
1912009-11-18 more experiments with long replies, glue output buffer, and writev.
1922009-11-18 benchmarking with different number of LRANGE elements. Ability to change the glue output buffer limit by #define
1932009-11-18 more writev tests/work
1942009-11-18 redis-benchmark multi bulk reply support hopefully fixed
1952009-11-17 support for writev implemented but currently ifdef-ed in order to understan why I can't see the improvements expected. Btw code provided by Stefano Barbato
1962009-11-17 multi-bulk reply support for redis-bench, and as a result LRANGE is not tested, providing some number for the tuning of multi-bulk requests performances server-side
1972009-11-12 Solaris fix thanks to Alan Harder
1982009-11-12 Merge git://github.com/ianxm/redis
1992009-11-12 ZSCORE fixed, now returns NULL on missing key or missing element
2002009-11-12 Redis test will not fail the SAVE test even if a background save is in progress
2012009-11-12 LPOPPUSH renamed into RPOPLPUSH
2022009-11-11 can select db num
2032009-11-11 Workaround for test-redis.tcl and Tcl 8.4.x about ZSCORE test
2042009-11-11 Removed a long time warning compiling with recent GCC on Linux
2052009-11-11 TODO updated
2062009-11-11 LPUSHPOP first implementation
2072009-11-10 Tcl script, make target, and redis.c changes to build the static symbol table automagically
2082009-11-10 Implemented a much better lazy expiring algorithm for EXPIRE
2092009-11-10 Fixed issue 92 in redis: redis-cli (nil) return value lacks CR/LF
2102009-11-10 Minor TODO change with new expiring algorithm description. New expiring algorithm moved since it'll go in 1.1
2112009-11-04 redis-test is now a better Redis citizen, testing everything against DB 9 and 10 and only if this DBs are empty.
2122009-11-04 fixed a refcounting bug with SORT ... STORE leading to random crashes
2132009-11-04 masterauth option merged, thanks to Anthony Lauzon
2142009-11-03 ZSets double to string serialization fixed
2152009-11-03 client-libraries directory readded
2162009-11-03 redis.tcl put at toplevel since it's uesd for the test-redis.tcl script
2172009-11-03 client libs removed from Redis git
2182009-11-03 redis-cli now accepts a -r (repeat) switch. Still there is a memory leaks to fix
2192009-11-01 TODO updated again
2202009-11-01 TODO updated
2212009-11-01 redis-cli now makes clear when the returned string is an integer
2222009-11-01 SORT STORE option
2232009-11-01 now Redis prints DB stats just after the startup without to wait a second for the first report
2242009-11-01 another fix for append only mode, now read-only operations are not appended
2252009-11-01 appendfsync parsing in config file fixed. If you benchmarked Redis against different appendfsync options is time to try again ;)
2262009-11-01 append only file loading fixed
2272009-11-01 first version of append only file loading -- STILL BROKEN don't use it
2282009-10-31 Fixed Issue 83:Using TYPE on a zset results in a malformed response from the Redis server
2292009-10-31 Fixed compilation on Linux
2302009-10-30 append only mode is now able to translate EXPIRE into EXPIREAT transparently
2312009-10-30 appendfsync is now set to NO by default
2322009-10-30 support for appendonly mode no, always, everysec
2332009-10-30 first fix for append only mode
2342009-10-30 Initial implementation of append-only mode. Loading still not implemented.
2352009-10-30 EXPIRE behaviour changed a bit, a negative TTL or an EXPIREAT with unix time in the past will now delete the key. It seems saner to me than doing nothing.
2362009-10-30 EXPIREAT implemented, will be useful for the append-only mode
2372009-10-29 Fixed Issue 74 (ERR just returned on invalid password), now the error message is -ERR invalid password.
2382009-10-29 Fixed issue 72 (SLAVEOF shutdowns redis-server on malformed reply)
2392009-10-29 Fixed issue 77 (Incorrect time in log files) thanks to youwantalex
2402009-10-29 Fixed Issue 76 (redis-server crashes when it can't connect to MASTER and client connects to SLAVE)
2412009-10-29 ZREMRANGEBYSCORE implemented. Remove a range of elements with score between min and max
2422009-10-28 TODO changes and mostly theoretical minor skiplist change
2432009-10-28 ZLEN renamed ZCARD for consistency with SCARD
2442009-10-27 TODO reworked to reflect the real roadmap
2452009-10-27 Fix for 'make 32bit'
2462009-10-27 a fix for the solaris fix itself ;)
2472009-10-27 More Solaris fixes
2482009-10-27 A lot of ZSETs tests implemented, and a bug fixed thanks to this new tests
2492009-10-27 zmalloc Solaris fixes thanks to Alan Harder
2502009-10-27 ZSCORE implemented
2512009-10-26 fix for ZRANGEBYSCORE
2522009-10-26 ZRANGEBYSCORE implemented. Redis got range queries!
2532009-10-26 A trivial change makes the new implementation O(log(N)) instead of O(log(N))+O(M) when there are M repeated scores!
2542009-10-26 ZSET now saved on disk like any other type
2552009-10-26 double serialization routines implemented
2562009-10-26 ZSETs random fixes. Now the implementation appears to be pretty stable
2572009-10-26 another leak fixed. Can't find more for now, but still a bug in ZSETs to fix
2582009-10-26 ZSETs memory leak #1 solved, another one missing
2592009-10-26 Fix for skiplists backward link
2602009-10-26 Merged Solaris patches provided by Alan Harder
2612009-10-26 backward support to skiplists for ZREVRANGE, still broken, committing since I've to merge the Solaris patches
2622009-10-26 TODO updated
2632009-10-26 ZREM implemented
2642009-10-24 fix for ZADD in score update mode
2652009-10-24 some work on ZADD against existing element (score update), still broken...
2662009-10-23 zrange now starts to work. zadd still does not support update and will crash or leak or b000mmmmm
2672009-10-23 zrange initial hack (not working for now)
2682009-10-23 first skiplist fix, courtesy of valgrind
2692009-10-23 zset symbols added to stack trace code. ZSets will simply crash at the moment
2702009-10-23 more work on ZSETs and a new make target called 32bit to build i386 binaries on mac os x leopard
2712009-10-23 initial skiplist implementation. Most memory checks removed and zmalloc() modified to fail with an error message and abort. Anyway Redis is not designed to recover from out of memory conditions.
2722009-10-23 Fixed compilation in mac os x snow leopard when compiling a 32 bit binary.
2732009-10-22 version incremented to 1.050 to distinguish from 1.001 stable and next stable versions with minor fixes
2742009-10-21 TODO updated
2752009-10-21 SRANDMEMBER added
2762009-10-20 Imporant bug leading to data corruption fixed (NOT affecting stable distribution), Tcl client lib MSET/MSETNX implementation fixed, Added new tests for MSET and MSETNX in test-redis.tcl
2772009-10-17 added multi-bulk protocol support to redis-cli and support for MSET and MSETNX
2782009-10-17 MSET fixed, was not able to replace keys already set for a stupid bug
2792009-10-16 some dead code removed
2802009-10-16 multi bulk input protocol fixed
2812009-10-16 MSET and MSETNX commands implemented
2822009-10-07 undoed all the sds hacking that lead just to random bugs and no memory saving ;)
2832009-10-07 initial multi-bulk query protocol, this will allow MSET and other interesting features.
2842009-10-03 benchmark now outputs the right command line to shorten the TIME_WAIT interval on Mac OS X when keep alive is set
2852009-10-02 Issue 69 fixed. Object integer encoding now works with replication and MONITORing again.
2862009-09-18 LREM fixed, used to crash since the new object integer encoding is on the stage
2872009-09-17 maxmemory didn't worked in 64 systems for values > 4GB since it used to be an unsigned int. Fixed
2882009-09-10 incremented version number to 1.001, AKA Redis edge is no longer stable...
2892009-09-10 in-memory specialized object encoding (for now 32 signed integers only)
2902009-09-03 Latest doc changes for 1.0
2912009-09-03 Redis 1.0.0 release
2922009-09-02 Redis version pushed to 1.0
2932009-09-02 Ruby client lib updated to the latest git version
2942009-09-02 update-scala-client script added
2952009-09-02 Scala client added thanks to Alejanro Crosa
2962009-09-02 QuickStart added
2972009-09-01 Fixed crash with only space and newline as command (issue 61), thanks to a guy having as nick "fixxxerrr"
2982009-08-11 TODO list modified
2992009-07-24 more snow leopard related fixes (for 32bit systems)
3002009-07-24 fixed compilation with Snow Leopard, thanks to Lon Baker for providing SSH access to Snow Leopard box
3012009-07-22 Fixed NetBSD compile problems
3022009-07-17 now the size of the shared pool can be really modified via config, also the number of objects in the sharing pool is logged when the log level is set to debug. Thanks to Aman Gupta
3032009-07-05 added utils/redis-copy.rb, a script that is able to copy data from one Redis server to another one on the fly.
3042009-07-04 Applied three different patches thanks to Chris Lamb, one to fix compilation and get the IP register value on Linux IA64 and other systems. One in order to log the overcommit problem on the logs instead of the standard output when Redis is demonized. The latest in order to suggest a more consistent way in order to switch to 1 the memory overcommit Linux feature.
3052009-07-03 bugfix: EXPIRE now propagates to the Slave.
3062009-06-16 Redis version modified to 0.900
3072009-06-16 update-ruby-client script already points to ezmobius repo
3082009-06-16 client libraries updated
3092009-06-16 Redis release candidate 1
3102009-06-16 Better handling of background saving process killed or crashed
3112009-06-14 number of keys info in INFO command thanks to Diego Rosario Brogna
3122009-06-14 SPOP documented
3132009-06-14 Clojure library thanks to Ragnar Dahlén
3142009-06-10 It is now possible to specify - as config file name to read it from stdin
3152009-06-10 sync with jodosha redis-rb
3162009-06-10 Redis-rb sync
3172009-06-10 max inline request raised again to 1024*1024*256 bytes
3182009-06-10 max bytes in an inline command raised to 1024*1024 bytes, in order to allow for very large MGETs and still protect from client crashes
3192009-06-08 SPOP implemented. Hash table resizing for Sets and Expires too. Changed the resize policy to play better with RANDOMKEY and SPOP.
3202009-06-07 some minor changes to the backtrace code
3212009-06-07 enable backtrace capabilities only for Linux and MacOSX
3222009-06-07 Dump a backtrace on sigsegv/sigbus, original coded thanks to Diego Rosario Brogna, modified in order to work on different OSes and to enhance reliability
3232009-06-06 Merge git://github.com/dierbro/redis
3242009-06-06 add more output
3252009-06-06 store static function pointer for a useful stack trace
3262009-06-06 TODO updated
3272009-06-06 Makefile dependencies updated
3282009-06-05 Avoid a busy loop while sending very large replies against very fast links, this allows to be more responsive with other clients even under a KEY * against the loopback interface
3292009-06-05 Kill the background saving process before performing SHUTDOWN to avoid races
3302009-06-05 LREM now returns :0 for non existing keys
3312009-06-05 - put some order in code - better output
3322009-06-05 added config.h for #ifdef business isolation, added fstat64 for Mac OS X
3332009-06-04 remove die() :-)
3342009-06-04 add compile options to debug
3352009-06-04 initial commit print stack trace
3362009-06-04 initial commit print stack trace
3372009-06-04 macosx specific zmalloc.c, uses malloc_size function in order to avoid to waste memory and time to put an additional header
3382009-06-04 DEBUG OBJECT implemented
3392009-06-04 backtrace support removed: unreliable stack trace :(
3402009-06-04 initial backtrace dumping on sigsegv/sigbus + debug command
3412009-06-03 Python lib updated
3422009-06-03 shareobjectspoolsize implemented in reds.conf, in order to control the pool size when object sharing is on
3432009-05-30 Erlang client updated
3442009-05-30 Python client library updated
3452009-05-29 Redis-rb minor bool convertion fix
3462009-05-29 ruby library client is not Redis-rb merged with RubyRedis "engine" by Brian McKinney
3472009-05-28 __P completely removed from pqsort.c/h
3482009-05-28 another minor fix for Solaris boxes
3492009-05-28 minor fix for Solaris boxes
3502009-05-28 minor fix for Solaris boxes
3512009-05-27 maxmemory implemented
3522009-05-26 Redis git version modified to 0.101 in order to distinguish that from the latest tar.gz via INFO ;)
3532009-05-26 Redis 0.100 released
3542009-05-26 client libraries synched in git
3552009-05-26 ignore gcc warning about write() return code not checked. It is esplicitily this way since the "max number of clients reached" is a best-effort error
3562009-05-26 max bytes of a received command enlarged from 1k to 16k
3572009-05-26 RubyRedis: set TCP_NODELAY TCP socket option to to disable the neagle algorithm. Makes a huge difference under some OS, notably Linux
3582009-05-25 maxclients implemented, see redis.conf for details
3592009-05-25 INFO command now reports replication info
3602009-05-25 minor fix to RubyRedis about bulk commands sent without arguments
3612009-05-24 Warns if using the default config
3622009-05-24 Issue with redis-client used in scripts solved, now to check if the latest argument must come from standard input we do not check that stdin is or not a tty but the command arity
3632009-05-23 RubyRedis: now sets are returned as arrays again, and not as Set objects
3642009-05-23 SLAVEOF command documented
3652009-05-23 SLAVEOF command implemented for replication remote control
3662009-05-22 Fix: no connection timeout for the master!
3672009-05-22 replication slave timeout when receiving the initial bulk data set to 3600 seconds, now that replication is non-blocking the server must save the db before to start the async replication and this can take a lot of time with huge datasets
3682009-05-22 README tutorial now reflects the new proto
3692009-05-22 critical bug about glueoutputbuffers=yes fixed. Under load and with pipelining and clients disconnecting on the middle of the chat with the server, Redis could block. Now it's ok
3702009-05-22 TTL command doc added
3712009-05-22 TTL command implemented
3722009-05-22 S*STORE now return the cardinality of the resulting set
3732009-05-22 rubyredis more compatible with Redis-rb
3742009-05-21 minor indentation fix
3752009-05-21 timeout support and Redis-rb compatibility aliases implemented in RubyRedis
3762009-05-21 RubyRedis info postprocessor rewritten in a more functional way
3772009-05-21 dead code removed from RubyRedis
3782009-05-21 command postprocessing implemented into RubyRedis
3792009-05-20 Automagically reconnection of RubyRedis
3802009-05-20 RubyRedis: Array alike operators implemented
3812009-05-20 random testing code removed
3822009-05-20 RubyRedis DB selection forced at object creation
3832009-05-20 Initial version of an alternative Ruby client added
3842009-05-20 SDIFF / SDIFFSTORE added to doc
3852009-05-20 Aman Gupta changes merged
3862009-05-20 Merge git://github.com/tmm1/redis
3872009-05-19 Allow timeout=0 config to disable client timeouts
3882009-05-19 Partial qsort implemented in SORT command, only when both BY and LIMIT is used. minor fix for a warning compiling under Linux.
3892009-05-19 psort.c/h added. This is a partial qsort implementation that Redis will use when SORT+LIMIT is requested
3902009-05-17 Fix SINTER/UNIONSTORE to allow for &=/|= style operations (i.e. SINTERSTORE set1 set1 set2)
3912009-05-17 Optimize SDIFF to return as soon as the result set is empty
3922009-05-17 SDIFF/SDIFFSTORE implemnted unifying it with the implementation of SUNION/SUNIONSTORE
3932009-05-11 timestamp in log lines
3942009-05-11 Python client updated pushing from Ludo's repository
3952009-05-11 disconnect when we cannot read from the socket
3962009-05-11 benchmark utility now supports random keys
3972009-05-10 minor doc changes
3982009-05-09 added tests for vararg DEL
3992009-05-09 DEL is now a vararg, IMPORTANT: memory leak fixed in loading DB code
4002009-05-09 doc changes
4012009-05-09 CPP client added thanks to Brian Hammond
4022009-05-06 Infinite number of arguments for MGET and all the other commands
4032009-05-04 Warns if /proc/sys/vm/overcommit_memory is set to 0 on Linux. Also make sure to don't resize the hash tables while the child process is saving in order to avoid copy-on-write of memory pages
4042009-04-30 zmalloc fix, return NULL or real malloc failure
4052009-04-30 more fixes for dict.c and the 150 million keys limit
4062009-04-30 dict.c modified to be able to handle more than 150,000,000 keys
4072009-04-29 fuzz stresser implemented in redis-test
4082009-04-29 fixed for HT resize check 32bits overflow
4092009-04-29 Check for fork() failure in background saving
4102009-04-29 fix for the LZF off-by-one bug added
4112009-04-28 print bytes used at exit on SHUTDOWN
4122009-04-28 SMOVE test added
4132009-04-28 SMOVE command implemented
4142009-04-28 less CPU usage in command parsing, case insensitive config directives
4152009-04-28 GETSET command doc added
4162009-04-28 GETSET tests
4172009-04-28 GETSET implemented
4182009-04-27 ability to specify a different file name for the DB
4192009-04-27 log file parsing code improved a bit
4202009-04-27 bgsave_in_progress field in INFO output
4212009-04-27 INCRBY/DECRBY now support 64bit increments, with tests
4222009-04-23 RANDOMKEY regression test added
4232009-04-23 dictGetRandomKey bug fixed, RANDOMKEY will not block the server anymore
4242009-04-22 FLUSHALL/FLUSHDB no longer sync on disk. Just increment the dirty counter by the number of elements removed, that will probably trigger a background saving operation
4252009-04-21 forgot to comment testing code in PHP lib. Now it is ok
4262009-04-21 PHP client ported to PHP5 and fixed
4272009-04-21 doc update
4282009-04-20 Non blocking replication (finally!). C-side linked lists API improved.
4292009-04-19 SUNION, SUNIONSTORE, Initial work on non blocking replication
4302009-04-10 Redis 0.091 released
4312009-04-10 SINTER/SINTERSTORE/SLEMENTS fix: misisng keys are now not errors, but just like empty sets
4322009-04-09 doc changes
4332009-04-08 TODO changes, minor change to default redis.conf
4342009-04-08 html doc updated
4352009-04-08 library clients update scripts
4362009-04-08 Ruby client updated
4372009-04-08 Lua client updated
4382009-04-08 Changelog updated
4392009-04-08 Merge git://github.com/ludoo/redis
4402009-04-08 add expire command to the php lib
4412009-04-08 fix decode bug, add flush and info commands
4422009-04-07 Rearrange redisObject struct to reduce memory usage in 64bit environments (as recommended http://groups.google.com/group/redis-db/msg/68f5a743f8f4e287)
4432009-04-07 ruby19 compat: use each_line on string
4442009-04-07 64bit fixes for usedmemory
4452009-04-08 RANDOMKEY issue 26 fixed, generic test + regression added
4462009-04-06 Don't accept SAVE if BGSAVE is in progress
4472009-04-06 add expire command to the python lib
4482009-04-03 persistent EXPIRE
4492009-04-03 dirty increment was missing in two points. TODO updated
4502009-04-02 LZF configured to initalize the HT in order to be determinsitic and play well with valgrind
4512009-04-02 fix select test
4522009-04-02 fix trailing cr+nl in values
4532009-04-02 compression/decompression of large values on disk now working
4542009-04-02 disable LZF compression since it's not able to load the DB for now, the load part is missing
4552009-04-02 new LZF files added
4562009-04-02 Fixed issue 23 about AUTH
4572009-04-02 Issue 22 fixed
4582009-04-01 non-lazy expired keys purging implemented
4592009-04-01 fastlz dependence removed
4602009-04-01 Initial implementation of EXPIRE
4612009-03-30 TODO updated
4622009-03-30 changelog added
4632009-03-28 redis-sha1 utility added
4642009-03-28 Integer encoding implemented in dump file. Doc updated
4652009-03-27 feature macros defined to play well with C99
4662009-03-27 feature macros defined to play well with C99
4672009-03-27 now Redis is C99-ok
4682009-03-27 IMPORTANT FIX: new dump format implementation was broken. Now it's ok but tests for the 32-bit case values are needed
4692009-03-27 ANSI-C compatibility changes
4702009-03-27 Ruby client library updated. Important changes in this new version!
4712009-03-26 Lua client added thanks to Daniele Alessandri
4722009-03-26 Lua client added thanks to Daniele Alessandri
4732009-03-26 AUTH merged from Brian Hammond fork, reworked a bit to fix minor problems
4742009-03-25 Adds AUTH command.
4752009-03-25 Nasty bug of the new DB format fixed, objects sharing implemented
4762009-03-25 doc update
4772009-03-25 Erlang client synched with Valentiono's repo
4782009-03-25 New file dump format, perl client library added
4792009-03-25 New protocol fix for LREM
4802009-03-24 two typos fixed
4812009-03-24 Now the Redis test uses the proper Tcl client library
4822009-03-24 Tcl client library
4832009-03-24 redis-benchmark sync with the new protocol
4842009-03-24 git mess :)
4852009-03-24 sync python client to the new protocol
4862009-03-24 protocol fix in SORT reply with null elements
4872009-03-24 protocol doc changed
4882009-03-24 Server replies now in the new format, test-redis.tcl and redis-cli modified accordingly
4892009-03-24 Python client library updated, thanks to Ludo!
4902009-03-24 random tested mode for test-redis.tcl, minor other stuff, version switched to 0.8
4912009-03-23 Now MONITOR/SYNC cannot be issued multiple times
4922009-03-23 MONITOR command implemented.
4932009-03-23 lucsky changes imported. pid file path can now be configured, redis-cli fixes
4942009-03-23 Merge git://github.com/lucsky/redis
4952009-03-23 another missing free->zfree replacement fixed. Thanks to Ludo
4962009-03-23 Fixed redis-cli readLine loop to correctly handle EOF.
4972009-03-23 Display the port on server startup.
4982009-03-23 Allow to specify the pid file from the config file.
4992009-03-23 Added gitignore file.
5002009-03-22 MGET tests added
5012009-03-22 doc changes
5022009-03-22 added doc for MGET
5032009-03-22 redis-cli now checks the arity of vararg commnads
5042009-03-22 INFO fixed, MGET implemented, redis-cli implements INFO/MGET
5052009-03-22 first commit