1 Redis 2.6 release notes
3 Migrating from 2.4 to 2.6
4 =========================
6 Redis 2.4 is mostly a strict subset of 2.6. However there are a few things
7 that you should be aware of:
9 * You can't use .rdb and AOF files generated with 2.6 into a 2.4 instance.
10 * 2.4 slaves can be attached to 2.6 masters, but not the contrary, and only
11 for the time needed to perform the version upgrade.
13 There are also a few API differences, that are unlikely to cause problems,
14 but it is better to keep them in mind:
16 * SORT now will refuse to sort in numerical mode elements that can't be parsed
18 * EXPIREs now all have millisecond resolution (but this is very unlikely to
19 break code that was not conceived exploting the previous resolution error
21 * INFO output is a bit different now, and contains empty lines and comments
22 starting with '#'. All the major clients should be already fixed to work
23 with the new INFO format.
24 * Slaves are only read-only by default (but you can change this easily
25 setting the "slave-read-only" configuration option to "no" editing your
26 redis.conf or using CONFIG SET.
28 Also the following redis.conf and CONFIG GET / SET parameters changed name:
30 * hash-max-zipmap-entries, now replaced by hash-max-ziplist-entries
31 * hash-max-zipmap-value, now replaced by hash-max-ziplist-value
32 * glueoutputbuf option was now completely removed (was deprecated)
38 What's new in Redis 2.5.9 (aka 2.6 Release Candidate 3)
39 =======================================================
41 UPGRADE URGENCY: critical, upgrade ASAP.
43 * [BUGFIX] Fix for issue #500 (https://github.com/antirez/redis/pull/500).
44 Redis 2.6-RC1 and RC2 may corrupt ziplist-encoded sorted sets
45 produced by Redis 2.4.x.
46 * [BUGFIX] Fixed several bugs in init.d script.
47 * [BUGFIX] syncio.c functions modified for speed and correctness. On osx
48 (and possibly other BSD-based systems) the slave would block on
49 replication to send the SYNC command when the master was not
50 available. This is fixed now, but was not affecting Linux installs.
51 * Now when slave-serve-stale-data is set to yes and the master is down, instead
52 of reporting a generic error Redis replies with -MASTERDOWN.
54 What's new in Redis 2.5.8 (aka 2.6 Release Candidate 2)
55 =======================================================
57 UPGRADE URGENCY: high for all the users of the KEYS command, otherwise low.
59 * [BUGFIX] Fix for KEYS command: if the DB contains keys with expires the KEYS
60 command may return the wrong output, having duplicated or missing
61 keys. See issue #487 and #488 on github for details.
63 What's new in Redis 2.5.7 (aka 2.6 Release Candidate 1)
64 =======================================================
66 UPGRADE URGENCY: upgrade not recommended because this is an RC release.
68 * This is the first release candidate for Redis 2.6. We are not aware of
69 bugs, but part of this code is young and was never tested in production
70 environments, so handle with care.
72 An overview of new features and changes in Redis 2.6.x
73 ======================================================
75 * Server side Lua scripting, see http://redis.io/commands/eval
76 * Virtual Memory removed (was deprecated in 2.4)
77 * Hardcoded limits about max number of clients removed.
78 * AOF low level semantics is generally more sane, and especially when used
80 * Milliseconds resolution expires, also added new commands with milliseconds
81 precision (PEXPIRE, PTTL, ...).
82 * Better memory usage for "small" lists, ziplists and hashes when fields or
83 values contain small integers.
85 * Clients max output buffer soft and hard limits. You can specifiy different
86 limits for different classes of clients (normal,pubsub,slave).
87 * AOF is now able to rewrite aggregate data types using variadic commands,
88 often producing an AOF that is faster to save, load, and is smaller in size.
89 * Every redis.conf directive is now accepted as a command line option for the
90 redis-server binary, with the same name and number of arguments.
91 * Hash table seed randomization for protection against collisions attacks.
92 * Performances improved when writing large objects to Redis.
93 * Integrated memory test, see redis-server --test-memory.
94 * INCRBYFLOAT and HINCRBYFLOAT commands.
95 * New DUMP, RESTORE, MIGRATE commands (back ported from Redis Cluster to 2.6).
96 * CRC64 checksump in RDB files.
97 * Better MONITOR output and behavior (now commands are logged before execution).
98 * "Software Watchdog" feature to debug latency issues.
99 * Significant parts of the core refactored or rewritten. New internal APIs
100 and core changes allowed to develop Redis Cluster on top of the new code,
101 however for 2.6 all the cluster code was removed, and will be released with
102 Redis 3.0 when it is more complete and stable.
103 * Redis ASCII art logo added at startup.
104 * Crash report on memory violation or failed asserts improved significantly
105 to make debugging of hard to catch bugs simpler.
106 * redis-benchmark improvements: ability to run selected tests,
107 CSV output, faster, better help.
108 * redis-cli improvements: --eval for comfortable development of Lua scripts.
109 * SHUTDOWN now supports two optional arguments: "SAVE" and "NOSAVE".
110 * INFO output split into sections, the command is now able to just show
112 * New statistics about how many time a command was called, and how much
113 execution time it used (INFO commandstats).
114 * More predictable SORT behavior in edge cases.
115 * Better support for big endian and *BSD systems.
116 * Build system improved.
118 --------------------------------------------------------------------------------
120 Credits: Where not specified the implementation and design are done by
121 Salvatore Sanfilippo and Pieter Noordhuis. Thanks to VMware for making all
122 this possible. Also many thanks to all the other contributors and the amazing
125 See commit messages for more credits.