You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Upgrade urgency CRITICAL: 4.0.0 GA fixes many important bugs.
18
+
19
+
Dear Redis users,
20
+
21
+
this is the first stable version of Redis 4.0. There are a number
22
+
of bug fixes and improvements compared to the previous RC, mainly:
23
+
24
+
* Different replication fixes to PSYNC2, the new 4.0 replication engine.
25
+
* Modules thread safe contexts were introduced. They are an experimental API right now, but the API is considered to be stable and usable when needed.
26
+
* SLOWLOG now logs the offending client name and address. Note that this is a backward compatibility breakage in case old code assumes that the slowlog entry is composed of exactly three entries.
27
+
* The modules native data types RDB format changed.
28
+
* The AOF check utility is now able to deal with RDB preambles.
29
+
* GEORADIUS_RO and GEORADIUSBYMEMBER_RO variants, not supporting the STORE option, were added in order to allow read-only scaling of such queries.
30
+
* HSET is now variadic, and HMSET is considered deprecated (but will be supported for years to come). Please use HSET in new code.
31
+
* GEORADIUS huge radius (>= ~6000 km) corner cases fixed, certain elements near the edges were not returned.
32
+
* DEBUG DIGEST modules API added.
33
+
* HyperLogLog commands no longer crash on certain input (non HLL) strings.
34
+
* Fixed SLAVEOF inside MULTI/EXEC blocks.
35
+
* Many other minor bug fixes and improvements.
36
+
37
+
Note that 4.0 is probably one of the most extreme releases of Redis ever
38
+
made in terms of changes inside the internals: all the aggregated data types
39
+
no longer use Redis Objects structures but directly SDS objects, certain
40
+
deletion operations are now threaded, the replication engine was modified
41
+
in many ways. So please handle this release with care. A few patch-level
42
+
releases will follow in the next weeks and months fixing the important issues
43
+
discovered by the users.
44
+
45
+
You can read the new set of features below in this file, there are a lot
46
+
of improvements that can make a real difference in real world use cases.
47
+
Also note that Redis 4.0 is, as usually, almost a perfect superset of Redis
48
+
3.2, so it is very rare that compatibility with the past is broken in terms
49
+
of exported commands.
50
+
51
+
IMPORTANT: Redis Cluster users, please note that, as specified in the list
52
+
of incompatibilities, Redis 4.0 cluster bus protocol is not compatible with
53
+
Redis 3.2, so in order to upgrade, a mass reboot of the instances is needed
54
+
and rolling upgrades are not possible. This change was needed in order to
55
+
add compatibility for Containers/NAT, where the bus port at a fixed offset
56
+
was not an acceptable design, so we had to change many things, resulting
57
+
in the incompatible protocol.
58
+
59
+
Have fun with Redis 4.0!
60
+
Salvatore
61
+
62
+
antirez in commit c29852ff:
63
+
Modules: fix thread safe context DB selection.
64
+
1 file changed, 3 insertions(+)
65
+
66
+
antirez in commit b73f186a:
67
+
Modules documentation removed from source.
68
+
4 files changed, 2830 deletions(-)
69
+
70
+
antirez in commit 09d93ec9:
71
+
Markdown generation of Redis Modules API reference improved.
Issue #4027: unify comment and modify return value in freeMemoryIfNeeded().
184
+
2 files changed, 7 insertions(+), 7 deletions(-)
185
+
186
+
Suraj Narkhede in commit 896c4690:
187
+
Fix following issues in blocking commands: 1. brpop last key index, thus checking all keys for slots. 2. Memory leak in clusterRedirectBlockedClientIfNeeded. 3. Remove while loop in clusterRedirectBlockedClientIfNeeded.
188
+
1 file changed, 1 insertion(+)
189
+
190
+
Zachary Marquez in commit deeb795a:
191
+
Prevent expirations and evictions while paused
192
+
2 files changed, 10 insertions(+)
193
+
194
+
antirez in commit a6615423:
195
+
Upgrade 4.0 changelog with more backward incompatibilities.
196
+
1 file changed, 8 insertions(+)
197
+
198
+
xuzhou in commit 0b367871:
199
+
Optimize set command with ex/px when updating aof.
200
+
1 file changed, 3 insertions(+), 3 deletions(-)
201
+
202
+
antirez in commit 2ae733d9:
203
+
redis-benchmark: add -t hset target.
204
+
1 file changed, 7 insertions(+)
205
+
206
+
xuzhou in commit 63e1c9f2:
207
+
Fix set with ex/px option when propagated to aof
208
+
4 files changed, 36 insertions(+), 1 deletion(-)
209
+
210
+
minghang.zmh in commit 0231156f:
211
+
fix server.stat_net_output_bytes calc bug
212
+
1 file changed, 1 insertion(+), 1 deletion(-)
213
+
214
+
xuchengxuan in commit e99954e4:
215
+
Fixed comments of slowlog duration
216
+
1 file changed, 1 insertion(+), 1 deletion(-)
217
+
218
+
cbgbt in commit d048f972:
219
+
cli: Only print elapsed time on OUTPUT_STANDARD
220
+
1 file changed, 3 insertions(+), 1 deletion(-)
221
+
222
+
Aric Huang in commit b5f22939:
223
+
(fix) Update create-cluster README
224
+
1 file changed, 4 insertions(+), 4 deletions(-)
225
+
226
+
antirez in commit 0b7ba621:
227
+
SLOWLOG: log offending client address and name.
228
+
4 files changed, 27 insertions(+), 7 deletions(-)
229
+
230
+
Antonio Mallia in commit 1fbc90fe:
231
+
Removed duplicate 'sys/socket.h' include
232
+
1 file changed, 1 deletion(-)
233
+
234
+
Antonio Mallia in commit c7a6b711:
235
+
Fixed comment in clusterMsg version field
236
+
1 file changed, 1 insertion(+), 1 deletion(-)
237
+
238
+
Qu Chen in commit 73d358f7:
239
+
Implement getKeys procedure for georadius and georadiusbymember commands.
0 commit comments