|
1 | | -This is the testing branch. It will become Redis 3.2 after more fixes |
2 | | -and possibly more features will be added. |
| 1 | +Redis 3.2 release notes |
| 2 | +======================= |
3 | 3 |
|
4 | | -All the potentially very unstable work will go into the "unstable" branch. |
5 | | -Fixes and safe features will be back ported here into "testing" for some |
6 | | -time, then RC1 will be released and we'll freeze the code base. |
| 4 | +-------------------------------------------------------------------------------- |
| 5 | +Upgrade urgency levels: |
| 6 | + |
| 7 | +LOW: No need to upgrade unless there are new features you want to use. |
| 8 | +MODERATE: Program an upgrade of the server, but it's not urgent. |
| 9 | +HIGH: There is a critical bug that may affect a subset of users. Upgrade! |
| 10 | +CRITICAL: There is a critical bug affecting MOST USERS. Upgrade ASAP. |
| 11 | +-------------------------------------------------------------------------------- |
| 12 | + |
| 13 | +--[ Redis 3.2.0 RC1 (version 3.1.101) ] Release date: 23 dec 2015 |
| 14 | + |
| 15 | +This is the first release candidate of Redis 3.2. The changelog above shows |
| 16 | +what's new in this release. In the next of the following weeks we'll test |
| 17 | +in depth every feature and we'll release new RCs as bugs are discovered |
| 18 | +and fixed. Note that while 3.2 looks solid already, it contains many changes |
| 19 | +to its internals. It's still fresh code compared to 3.0. |
| 20 | + |
| 21 | +General changes: |
| 22 | + |
| 23 | +* [NEW] Lua scripts "effect replication". Makes possible to write scripts |
| 24 | + with side effects, use of random commands, and so forth. |
| 25 | + (Salvatore Sanfilippo) |
| 26 | +* [NEW] Geo indexing support via GEOADD, GEORADIUS and other commands. |
| 27 | + See http://redis.io/commands/geoadd for more information. |
| 28 | + (Initially implemented in a fork of Redis called "Ardb". |
| 29 | + Matt Stancliff "imported back" the work to Redis and created the |
| 30 | + initial API and implementation. Salvatore Sanfilippo modified |
| 31 | + the API and the implementation, fixed bugs, improved performances |
| 32 | + and unified the duplicated code with t_zset.c) |
| 33 | +* [NEW] Lua debugger. A complete stepping, remote debugger for Lua scripts. |
| 34 | + Video here: https://www.youtube.com/watch?v=IMvRfStaoyM |
| 35 | +* [NEW] SDS improvements for speed and maximum string length. |
| 36 | + This makes Redis more memory efficient in different use cases. |
| 37 | + (Design and implementation by Oran Agra, some additional work |
| 38 | + by Salvatore Sanfilippo) |
| 39 | +* [NEW] Modify Jemalloc size classes to make certain Redis objects fit |
| 40 | + better, improving memory efficiency. (Oran Agra) |
| 41 | +* [NEW] Better consistency behavior between masters and slaves for expired |
| 42 | + keys. The slaves are only able to logically consider a key expired |
| 43 | + even before receiving the `DEL` command from the master. This avoids |
| 44 | + the delay there is sometimes between the natural expire of the key |
| 45 | + and the moment the slave is notified. (Salvatore Sanfilippo) |
| 46 | +* [NEW] Support daemon supervision by upstart or systemd (Pierre-Yves Ritschard) |
| 47 | +* [NEW] New encoding for the List type: Quicklists. Very important memory |
| 48 | + savings and storage space in RDB gains (up to 10x sometimes). |
| 49 | + (Design and implementation by Matt Stancliff. RDB storage reworked |
| 50 | + by Salvatore Sanfilippo) |
| 51 | +* [NEW] SPOP with optional count argument. (Initial implementation by |
| 52 | + Alon Diamant, mostly reimplemented by Salvatore Sanfilippo for speed |
| 53 | + and in order to make the replication of a this class of commands, |
| 54 | + having as logical effect the execution of multiple commands, possible). |
| 55 | +* [NEW] Support for RDB AUX fields. Now RDB files contain additional info |
| 56 | + like the creation date, version of Redis generating it and so forth. |
| 57 | + (Salvatore Sanfilippo) |
| 58 | +* [NEW] Faster RDB loading via the RESIZEDB opcode to avoid useless hash tables |
| 59 | + rehashings. (Salvatore Sanfilippo) |
| 60 | +* [NEW] HSTRLEN command. (@landmime and Salvatore Sanfilippo) |
| 61 | +* [NEW] CONFIG SET/GET implementations refactored, partially rewritten, |
| 62 | + now exposing more config options. (Salvatore Sanfilippo) |
| 63 | +* [NEW] CLUSTER NODES major speedup. (Salvatore Sanfilippo) |
| 64 | +* [NEW] CLIENT KILL TYPE MASTER, to kill (disconnect) masters from slaves. |
| 65 | + (Salvatore Sanfilippo) |
| 66 | +* [NEW] Jemalloc updated to 4.0.3 (Salvatore Sanfilippo) |
| 67 | +* [NEW] DEBUG RESTART/CRASH-AND-RECOVER [delay] (Salvatore Sanfilippo) |
| 68 | +* [NEW] CLIENT REPLY command implemented: ON, OFF and SKIP modes. |
| 69 | + (Salvatore Sanfilippo) |
| 70 | +* [NEW] Crash report produced by Redis on crash improved. (Salvatore Sanfilippo) |
| 71 | +* [NEW] Better memory test on crash. (Salvatore Sanfilippo) |
| 72 | + |
| 73 | +Redis Cluster changes: |
| 74 | + |
| 75 | +* All the Redis Cluster changes in 3.2 were backported to 3.0, so there is |
| 76 | + technically nothing new for now in this release. |
| 77 | + |
| 78 | +Redis Sentinel changes: |
| 79 | + |
| 80 | +* [NEW] Sentinel connection sharing. Makes Sentinels able to scale to |
| 81 | + monitor many masters. (Salvatore Sanfilippo) |
| 82 | +* [NEW] New SENTINEL INFO-CACHE command. (Matt Stancliff) |
| 83 | +* More things backported to Redis 3.0 in the past, so no longer news of 3.2. |
| 84 | + |
| 85 | +Migrating from 3.0 to 3.2 |
| 86 | +========================= |
| 87 | + |
| 88 | +Redis 3.0 is mostly a strict subset of 3.2, you should not have any problem |
| 89 | +upgrading your application from 3.0 to 3.2. However this is a list of small |
| 90 | +non-backward compatible changes introduced in the 3.2 release: |
| 91 | + |
| 92 | +* The default configuration file now binds to 127.0.0.1. |
| 93 | +* Slaves try to no longer expose stale data about already expired keys. |
| 94 | +* The RDB format changed. Redis 3.2 is still able to read 3.0 (and all the |
| 95 | + past versions) files, but not the other way around. |
| 96 | +* Behavior on crash may be different. The crash log format changed and |
| 97 | + the memory test executed is now different. |
| 98 | + |
| 99 | +-------------------------------------------------------------------------------- |
| 100 | + |
| 101 | +Credits: For each release, a list of changes with the relative author is |
| 102 | +provided. Where not specified the implementation and design is done by |
| 103 | +Salvatore Sanfilippo. Thanks to Redis Labs for making all this possible. |
| 104 | +Also many thanks to all the other contributors and the amazing community |
| 105 | +we have. |
| 106 | + |
| 107 | +Commit messages may contain additional credits. |
| 108 | + |
| 109 | +Cheers, |
| 110 | +Salvatore |
0 commit comments