]> git.saurik.com Git - redis.git/blame - Changelog
Does not allow commands other than Pub/Sub commands when there is at least one pattern
[redis.git] / Changelog
CommitLineData
e6cca5db 12010-04-12 Now all the commands returning a multi bulk reply against non existing keys will return an empty multi bulk, not a nil one
22010-04-12 implemented HMSET
32010-04-12 Sharing of small integer objects: may save a lot of memory with datasets having many of this
42010-04-10 dict.c fixed to play well with enabling/disabling of the hash table
52010-04-09 removed a no longer true assert in the VM code
62010-04-09 shareobjects feautres killed - no gains most of the time, but VM complexities
72010-04-09 use directly the real key object in VM I/O jobs to match by pointer, and to handle different keys with the same name living in different DBs, but being at the same moment in the IO job queues
82010-04-08 last change reverted as it was unstable... more testing needed
92010-04-08 Prevent hash table resize while there are active child processes in order to play well with copy on write
102010-04-08 Merge branch 'issue_218' of git://github.com/pietern/redis
112010-04-08 -1 not needed...
122010-04-08 Skiplist theoretical fix
132010-04-07 Now when a child is terminated by a signal, the signal number is logged as well
142010-04-07 First version of evented Redis Tcl client, that will be used for BLPOP and Pub/Sub tests
152010-04-05 use long long reply type for HINCRBY
162010-04-05 last argument is never encoded for HINCRBY
172010-04-02 Now PUBLISH commands are replicated to slaves
182010-04-01 use the right object when cleaning up after zunion/zinter (fixes issue 216)
192010-04-01 Merge branch 'zipmap' of git://github.com/pietern/redis
202010-04-01 reduce code complexity because zipmapLen now is O(1)
212010-04-01 update the zipmap entry in-place instead of appending it
222010-04-01 updated zipmap documentation to match the implementation
232010-04-01 allow 4 free trailing bytes for each value
242010-04-01 Pub/Sub pattern matching capabilities
252010-04-01 use function to determine length of a single entry
262010-03-31 Deny EXEC under out of memory
958cd5f3 272010-03-29 No timeouts nor other commands for clients in a Pub/Sub context
282010-03-29 free hash table entries about no longer active classes, so that PUBSUB can be abused with millions of different classes
292010-03-29 Fixed a refcount stuff leading to PUBSUB crashes
302010-03-29 fmacros added to linenoise, avoiding all the nice warnings...
312010-03-29 First pubsub fix
322010-03-29 PUBSUB implemented
332010-03-29 Redis version is now 1.3.8
e6cca5db 342010-03-28 removed references in code to ZIPMAP_EMPTY
352010-03-28 use first byte of zipmap to store length
362010-03-28 implemented strategy that doesn't use free blocks in zipmaps
958cd5f3 372010-03-26 Merge branch 'hincrby' of git://github.com/pietern/redis
382010-03-26 removed unnecessary refcount increase that caused the HINCRBY memleak
392010-03-26 implements HINCRBY and tests (todo: find and fix small memleak)
402010-03-26 Removed a useless if spotted by Pieter Noordhuis
412010-03-26 Fixed a critical replication bug: binary values issued with the multi bulk protocol caused a protocol desync with slaves.
422010-03-24 Fixed the reply about denied write commands under maxmemory reached condition: now the error will no longer lead to a client-server protocol desync
432010-03-24 CONFIG command implemened -- just a start but already useful
442010-03-24 redis-cli prompt is now redis>
452010-03-23 with --help states that you can use - as config file name to feed config via stdin
462010-03-23 New INFO field: expired_keys
472010-03-23 the Cron timer function is now called 10 times per second instead of 1 time per second to make Redis more responsibe to BGSAVE and to delete expired keys more incrementally
482010-03-23 Use linenoise for line editing on redis-cli.
492010-03-23 Fix authentication for redis-cli on non-interactive mode.
502010-03-23 key deletion on empty value fix + some refactoring
512010-03-23 Empty value trigger key removal in all the operations
522010-03-22 Merged gnrfan patches fixing issues 191, 193, 194
532010-03-22 Merge branch 'issue_193' of git://github.com/gnrfan/redis
542010-03-22 Merge branch 'issue_191' of git://github.com/gnrfan/redis
552010-03-22 Redis master version is now 1.3.7
a9c723ea 562010-03-19 support for include directive in config parser
572010-03-19 Removed a stupid overriding of config values due to a wrong cut&paste
582010-03-19 VM hash type swappability implemented. Handling of failed pthread_create() call.
958cd5f3 592010-03-19 Solving issue #191 on Google Code: -v and --version should print the version of Redis
602010-03-19 Solves issue #194 on Google Code: --help parameter to redis-srver prints the usage message
612010-03-19 Fixing issue 193
a9c723ea 622010-03-18 increment server.dirty on HDEL
632010-03-18 Redis 1.3.6
642010-03-18 test-redis.tcl dataset digest function Hash support
652010-03-18 zipmap fix for large values
662010-03-18 Optimization fixed and re-activated
db5946fc 672010-03-18 reverted an optimization that makes Redis not stable
682010-03-18 Fixed redis-cli auth code
692010-03-17 HDEL fix, an optimization for comparison of objects in hash table lookups when they are integer encoding
702010-03-17 Version is now 1.3.5
712010-03-17 Merged Pietern patch for VM key args helper function. Fixed an obvious bug in the redis-cli passwd auth stuff
722010-03-17 Merge branch 'aggregates' of git://github.com/pietern/redis
732010-03-17 Added Authentication to redis-cli.c using -a switch Update usage fixed Makefile to delete redis-check-dump during make clean
742010-03-17 HEXISTS and tests implemented
752010-03-17 More hash tests
762010-03-17 better HSET test
772010-03-17 Fixed a bug in HSET, a memory leak, and a theoretical bug in dict.c
782010-03-17 More Hash tests
792010-03-13 added preloading keys from VM when using ZINTER or ZUNION
802010-03-13 added explicit AGGREGATE [SUM|MIN|MAX] option to ZUNION/ZINTER
812010-03-16 HGET fix for integer encoded field against zipmap encoded hash
822010-03-16 zrevrank support in redis-cli
832010-03-16 HKEYS / HVALS / HGETALL
842010-03-16 Solved a memory leak with Hashes
852010-03-15 pretty big refactoring
862010-03-15 An interesting refactoring + more expressive internal API
92b27fe9 872010-03-15 Fixed the same problem in ZREVRANK
882010-03-15 Fixed a ZRANK bug
892010-03-15 zipmap to hash conversion in HSET
bae2c7ec 902010-03-14 max zipmap entries and max zipmap value parameters added into INFO output
912010-03-14 HDEL and some improvement in DEBUG OBJECT command
922010-03-14 Append only file support for hashes
932010-03-13 utility to check rdb files for unprocessable opcodes
942010-03-12 A minor fix and a few debug messages removed
5de9ad7c 952010-03-12 Applied the replication bug patch provided by Jeremy Zawodny, removing temp file collision after the slave got the dump.rdb file in the SYNC stage
8c5abee8 962010-03-11 Fix for HGET against non Hash type, debug messages used to understand a bit better a corrupted rdb file
972010-03-09 fix: use zmalloc instead of malloc
982010-03-09 Merged zsetops branch from Pietern
992010-03-09 Merged ZREMBYRANK from Pietern
1002010-03-09 Merged ZREVRANK from Pietern
1012010-03-09 use a struct to store both a dict and its weight for ZUNION and ZINTER, so qsort can be applied
1022010-03-09 Hash auto conversion from zipmap to hash table, type fixed for hashes, hash loading from disk
1032010-03-09 replaced ZMERGE by ZUNION and ZINTER. note: key preloading by the VM does not yet work
1042010-03-08 Hashes saving / fixes
1052010-03-08 use ZMERGE as starting point
1062010-03-07 HSET fixes, now the new pointer is stored back in the object pointer field
1072010-03-07 added ZREVRANK
1082010-03-06 Fix for replicaiton with over 2GB dump file initial SYNC stage
1092010-03-06 first implementation of HSET/HSET. More work needed
1102010-03-05 zipmaps functions to get, iterate, test for existence. Initial works for Hash data type
1112010-03-04 redis-benchmark now implements Set commands benchmarks
1122010-03-04 zipmap iteration code
1132010-03-04 moved code to delete a single node from a zset to a separate function
1142010-03-04 rename zslDeleteRange to zslDeleteRangeByScore (to differentiate between deleting using score or rank)
1152010-03-04 use 1-based rank across zsl*Rank functions consistently
1162010-03-04 implemented ZREMBYRANK
1172010-03-04 A fix for initialization of augmented skip lists
1182010-03-04 A fix for an invalid access when VM is disabled
1192010-03-04 Merge branch 'zsl-get-rank' of git://github.com/pietern/redis
1202010-03-04 redis-cli now runs in interactive mode if no command is provided
1212010-03-04 merged memory reduction patch
1222010-03-04 Now list push commands return the length of the new list, thanks to Gustavo Picon
1232010-03-04 first check if starting point is trivial (head or tail) before applying log(N) search
1242010-03-04 use rank to find starting point for ZRANGE and ZREVRANGE
1252010-03-04 lookup rank of a zset entry in a different function
1262010-03-04 SUBSTR fix for integer encoded vals
1272010-03-04 fix ZRANK (realize that rank is 1-based due to the skip list header)
1282010-03-03 initial implementation of SUBSTR
1292010-03-03 TODO updated
1302010-03-03 fpurge call removed from redis-cli
1312010-03-03 ZRANK stress tester
1322010-03-03 use less memory as element->span[0] will always be 1; any level 0 skip list is essentially a linked list
1332010-03-03 rank is very unlikely to overflow integer range
1342010-03-03 x->backward never equals zsl->header
1352010-03-03 initial implementation for augmented zsets and the zrank command
1362010-03-03 zipampDel() implemented
1372010-03-03 added quit and exit commands to redis-cli in order to quit the interactive mode
1382010-03-03 Merge remote branch 'djanowski/interactive'
1392010-03-02 Add support for MULTI/EXEC.
1402010-03-02 Remove trailing newline in interactive mode.
1412010-03-02 minor fix for a Linux warning
1422010-03-02 Add interactive mode to redis-cli.
1432010-03-02 Better to increment the version minor number when a VM bug is fixed... it will be simpler to understand what's going on when users will report problems with the INFO trace.
1442010-03-02 Fixed a subtle VM bug... was not flushing the buffer so the child process read truncated data
1452010-03-01 KEYS now returns a multi bulk reply
1462010-02-27 Add DISCARD command to discard queued MULTI commands.
1472010-03-01 Swappability bug due to a typo fixed thanks to code review by Felix Geisendörfer @felixge
1482010-02-28 minor fixes for zipmap.c
1492010-02-27 first zipmap fix of a long sequence in the days to come ;)
1502010-02-27 initial zipmap.c implementation
1512010-02-27 Bug #169 fixed (BLOP/BRPOP interrupted connections are not cleared from the queue)
5921aa36 1522010-02-22 Fixed 32bit make target to work on Linux out of the box
1532010-02-19 A problem with replication with multiple slaves connectiong to a single master fixed. It was due to a typo, and reported on github by the user micmac. Also the copyright year fixed from many files.
1542010-02-10 Saner VM defaults for redis.conf
1552010-02-09 VM now is able to block clients on swapped keys for all the commands
1562010-02-07 ZCOUNT and ZRANGEBYSCORE new tests
1572010-02-07 ZRANGEBYSCORE now supports open intervals, prefixing double values with a open paren. Added ZCOUNT that can count the elements inside an interval of scores, this supports open intervals too
1582010-02-07 WITHSCORES in ZRANGEBYSCORE thanks to Sam Hendley
1592010-02-06 Added "withscores" option to zrangebyscore command. Based on withscores support in zrange function, ugliest part was the argument parsing to handle using it with the limit option.
1602010-02-06 DEBUG OBJECT provide info about serialized object length even when VM is disabled
1612010-02-06 multi bulk requests in redis-benchmark, default fsync policy changed to everysec, added a prefix character for DEBUG logs
1622010-02-04 APPEND tests
1632010-02-04 APPEND command
1642010-02-02 Faster version of the function hashing possibly encoded objects, leading to a general speed gain when working with Sets of integers
1652010-02-02 faster Set loading time from .rdb file resizing the hash table to the right size before loading elements
1662010-02-02 Log time taken to load the DB at startup, in seconds
1672010-01-31 Fixed VM corruption due to child fclosing the VM file directly or indirectly calling exit(), now replaced with _exit() in all the sensible places. Masked a few signals from IO threads.
1682010-01-28 loading side of the threaded VM
1692010-01-26 TODO cahnges
1702010-01-23 Fixed memory human style memory reporting, removed server.usedmemory, now zmalloc_used_memory() is used always.
1712010-01-22 VM tuning thanks to redis-stat vmstat. Now it performs much better under high load
1722010-01-21 Changelog updated
eb684562 1732010-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
1742010-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...
1752010-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.
1762010-01-19 commercial tools stuff removed from the Redis makefile. cotools are now migrated into a different repos
1772010-01-19 removed a bug in the function to cancel an I/O job
1782010-01-17 static symbols update
1792010-01-16 removed support for REDIS_HELGRIND_FRIENDLY since Helgrind 3.5.0 is friendly enough even with many threads created and destroyed
1802010-01-15 now redis-cli understands -h
1812010-01-15 Create swap file only if not exists
1822010-01-15 I hate warnings
1832010-01-15 fixed a minor memory leak in configuration file parsing
1842010-01-15 minor fix
1852010-01-15 support for named VM swap file. Fixed a few important interaction issues between the background saving processes and IO threads
1862010-01-15 fix for the just added new test
1872010-01-15 useless debugging messages removed
1882010-01-15 new test added
1892010-01-15 thread safe zmalloc used memory counter
1902010-01-15 A define to make Redis more helgrind friendly
1912010-01-15 removed a few races from threaded VM
1922010-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.
1932010-01-14 Set the new threads stack size to a LZF friendly amount
1942010-01-13 access to already freed job structure fixed by statements reoredering
1952010-01-13 removed a useless debugging message
1962010-01-13 Wait zero active threads condition before to fork() for BGSAVE or BGREWRITEAOF
1972010-01-13 list API is now thread safe
1982010-01-13 minor TODO and debugging info changes
1992010-01-12 support for blocking VM in config file
2002010-01-12 more non blocking VM changes
2012010-01-12 fix for test #11
2022010-01-12 a few more stuff in INFO about VM. Test #11 changed a bit in order to be less lame
2032010-01-12 Added a define to configure how many completed IO jobs the handler should process at every call.
2042010-01-11 Fixed a bug in the IO Job canceling funtion
2052010-01-11 more steps towards a working non blocking VM
2062010-01-11 converted random printfs in debug logs
2072010-01-11 removed a bug introduced with non blocking VM
2082010-01-11 a few non blocking VM bugs fixed
2092010-01-11 More work on non-blocking VM. Should work in a few days
2102010-01-11 More threaded I/O VM work + Redis init script
2112010-01-10 more work on VM threaded I/O. Still nothing of usable
2122010-01-09 non-blocking VM data structures, just a start
2132010-01-08 used_memory_human added to INFO output. Human readable amount of memory used.
2142010-01-07 Now DEBUG OBJECT plays well with swapped out objects
2152010-01-07 fflush VM swap file after object swapping
2162010-01-07 added the fmacros to enable support for fseeko() lseeko() with 64bit off_t
2172010-01-07 VM now swaps objects out while loading datasets not fitting into vm-max-memory bytes of RAM
2182010-01-07 added process id information in INFO
2192010-01-06 vm-enabled set to no by default in redis.conf
2202010-01-06 a new default redis.conf
2212010-01-06 VM stats in INFO command
2222010-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.
2232010-01-05 fixed a bug in bgsave when VM is off but still it was testing for obj->storage field
2242010-01-05 converted a few calls to assert() => redisAssert() to print stack trace
2252010-01-05 BGREWRITEAOF now works with swapping on
2262010-01-05 A first fix for SET key overwrite
2272010-01-05 SAVE now works with VM
2282010-01-05 swapping algorithm a bit more aggressive under low memory
2292010-01-05 basic VM mostly working!
2302010-01-05 New object field (one of the unused bytes) to hold the type of the swapped out value object in key objects
2312010-01-05 VM internals bugfixes, set 1
2322010-01-05 load key from swap on key lookup
2332010-01-05 more object-level VM primitives
2342010-01-05 Redis objects swapping / loading
2352010-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
2362010-01-04 VM low level pages handling
2372010-01-04 vm swap file creation, and some basic configuration
2382010-01-04 version marked 1.3.2
2392010-01-04 saving code refactored a bit, added a function returning the number of bytes an object will use on disk
2402010-01-02 Now the PUSH side of RPOPLPUSH is able to unblock clients blocked on BLPOP
2412010-01-02 Version is now 1.3.1
2422010-01-02 New vararg BLPOP able to block against multiple keys
2432009-12-29 fixed a problem with BLPOP timeout of zero, now it blocks forever
2442009-12-29 BLPOP timeouts implemented
2452009-12-29 first working implementation of BLPOP and BRPOP, still everything is to test well
2462009-12-29 a few more fixes, still broken
2472009-12-29 First fix, still broken
2482009-12-29 minor fix for Linux 64 bit
2492009-12-29 not yet working BLPOP implementation
2502009-12-27 AOFSYNC removed, got a better idea...
2512009-12-27 AOFSYNC command implemented
2522009-12-27 Version changed to 1.3.0, welcome to the new unstable
2532009-12-27 Now MULTI returns +OK as well
2542009-12-27 MULTI/EXEC first implementation
2552009-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
2562009-12-23 html doc readded
2572009-12-23 ZRANGE WITHSCORES test added
2582009-12-23 version is now 1.1.94
2592009-12-23 Add the command name in the unknown command error message.
2602009-12-22 ZRANGE, ZREVRANGE now support WITHSCORES options
2612009-12-22 html docs update (ZINCRBY added)
2622009-12-18 TODO list update
2632009-12-18 the pipelining test was ran against DB 1 for error, now it runs on DB 9 like all the other tests
2642009-12-18 still more tests
2652009-12-18 SORT STORE test added
2662009-12-18 Now SORT returns an empty bulk reply if the key does not exist
2672009-12-18 modified a bit the ZREVRANGE test to cover a few lines of code more
2682009-12-18 SHUTDOWN now does the right thing when append only is on, that is, fsync instead to save the snapshot.
2692009-12-18 Added a missing server.dirty increment in a non critical place, added more tests
2702009-12-18 LTRIM stress testing test added
2712009-12-18 LTRIM now returns +OK against non existing keys. More tests in test-redis.tcl
2722009-12-18 added sdstoupper() declaration in sds.h
2732009-12-18 Fixed sds.c bug #124
2742009-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
2752009-12-16 lzf compression switched off by default now, with config file option to enable it in redis.conf
2762009-12-16 Regression for epoll bug in redis-test.tcl, version is now 1.1.93
483049a7 2772009-12-16 Fixed a lame epoll issue
2782009-12-15 html doc updated
2792009-12-15 version is now 1.1.92
2802009-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.
2812009-12-15 debug loadaof implemented in order to add more consistency tests in test-redis.tcl
2822009-12-15 Added a new test able to stress a lot the snapshotting engine
2832009-12-15 Unified handling of empty queries with normal queries.
2842009-12-15 Fixed some subtle bug in the command processing code almost impossible to spot in the real world, thanks to gcov
2852009-12-15 Regression test for SINTERSTORE added
2862009-12-15 Fixed issue #121
2872009-12-14 a few more tests and ability to run a specific test in test-redis.tcl
2882009-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.
2892009-12-13 Set the master->slave logical client as authenticated on creation, so that if the slave requires a password replication works anyway
2902009-12-13 TODO update
2912009-12-12 bgrewriteaof_in_progress added to INFO
2922009-12-12 TODO list modified. What's planned for 1.4 is now written in the stone ;)
2932009-12-12 better handling of non blocking connect on redis-benchmark: EPIPE on read does not print an error message now
2942009-12-11 some change to redis-sha1.rb utility to make it more robust against non-meaningful changes in the dataset
2952009-12-10 redis-sha1.rb utility updated
2962009-12-10 a bit more verbose -ERR wrong number o arguments error, now gives info about the command name causing the error
2972009-12-10 TODO change and minor SETNX optimization
2982009-12-06 in rdbLoadDoubleValue now the buffer is nul terminated correctly. Thanks valgrind.
2992009-12-06 printf format warnings fixed by casting
3002009-12-06 Regression tests for SETNX and MSETNX bugs added
3012009-12-06 SETNX and MSETNX now respect the delete-on-write operation of EXPIREing keys
3022009-12-06 Fixed daemonization when using kqueue/kevent. Now the server initialization is performed *after* the daemonization
71c54b21 3032009-12-05 more HTML doc changes
3042009-12-05 HTML doc update
3052009-12-05 a few redis-cli format specified fixed
3062009-12-05 use __attribute__ format in sdscatprintf() when the compiler is GCC. Fixed format bugs resulting from the new warnings.
3072009-12-01 TODO update
3082009-12-01 compilation problem on 64bit mac os x 10.5 possibly fixed
3092009-12-01 virtual memory design doc typos
3102009-12-01 design documents added to the project
3112009-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.
3122009-11-30 fixed a subtle bug in redis-cli not having visible effects
3132009-11-29 TODO updated
3142009-11-29 Version chagned to 1.100, also known as the first first 2.0 beta version
3152009-11-29 more tests in test-redis.tcl, some minor fix
3162009-11-29 SORT support for sorted sets
3172009-11-28 Implemented LIMIT option in ZRANGEBYSCORE. We now enter feature-freeze
3182009-11-28 Changelog updated
d799af31 3192009-11-28 html doc updated
3202009-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.
3212009-11-28 TODO updated
3222009-11-28 ZRANGEBYSCORE fuzzy test
3232009-11-28 ZRANGEBYSCORE memory leak fixed, ZRANGEBYSCORE initial test added
3242009-11-28 INFO refactored. Stack trace on memory corruption now dumps the same information as the INFO command
3252009-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
3262009-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
3272009-11-28 Merge branch 'kqueue' of git://github.com/mallipeddi/redis
3282009-11-28 Changes to TODO list, commented a function in redis.c
3292009-11-28 Added support for kqueue.
3302009-11-27 TODO updated
3312009-11-26 zero length bulk data reading fixed in loadAppendOnlyFile()
3322009-11-26 append only file fixes
3332009-11-26 log rebuilding, random refactoring, work in progress please wait for an OK commit before to use this version
3342009-11-24 DEBUG RELOAD implemented, and test-redis.tcl modified to use it to check for persistence consistency.
3352009-11-24 Redis version set to 1.07
1c0abf3c 3362009-11-24 sorted sets saving fixed
3372009-11-24 minor TODO change
3382009-11-24 minor fix to avoid a false valgrind warning.
3392009-11-23 epoll support enabled by default for Linux builds
3402009-11-23 epoll module for ae.c implemented. Some more testing needed
3412009-11-23 commented the HAVE_EPOLL test in config.h to allow compilation under Linux now that the epoll module is still missing
3422009-11-23 ae_select module added
3432009-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).
3442009-11-23 ae.c initial refactoring for epoll implementation
3452009-11-21 version incremented up to 1.06
3462009-11-21 TODO aesthetic changes
3472009-11-21 TODO updated with plans up to 1.5
3482009-11-21 SRANDMEMBER test
3492009-11-21 Fixed a SORT memory leak that should never happen in practice
3502009-11-21 SORT GET # implemented, with a test
3512009-11-21 EXPIREAT test
3522009-11-20 EXPIRE tests
3532009-11-20 more RPOPLPUSH tests
3542009-11-20 RPOPLPUSH tests added
3552009-11-20 ZINCRBY return value fixed
3562009-11-20 ZINCRSCOREBY => ZINCRBY
3572009-11-19 ZINCRSCOREBY implemented
3582009-11-19 writev() finally uncommented again
3592009-11-19 redis-benchmark hopefully last bug with multi bulk reply fixed
3602009-11-19 debug mode in redis-bench
3612009-11-19 Use writev(2) if glue output buffers is disabled
3622009-11-19 benchmark.c fixes
3632009-11-18 more experiments with long replies, glue output buffer, and writev.
3642009-11-18 benchmarking with different number of LRANGE elements. Ability to change the glue output buffer limit by #define
3652009-11-18 more writev tests/work
3662009-11-18 redis-benchmark multi bulk reply support hopefully fixed
3672009-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
3682009-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
3692009-11-12 Solaris fix thanks to Alan Harder
ef3ac64a 3702009-11-12 Merge git://github.com/ianxm/redis
3712009-11-12 ZSCORE fixed, now returns NULL on missing key or missing element
3722009-11-12 Redis test will not fail the SAVE test even if a background save is in progress
3732009-11-12 LPOPPUSH renamed into RPOPLPUSH
3742009-11-11 can select db num
3752009-11-11 Workaround for test-redis.tcl and Tcl 8.4.x about ZSCORE test
3762009-11-11 Removed a long time warning compiling with recent GCC on Linux
3772009-11-11 TODO updated
3782009-11-11 LPUSHPOP first implementation
3792009-11-10 Tcl script, make target, and redis.c changes to build the static symbol table automagically
3802009-11-10 Implemented a much better lazy expiring algorithm for EXPIRE
3812009-11-10 Fixed issue 92 in redis: redis-cli (nil) return value lacks CR/LF
3822009-11-10 Minor TODO change with new expiring algorithm description. New expiring algorithm moved since it'll go in 1.1
bf75f580 3832009-11-04 redis-test is now a better Redis citizen, testing everything against DB 9 and 10 and only if this DBs are empty.
3842009-11-04 fixed a refcounting bug with SORT ... STORE leading to random crashes
3852009-11-04 masterauth option merged, thanks to Anthony Lauzon
3862009-11-03 ZSets double to string serialization fixed
3872009-11-03 client-libraries directory readded
3882009-11-03 redis.tcl put at toplevel since it's uesd for the test-redis.tcl script
3892009-11-03 client libs removed from Redis git
3902009-11-03 redis-cli now accepts a -r (repeat) switch. Still there is a memory leaks to fix
3912009-11-01 TODO updated again
3922009-11-01 TODO updated
3932009-11-01 redis-cli now makes clear when the returned string is an integer
3942009-11-01 SORT STORE option
3952009-11-01 now Redis prints DB stats just after the startup without to wait a second for the first report
3962009-11-01 another fix for append only mode, now read-only operations are not appended
3972009-11-01 appendfsync parsing in config file fixed. If you benchmarked Redis against different appendfsync options is time to try again ;)
3982009-11-01 append only file loading fixed
3992009-11-01 first version of append only file loading -- STILL BROKEN don't use it
4002009-10-31 Fixed Issue 83:Using TYPE on a zset results in a malformed response from the Redis server
4012009-10-31 Fixed compilation on Linux
4022009-10-30 append only mode is now able to translate EXPIRE into EXPIREAT transparently
4032009-10-30 appendfsync is now set to NO by default
4042009-10-30 support for appendonly mode no, always, everysec
4052009-10-30 first fix for append only mode
4062009-10-30 Initial implementation of append-only mode. Loading still not implemented.
4072009-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.
4082009-10-30 EXPIREAT implemented, will be useful for the append-only mode
4092009-10-29 Fixed Issue 74 (ERR just returned on invalid password), now the error message is -ERR invalid password.
4102009-10-29 Fixed issue 72 (SLAVEOF shutdowns redis-server on malformed reply)
4112009-10-29 Fixed issue 77 (Incorrect time in log files) thanks to youwantalex
4122009-10-29 Fixed Issue 76 (redis-server crashes when it can't connect to MASTER and client connects to SLAVE)
4132009-10-29 ZREMRANGEBYSCORE implemented. Remove a range of elements with score between min and max
4142009-10-28 TODO changes and mostly theoretical minor skiplist change
4152009-10-28 ZLEN renamed ZCARD for consistency with SCARD
3c41331e 4162009-10-27 TODO reworked to reflect the real roadmap
4172009-10-27 Fix for 'make 32bit'
4182009-10-27 a fix for the solaris fix itself ;)
4192009-10-27 More Solaris fixes
4202009-10-27 A lot of ZSETs tests implemented, and a bug fixed thanks to this new tests
4212009-10-27 zmalloc Solaris fixes thanks to Alan Harder
4222009-10-27 ZSCORE implemented
4232009-10-26 fix for ZRANGEBYSCORE
4242009-10-26 ZRANGEBYSCORE implemented. Redis got range queries!
4252009-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!
4262009-10-26 ZSET now saved on disk like any other type
4272009-10-26 double serialization routines implemented
4282009-10-26 ZSETs random fixes. Now the implementation appears to be pretty stable
4292009-10-26 another leak fixed. Can't find more for now, but still a bug in ZSETs to fix
4302009-10-26 ZSETs memory leak #1 solved, another one missing
4312009-10-26 Fix for skiplists backward link
4322009-10-26 Merged Solaris patches provided by Alan Harder
4332009-10-26 backward support to skiplists for ZREVRANGE, still broken, committing since I've to merge the Solaris patches
4342009-10-26 TODO updated
4352009-10-26 ZREM implemented
4362009-10-24 fix for ZADD in score update mode
4372009-10-24 some work on ZADD against existing element (score update), still broken...
4382009-10-23 zrange now starts to work. zadd still does not support update and will crash or leak or b000mmmmm
4392009-10-23 zrange initial hack (not working for now)
4402009-10-23 first skiplist fix, courtesy of valgrind
4412009-10-23 zset symbols added to stack trace code. ZSets will simply crash at the moment
4422009-10-23 more work on ZSETs and a new make target called 32bit to build i386 binaries on mac os x leopard
4432009-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.
4442009-10-23 Fixed compilation in mac os x snow leopard when compiling a 32 bit binary.
4452009-10-22 version incremented to 1.050 to distinguish from 1.001 stable and next stable versions with minor fixes
1812e024 4462009-10-21 TODO updated
4472009-10-21 SRANDMEMBER added
4482009-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
4492009-10-17 added multi-bulk protocol support to redis-cli and support for MSET and MSETNX
4502009-10-17 MSET fixed, was not able to replace keys already set for a stupid bug
4512009-10-16 some dead code removed
4522009-10-16 multi bulk input protocol fixed
4532009-10-16 MSET and MSETNX commands implemented
4542009-10-07 undoed all the sds hacking that lead just to random bugs and no memory saving ;)
4552009-10-07 initial multi-bulk query protocol, this will allow MSET and other interesting features.
4562009-10-03 benchmark now outputs the right command line to shorten the TIME_WAIT interval on Mac OS X when keep alive is set
4572009-10-02 Issue 69 fixed. Object integer encoding now works with replication and MONITORing again.
0ea663ea 4582009-09-18 LREM fixed, used to crash since the new object integer encoding is on the stage
4592009-09-17 maxmemory didn't worked in 64 systems for values > 4GB since it used to be an unsigned int. Fixed
4602009-09-10 incremented version number to 1.001, AKA Redis edge is no longer stable...
4612009-09-10 in-memory specialized object encoding (for now 32 signed integers only)
4622009-09-03 Latest doc changes for 1.0
557a74e5 4632009-09-03 Redis 1.0.0 release
4642009-09-02 Redis version pushed to 1.0
4652009-09-02 Ruby client lib updated to the latest git version
4662009-09-02 update-scala-client script added
4672009-09-02 Scala client added thanks to Alejanro Crosa
7c44bbb1 4682009-09-02 QuickStart added
4692009-09-01 Fixed crash with only space and newline as command (issue 61), thanks to a guy having as nick "fixxxerrr"
4702009-08-11 TODO list modified
4712009-07-24 more snow leopard related fixes (for 32bit systems)
4722009-07-24 fixed compilation with Snow Leopard, thanks to Lon Baker for providing SSH access to Snow Leopard box
4732009-07-22 Fixed NetBSD compile problems
4742009-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
4752009-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.
4762009-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.
4772009-07-03 bugfix: EXPIRE now propagates to the Slave.
4782009-06-16 Redis version modified to 0.900
f0dec43b 4792009-06-16 update-ruby-client script already points to ezmobius repo
4802009-06-16 client libraries updated
4812009-06-16 Redis release candidate 1
df3fd8d8 4822009-06-16 Better handling of background saving process killed or crashed
4832009-06-14 number of keys info in INFO command thanks to Diego Rosario Brogna
4842009-06-14 SPOP documented
7492bbe9 4852009-06-14 Clojure library thanks to Ragnar Dahlén
4862009-06-10 It is now possible to specify - as config file name to read it from stdin
4872009-06-10 sync with jodosha redis-rb
4882009-06-10 Redis-rb sync
4892009-06-10 max inline request raised again to 1024*1024*256 bytes
4902009-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
4912009-06-08 SPOP implemented. Hash table resizing for Sets and Expires too. Changed the resize policy to play better with RANDOMKEY and SPOP.
4922009-06-07 some minor changes to the backtrace code
4932009-06-07 enable backtrace capabilities only for Linux and MacOSX
e65fdc78 4942009-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
4952009-06-06 Merge git://github.com/dierbro/redis
4962009-06-06 add more output
4972009-06-06 store static function pointer for a useful stack trace
4982009-06-06 TODO updated
a3cc9e36 4992009-06-06 Makefile dependencies updated
5002009-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
5012009-06-05 Kill the background saving process before performing SHUTDOWN to avoid races
5022009-06-05 LREM now returns :0 for non existing keys
e65fdc78 5032009-06-05 - put some order in code - better output
a3cc9e36 5042009-06-05 added config.h for #ifdef business isolation, added fstat64 for Mac OS X
e65fdc78 5052009-06-04 remove die() :-)
5062009-06-04 add compile options to debug
5072009-06-04 initial commit print stack trace
5082009-06-04 initial commit print stack trace
a3cc9e36 5092009-06-04 macosx specific zmalloc.c, uses malloc_size function in order to avoid to waste memory and time to put an additional header
5102009-06-04 DEBUG OBJECT implemented
333298da 5112009-06-04 backtrace support removed: unreliable stack trace :(
5122009-06-04 initial backtrace dumping on sigsegv/sigbus + debug command
5132009-06-03 Python lib updated
5142009-06-03 shareobjectspoolsize implemented in reds.conf, in order to control the pool size when object sharing is on
5152009-05-30 Erlang client updated
5162009-05-30 Python client library updated
5172009-05-29 Redis-rb minor bool convertion fix
5182009-05-29 ruby library client is not Redis-rb merged with RubyRedis "engine" by Brian McKinney
5192009-05-28 __P completely removed from pqsort.c/h
5202009-05-28 another minor fix for Solaris boxes
5212009-05-28 minor fix for Solaris boxes
5222009-05-28 minor fix for Solaris boxes
5232009-05-27 maxmemory implemented
5242009-05-26 Redis git version modified to 0.101 in order to distinguish that from the latest tar.gz via INFO ;)
16edf32d 5252009-05-26 Redis 0.100 released
5262009-05-26 client libraries synched in git
d7fc9edb 5272009-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
5282009-05-26 max bytes of a received command enlarged from 1k to 16k
5292009-05-26 RubyRedis: set TCP_NODELAY TCP socket option to to disable the neagle algorithm. Makes a huge difference under some OS, notably Linux
a56785f7 5302009-05-25 maxclients implemented, see redis.conf for details
5312009-05-25 INFO command now reports replication info
5322009-05-25 minor fix to RubyRedis about bulk commands sent without arguments
0b420168 5332009-05-24 Warns if using the default config
5342009-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
5352009-05-23 RubyRedis: now sets are returned as arrays again, and not as Set objects
5362009-05-23 SLAVEOF command documented
5372009-05-23 SLAVEOF command implemented for replication remote control
321b0e13 5382009-05-22 Fix: no connection timeout for the master!
5392009-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
5402009-05-22 README tutorial now reflects the new proto
5412009-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
5422009-05-22 TTL command doc added
5432009-05-22 TTL command implemented
fd88489a 5442009-05-22 S*STORE now return the cardinality of the resulting set
5452009-05-22 rubyredis more compatible with Redis-rb
5462009-05-21 minor indentation fix
5472009-05-21 timeout support and Redis-rb compatibility aliases implemented in RubyRedis
5482009-05-21 RubyRedis info postprocessor rewritten in a more functional way
5492009-05-21 dead code removed from RubyRedis
5502009-05-21 command postprocessing implemented into RubyRedis
5512009-05-20 Automagically reconnection of RubyRedis
5522009-05-20 RubyRedis: Array alike operators implemented
5532009-05-20 random testing code removed
5542009-05-20 RubyRedis DB selection forced at object creation
5552009-05-20 Initial version of an alternative Ruby client added
5562009-05-20 SDIFF / SDIFFSTORE added to doc
1350d27e 5572009-05-20 Aman Gupta changes merged
5582009-05-20 Merge git://github.com/tmm1/redis
5592009-05-19 Allow timeout=0 config to disable client timeouts
5602009-05-19 Partial qsort implemented in SORT command, only when both BY and LIMIT is used. minor fix for a warning compiling under Linux.
5612009-05-19 psort.c/h added. This is a partial qsort implementation that Redis will use when SORT+LIMIT is requested
5622009-05-17 Fix SINTER/UNIONSTORE to allow for &=/|= style operations (i.e. SINTERSTORE set1 set1 set2)
5632009-05-17 Optimize SDIFF to return as soon as the result set is empty
5642009-05-17 SDIFF/SDIFFSTORE implemnted unifying it with the implementation of SUNION/SUNIONSTORE
5652009-05-11 timestamp in log lines
5662009-05-11 Python client updated pushing from Ludo's repository
74077975 5672009-05-11 disconnect when we cannot read from the socket
5682009-05-11 benchmark utility now supports random keys
5692009-05-10 minor doc changes
5702009-05-09 added tests for vararg DEL
5712009-05-09 DEL is now a vararg, IMPORTANT: memory leak fixed in loading DB code
5109cdff 5722009-05-09 doc changes
5732009-05-09 CPP client added thanks to Brian Hammond
5742009-05-06 Infinite number of arguments for MGET and all the other commands
5752009-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
5762009-04-30 zmalloc fix, return NULL or real malloc failure
5772009-04-30 more fixes for dict.c and the 150 million keys limit
5782009-04-30 dict.c modified to be able to handle more than 150,000,000 keys
5792009-04-29 fuzz stresser implemented in redis-test
75398fbc 5802009-04-29 fixed for HT resize check 32bits overflow
5812009-04-29 Check for fork() failure in background saving
5822009-04-29 fix for the LZF off-by-one bug added
5832009-04-28 print bytes used at exit on SHUTDOWN
5842009-04-28 SMOVE test added
5852009-04-28 SMOVE command implemented
a4460ef4 5862009-04-28 less CPU usage in command parsing, case insensitive config directives
5872009-04-28 GETSET command doc added
02fdd5ab 5882009-04-28 GETSET tests
5892009-04-28 GETSET implemented
5902009-04-27 ability to specify a different file name for the DB
b8b553c8 5912009-04-27 log file parsing code improved a bit
5922009-04-27 bgsave_in_progress field in INFO output
5932009-04-27 INCRBY/DECRBY now support 64bit increments, with tests
d68ed120 5942009-04-23 RANDOMKEY regression test added
5952009-04-23 dictGetRandomKey bug fixed, RANDOMKEY will not block the server anymore
6f864e62 5962009-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
5972009-04-21 forgot to comment testing code in PHP lib. Now it is ok
5982009-04-21 PHP client ported to PHP5 and fixed
5992009-04-21 doc update
6002009-04-20 Non blocking replication (finally!). C-side linked lists API improved.
6012009-04-19 SUNION, SUNIONSTORE, Initial work on non blocking replication
40d224a9 6022009-04-10 Redis 0.091 released
6bea3d5f 6032009-04-10 SINTER/SINTERSTORE/SLEMENTS fix: misisng keys are now not errors, but just like empty sets
6042009-04-09 doc changes
6052009-04-08 TODO changes, minor change to default redis.conf
6062009-04-08 html doc updated
6072009-04-08 library clients update scripts
6082009-04-08 Ruby client updated
6092009-04-08 Lua client updated
6102009-04-08 Changelog updated
8b382972 6112009-04-08 Merge git://github.com/ludoo/redis
6122009-04-08 add expire command to the php lib
6132009-04-08 fix decode bug, add flush and info commands
6142009-04-07 Rearrange redisObject struct to reduce memory usage in 64bit environments (as recommended http://groups.google.com/group/redis-db/msg/68f5a743f8f4e287)
6152009-04-07 ruby19 compat: use each_line on string
6162009-04-07 64bit fixes for usedmemory
6172009-04-08 RANDOMKEY issue 26 fixed, generic test + regression added
6182009-04-06 Don't accept SAVE if BGSAVE is in progress
6192009-04-06 add expire command to the python lib
6202009-04-03 persistent EXPIRE
6212009-04-03 dirty increment was missing in two points. TODO updated
6222009-04-02 LZF configured to initalize the HT in order to be determinsitic and play well with valgrind
6232009-04-02 fix select test
6242009-04-02 fix trailing cr+nl in values
6252009-04-02 compression/decompression of large values on disk now working
6262009-04-02 disable LZF compression since it's not able to load the DB for now, the load part is missing
6272009-04-02 new LZF files added
6282009-04-02 Fixed issue 23 about AUTH
6292009-04-02 Issue 22 fixed
6302009-04-01 non-lazy expired keys purging implemented
6312009-04-01 fastlz dependence removed
6322009-04-01 Initial implementation of EXPIRE
6332009-03-30 TODO updated
6342009-03-30 changelog added
378fd421 6352009-03-28 redis-sha1 utility added
6362009-03-28 Integer encoding implemented in dump file. Doc updated
6372009-03-27 feature macros defined to play well with C99
6382009-03-27 feature macros defined to play well with C99
6392009-03-27 now Redis is C99-ok
6402009-03-27 IMPORTANT FIX: new dump format implementation was broken. Now it's ok but tests for the 32-bit case values are needed
6412009-03-27 ANSI-C compatibility changes
6422009-03-27 Ruby client library updated. Important changes in this new version!
6432009-03-26 Lua client added thanks to Daniele Alessandri
6442009-03-26 Lua client added thanks to Daniele Alessandri
6452009-03-26 AUTH merged from Brian Hammond fork, reworked a bit to fix minor problems
6462009-03-25 Adds AUTH command.
6472009-03-25 Nasty bug of the new DB format fixed, objects sharing implemented
6482009-03-25 doc update
6492009-03-25 Erlang client synched with Valentiono's repo
6502009-03-25 New file dump format, perl client library added
6512009-03-25 New protocol fix for LREM
6522009-03-24 two typos fixed
6532009-03-24 Now the Redis test uses the proper Tcl client library
6542009-03-24 Tcl client library
6552009-03-24 redis-benchmark sync with the new protocol
6562009-03-24 git mess :)
6572009-03-24 sync python client to the new protocol
6582009-03-24 protocol fix in SORT reply with null elements
6592009-03-24 protocol doc changed
6602009-03-24 Server replies now in the new format, test-redis.tcl and redis-cli modified accordingly
6612009-03-24 Python client library updated, thanks to Ludo!
6622009-03-24 random tested mode for test-redis.tcl, minor other stuff, version switched to 0.8
6632009-03-23 Now MONITOR/SYNC cannot be issued multiple times
6642009-03-23 MONITOR command implemented.
6652009-03-23 lucsky changes imported. pid file path can now be configured, redis-cli fixes
6662009-03-23 Merge git://github.com/lucsky/redis
6672009-03-23 another missing free->zfree replacement fixed. Thanks to Ludo
6682009-03-23 Fixed redis-cli readLine loop to correctly handle EOF.
6692009-03-23 Display the port on server startup.
6702009-03-23 Allow to specify the pid file from the config file.
6712009-03-23 Added gitignore file.
6722009-03-22 MGET tests added
6732009-03-22 doc changes
6742009-03-22 added doc for MGET
6752009-03-22 redis-cli now checks the arity of vararg commnads
6762009-03-22 INFO fixed, MGET implemented, redis-cli implements INFO/MGET
8b382972 6772009-03-22 first commit