00-RELEASENOTES 10.5 KB
Newer Older
A
antirez 已提交
1
Redis 2.4 release notes
2

A
antirez 已提交
3
Migrating from 2.2 to 2.4
4 5
=========================

A
antirez 已提交
6 7 8 9
Redis 2.2 is mostly a strict subset of 2.4.
The only thing you should be aware is that you can't use .rdb and AOF files
generated with 2.4 into a 2.2 instance.

A
antirez 已提交
10 11
2.4 slaves can be attached to 2.2 masters, but not the contrary, and only for
the time needed to perform the version upgrade.
A
antirez 已提交
12 13 14 15

From the point of view of the API Redis 2.4 only adds new commands
(other commands now accepts a variable number of arguments) so you don't need
to modify your program in order to use Redis 2.4.
16

17 18 19 20
---------
CHANGELOG
---------

A
antirez 已提交
21 22 23 24 25 26 27 28 29 30 31 32 33
What's new in Redis 2.4.11
=========================

UPGRADE URGENCY: moderate if you don't experience any of the fixed problems.

* [BUGFIX] Fixed a problem with aeWait() implementation. May cause a crash
           under non easy to replicate condiitons. See issue #267 on github.
* [BUGFIX] SORT with GET/BY option fetching expiring keys fixed. Issue #460.
* [BUGFIX] INFO field master_link_down_since_seconds initialized correctly.
* [FEATURE] redis-cli back ported from Redis unstable. Now has support for
            --bigkeys (to sample the DB for very large keys), --slave to
            simulate a slave instance.

A
antirez 已提交
34 35 36 37 38 39 40 41 42
What's new in Redis 2.4.10
==========================

UPGRADE URGENCY: High for users using replication with a DB identifier higher than 9, or chaining replication so that slaves are attached to other slaves. Low for all the other users.

* [FEATURE] Redis --test-meory improved with new test testing addressing.
* [BUGFIX] Fixed a memory leak: happens when replication is used with DB > 9.
* [BUGFIX] Fixed a replication bug that happens in chained replicaiton when a slave is attached to a master that is later turned into a slave. Now the chained slave reconnection is properly forced.

A
antirez 已提交
43 44 45 46 47 48 49 50 51 52 53 54
What's new in Redis 2.4.9
=========================

UPGRADE URGENCY: low. Mostly new features and minor bug fixing.

* [FEATURE] Redis server is now able to test your memory for broken RAM.
            Usage: ./redis-server --test-memory <megabytes>.
* [FEATURE] redis-benchmark backported from unstable. Pipelining, run selected
            tests, and a few more features.
* [BUGFIX] utils/install_server.sh script now works on Redhat / Centos.
* [BUGFIX] Minor fix to redis-cli (github issue #306).

A
antirez 已提交
55 56 57 58 59 60 61 62 63 64 65 66 67
What's new in Redis 2.4.8
=========================

UPGRADE URGENCY: moderate if you don't experience any of the fixed problems.

* [BUGFIX] Make install now uses cp -f to avoid 'text file busy' errors.
* [BUGFIX] redis-check-aof is now large files safe also on 32 bit systems.
* [BUGFIX] Issue #327 fixed: maxmemory and replication now work much better.
* [BUGFIX] Now HINCRBY can detect overflows too. Fix for issue #330.
* [BUGFIX] Fixed compilation with latest clang.
* [BUGFIX] Fixed handling of empty sorted sets produced in RDB by
           very old Redis versions (1.2.x).

A
antirez 已提交
68 69 70 71 72 73 74 75 76 77 78 79 80
What's new in Redis 2.4.7
=========================

UPGRADE URGENCY: low/moderate if you don't experience any of the fixed problems.

* [BUGFIX] Fixed false positive in issue #141 regression test.
* [BUGFIX] Slave should not expire keys when loading an RDB after a SYNC.
* [BUGFIX] Don't increment stats for key misses / hits when key is written.
* [BUGFIX] sds.c library now don't allocate more than 1MB ahead.
* 32 bit instances without a maxmemory set now get a default limit of 3.5GB with
  maxmemory-policy set to noeviction.
* Better crash report on crash (containing current client and command arguments).

A
antirez 已提交
81 82 83 84 85 86 87 88 89 90 91 92
What's new in Redis 2.4.6
=========================

* [BUGFIX] Fixed issue #141 part 1: Possible protocol desyncs when clients send
           wrong protocol is now fixed. (See issue 141 for more details)
* [BUGFIX] Fixed issue #141 part 2: Connection of multiple slaves used to result
           from time to time into corrupted protocol send to slaves connected
           after the first one. (See issue 141 for more details)
* [BUGFIX] Do not propagate DEBUG LOADAOF.
* New INFO contains information such as ip/port/state for every conneced slave.
* Show GCC version in INFO output.

A
antirez 已提交
93 94 95 96 97 98 99 100 101 102 103 104
What's new in Redis 2.4.5
=========================

* [BUGFIX] Fixed a ZUNIONSTORE/ZINTERSTORE bug that can cause a NaN to be
           inserted as a sorted set element score. This happens when one of the
           elements has +inf/-inf score and the weight used is 0.
* [BUGFIX] Fixed memory leak in CLIENT INFO.
* [BUGFIX] Fixed a non critical SORT bug (Issue 224).
* [BUGFIX] Fixed a replication bug: now the timeout configuration is respected
           during the connection with the master.
* --quiet option implemented in the Redis test.

A
antirez 已提交
105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
What's new in Redis 2.4.4
=========================

* [BUGFIX] jemalloc upgraded to version 2.2.5, previous versions had a
  potentially serious issue when allocating big memory areas, something that
  Redis actually does. However we never received bug reports that appear
  to be caused by jemalloc.
* [BUGFIX] DISCARD now clears DIRTY_CAS flag in the client. Now the next
  transaction will not fail if the previous transaction used WATCH and
  the key was touched.
* CLIENT LIST output modified to include the last command executed by clients.
* Better bug report on crash.
* Protocol errors are now logged for loglevel >= verbose.
* Two new INFO fields related to AOF, that can be useful when investigating
  Redis issues.

A
antirez 已提交
121 122 123 124 125 126 127 128 129 130 131 132 133
What's new in Redis 2.4.3
=========================

* redis-cli now supports 'single quotes' style strings.
* It is possible to disable password auth with CONFIG SET.
* Some section of redis.conf better documented.
* Default timeout for client connections now is 0 (no timeout).
* I/O buffer length modified for better performances with big payloads.
* Fixed crash on SPARC due to improper alighment due to bad assumptions about data types size.
* CLIENT LIST output improved, code refactored.
* [BUGFIX] Max log message length set to 4k to avoid truncation in INFO output written in the log file after a crash.
* [BUGFIX] Close client connection when the query buffer reaches 1GB and log informaiton about the offending client, instead of crashing the instance when the query buffer reaches 2GB (for sds.c string overflow). This is related to issue #141 (github issues) and should fix the effect of this rare bug related to replication, but the cause is still not perfectly clear.

A
antirez 已提交
134 135 136 137 138 139 140 141 142 143 144
What's new in Redis 2.4.2
=========================

* [BUGFIX] Unix socket creation mask config directive fixed.
* [BUGFIX] Fixed a bug that forced Redis to continously rewrite the AOF file
           when a manual BGREWRITEAOF was issued during a BGSAVE was
           still in progress.
* [BUGFIX] Fixed a server crash resulting from bad handling of SLAVEOF NO ONE.
* [BUGFIX] Fixed a memory leak in redis-cli.
* Debian/Ubuntu Redis system-wide installation script added under /utils.

A
antirez 已提交
145 146 147 148 149 150 151
What's new in Redis 2.4.1
=========================

* [BUGFIX] FLUSHALL was not replicated nor written into the Append Only File.
* [BUGFIX] FLUSHALL now only performs a sync SAVE if there is at least
           one save point configured.

A
antirez 已提交
152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167
What's new in Redis 2.4.0
=========================

* [BUGFIX] redis-cli segfault with single numerical argument fixed.
* [BUGFIX] OpenBSD compilation problem fixed.
* [BUGFIX] More robust Redis test, with better random port selection.
* [BUGFIX] Fix for bug #128 about the RENAME command.
* [BUGFIX] Fixed Issue #131. stime/utime reported in INFO was inverted.
* [BUGFIX] Unlink Unix socket file on shutdown.
* [BUGFIX] AUTH now returns error if no password is set on the server.
* [BUGFIX] Exit with Fatal error at startup on RDB loading errors.
* redis-check-dump: RDB version 2 now supported.
* More informative error when DEBUG RELOAD fails.
* Added a config directive for a Unix socket mask.
* CONFIG SET/GET for loglevel.

A
antirez 已提交
168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184
What's new in Redis 2.3.11 (2.4 Release Candidate 8)
====================================================

* [BUGFIX] Fixed a rare but possible AOF race condition that could result into
           duplicated commands inside the AOF.
* [BUGFIX] Fixed issue 620, don't segfault on corrupted (by hand) AOF.
* [BUGFIX] Fixed compilation on Mac/PPC.
* [BUGFIX] Don't replicate SAVE.
* LRANGE optimization may drastically improve performances when querying the
  final part of a long list.
* redis-cli now implements a --latency mode to monitory Redis delay.
* Hash type settings removed from INFO (same info is available via config GET)
* Include port number on error when can't bind.
* AOF fsync is now performed in background when fsync policy is 'everysec'.
* AOF performances improved moving in background a possibly slow close(2) call.
* AOF protocol synthesis speedup.

185 186 187 188 189 190
What's new in Redis 2.3.10 (2.4 Release Candidate 7)
====================================================

* [BUGFIX] Fixed issue 593 (BRPOPLPUSH related crash).
* [BUGFIX] Fixed an issue with the networking layer that may prevent Redis from sending the whole reply back to client under extreme conditions.

191 192 193 194 195 196 197
What's new in Redis 2.3.9 (2.4 Release Candidate 6)
===================================================

* [BUGFIX] Fixed a bug with the automatic AOF rewrite causing continuous
  rewrites for AOF files bigger than 4 GB.
* New maxmemory tests.

A
antirez 已提交
198
What's new in Redis 2.3.8 (2.4 Release Candidate 5)
199
===================================================
A
antirez 已提交
200

A
antirez 已提交
201 202 203 204
Compared to Redis 2.3.7 (RC4) there are the following changes:

* [BUGFIX] HDEL: Abort deleting fields when hash is removed.
* [BUGFIX] Fix adding bulk reply when getcwd fails.
A
antirez 已提交
205

A
antirez 已提交
206
WHAT'S NEW IN REDIS 2.4 compared to the 2.2 version?
207
====================================================
A
antirez 已提交
208

A
antirez 已提交
209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230
* Specially encoded sorted sets, now small sorted sets will use little memory.
* Native persistence of specially encoded data types (ziplists, zipmaps,
  intsets). Many data sets will be saved and loaded an order of magnitude
  faster.
* Variadic versions of commands: SADD, HDEL, SREM, ZREM, ZADD, L/RPUSH.
* Jemalloc support (enabled by default for Linux build) in order to
  avoid fragmentation issues.
* Reduced memory usage while saving.
* More info fields (peak memory, fork time, ...)
* OBJECT command for objects introspection.
* CLIENT command for clients introspection.
* Non blocking slave -> master connection.
* Better redis-cli connection handling. New redis-cli features.
* Better redis-benchmark, now able to benchmark user provided commands.
* Colorized Make.
* VM deprecated. Still supported but with a big warning... don't use it.
* Many speed optimizations and bug fixes.

Credits: Where not specified the implementation and design are done by
Salvatore Sanfilippo and Pieter Noordhuis. Thanks to VMware for making all
this possible. Also many thanks to all the other contributors and the amazing
community we have.
231 232 233

Cheers,
Salvatore