Skip to content

Commit 224dd71

Browse files
committed
Update what's new and add release notes
1 parent a50ca87 commit 224dd71

File tree

2 files changed

+140
-36
lines changed

2 files changed

+140
-36
lines changed

content/develop/whats-new/8-2.md

Lines changed: 57 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -15,61 +15,97 @@ Redis 8.2 builds on the foundation of Redis 8.0 with significant performance and
1515

1616
This release delivers major improvements across multiple areas:
1717
- Enhanced Redis Streams with new commands for better consumer group management
18+
- New bitmap operations for advanced bit manipulation
1819
- Advanced cluster monitoring with per-slot usage metrics
1920
- Optimized vector search with new compression algorithms
20-
- Substantial performance gains across core operations
21+
- Enhanced keyspace notifications with new event types
22+
- More than 15 performance and resource utilization improvements
2123

2224
Below is a detailed breakdown of these updates.
2325

2426
## New features
2527

2628
### Enhanced Redis Streams
29+
2730
Redis 8.2 introduces powerful new commands that simplify consumer group management and stream lifecycle operations:
2831

29-
- [XDELEX](https://redis.io/docs/latest/commands/xdelex/): Delete entries from streams with advanced consumer group handling options
30-
- [XACKDEL](https://redis.io/docs/latest/commands/xackdel/): Acknowledge and delete stream entries in a single atomic operation
32+
- [`XDELEX`]({{< relref "/commands/xdelex/" >}}): Delete entries from streams with advanced consumer group handling options.
33+
- [`XACKDEL`]({{< relref "/commands/xackdel/" >}}): Acknowledge and delete stream entries in a single atomic operation.
3134

3235
These commands include `KEEPREF`, `DELREF`, and `ACKED` options that give you precise control over how consumer group references are handled during entry deletion. This simplifies common patterns where you need to clean up acknowledged entries while maintaining consumer group integrity.
3336

34-
The `XADD` and `XTRIM` commands have also been extended with these same options, providing consistent behavior across all stream management operations.
37+
The [`XADD`]({{< relref "/commands/xadd/" >}}) and [`XTRIM`]({{< relref "/commands/xtrim/" >}}) commands have also been extended with these same options, providing consistent behavior across all stream management operations.
3538

3639
### Cluster monitoring improvements
37-
The new [CLUSTER SLOT-STATS](https://redis.io/docs/latest/commands/cluster-slot-stats/) command provides detailed per-slot usage metrics including:
40+
41+
The new [`CLUSTER SLOT-STATS`]({{< relref "/commands/cluster-slot-stats/" >}}) command provides detailed per-slot usage metrics including:
3842
- Key count per slot
3943
- CPU time consumption
4044
- Network I/O statistics
4145

4246
This enhanced visibility helps you optimize cluster performance and identify hotspots in your data distribution.
4347

4448
### Vector search enhancements
49+
4550
Redis 8.2 introduces the SVS-VAMANA vector index type, which supports vector compression and is optimized for Intel machines. This new index type can significantly reduce memory usage while maintaining search performance for vector similarity operations.
4651

4752
The `VSIM` command now supports the `IN` operator for filtering expressions, giving you more flexibility when performing vector similarity searches with complex filtering criteria.
4853

54+
### Enhanced bitmap operations
55+
56+
Redis 8.2 extends the [`BITOP`]({{< relref "/commands/bitop/" >}}) command with new operators that provide more sophisticated bit manipulation capabilities:
57+
58+
- **DIFF**: Perform bitwise difference operations between bitmaps.
59+
- **DIFF1**: Calculate the difference with optimized single-bit operations.
60+
- **ANDOR**: Combine AND and OR operations in a single command.
61+
- **ONE**: Specialized operation for single-bit scenarios.
62+
63+
These new operators enable more complex bitmap analytics and can simplify operations that previously required multiple commands.
64+
65+
### Improved keyspace notifications
66+
67+
Redis 8.2 introduces new keyspace notification event types that provide better visibility into data changes:
68+
69+
- **OVERWRITTEN**: Triggered when a key's value is completely overwritten.
70+
- **TYPE_CHANGED**: Fired when a key's data type changes.
71+
72+
These events help you build more responsive applications by providing granular notifications about specific types of data modifications.
73+
4974
## Improvements
5075

76+
Redis 8.2 delivers substantial performance improvements across core operations.
77+
5178
### Performance optimizations
52-
Redis 8.2 delivers substantial performance improvements across core operations:
5379

54-
- **BITCOUNT**: Enhanced with prefetching optimizations for faster bit counting operations
55-
- **SCAN**: Optimized to perform expiration checks only on databases with volatile keys, reducing unnecessary overhead
56-
- **List operations**: `LREM`, `LPOS`, and `LINSERT` benefit from cached `string2ll` results in `quicklistCompare`
57-
- **Sorted set operations**: `ZRANK` and related commands use the same caching optimizations
58-
- **Key operations**: `COPY`, `RENAME`, and `RESTORE` are optimized when TTL is used
59-
- **Client management**: Reduced overhead in client cron operations to avoid blocking the main thread
80+
- **BITCOUNT**: Enhanced with prefetching optimizations for faster bit counting operations.
81+
- **SCAN**: Optimized to perform expiration checks only on databases with volatile keys, reducing unnecessary overhead.
82+
- **List operations**: `LREM`, `LPOS`, and `LINSERT` benefit from cached `string2ll` results in `quicklistCompare`.
83+
- **Sorted set operations**: `ZRANK` and related commands use the same caching optimizations.
84+
- **Key operations**: `COPY`, `RENAME`, and `RESTORE` are optimized when TTL is used.
85+
- **Client management**: Reduced overhead in client cron operations to avoid blocking the main thread.
86+
- **Vector operations**: Improved RDB loading and RESTORE speed for vector sets by storing worst link information.
6087

6188
### Memory efficiency improvements
62-
- **JSON data types**: Memory footprint improvements through number inlining
63-
- **Memory tracking**: Reduced overhead associated with tracking malloc's usable memory
64-
- **Expiry handling**: Optimized expiry checks in scan callbacks
89+
90+
- **JSON data types**: Memory footprint improvements through number inlining.
91+
- **Memory tracking**: Reduced overhead associated with tracking malloc's usable memory.
92+
- **Expiry handling**: Optimized expiry checks in scan callbacks.
93+
- **Vector compression**: Additional compression variants for the SVS-VAMANA vector index reduce memory usage.
94+
95+
### Vector search performance
96+
97+
Redis 8.2 introduces the `SHARD_K_RATIO` parameter for KNN vector queries in Redis clusters. This unstable feature allows you to favor network latency over accuracy, providing faster responses when exact precision isn't critical.
6598

6699
### Enhanced metrics
67-
Redis 8.2 provides new metrics to help you monitor and troubleshoot your Redis instances:
100+
101+
Redis 8.2 provides new metrics to help you monitor and troubleshoot your Redis instances.
68102

69103
#### Memory metrics
104+
70105
- `used_memory_peak_time`: Timestamp when `used_memory_peak` was reached
71106

72107
#### Replication metrics
108+
73109
- `master_current_sync_attempts`: Number of sync attempts since last disconnection
74110
- `master_total_sync_attempts`: Total number of sync attempts to master
75111
- `master_link_up_since_seconds`: Duration since the replication link was established
@@ -78,8 +114,12 @@ Redis 8.2 provides new metrics to help you monitor and troubleshoot your Redis i
78114
These metrics provide better visibility into replication health and help you identify patterns in connection stability.
79115

80116
## Security improvements
117+
81118
Redis 8.2 includes important security fixes:
82-
- **CVE-2025-27151**: Fixed potential stack overflow and RCE vulnerability in redis-check-aof
119+
- **CVE-2025-27151**: Fixed potential stack overflow and RCE vulnerability in redis-check-aof.
120+
- **CVE-2025-32023**: Fixed out-of-bounds write vulnerability in HyperLogLog commands.
121+
- **CVE-2025-48367**: Improved connection handling to retry accepting connections even when errors occur.
83122

84123
## Component versions
124+
85125
Redis 8.2 continues the unified distribution approach introduced in Redis 8.0, delivering all functionality in a single Redis Open Source package without separate modules.

content/operate/oss_and_stack/stack-with-enterprise/release-notes/redisce/redisos-8.2-release-notes.md

Lines changed: 83 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,76 @@ categories:
66
- operate
77
- stack
88
description: Redis Open Source 8.2 release notes.
9-
linkTitle: v8.2.0 (July 2025)
9+
linkTitle: v8.2.0 (August 2025)
1010
min-version-db: blah
1111
min-version-rs: blah
1212
weight: 20
1313
---
1414

15+
## Redis Open Source 8.2 (August 2025)
16+
17+
This is the General Availability release of Redis 8.2 in Redis Open Source.
18+
19+
### Headlines
20+
21+
Redis 8.2 introduces major performance and memory footprint improvements, new commands, and command extensions.
22+
23+
### Major changes compared to 8.0
24+
25+
- Streams - new commands: `XDELEX` and `XACKDEL`; extension to `XADD` and `XTRIM`.
26+
- Bitmap - `BITOP`: new operators: `DIFF`, `DIFF1`, `ANDOR`, and `ONE`.
27+
- Query Engine - new SVS-VAMANA vector index type which supports vector compression.
28+
- More than 15 performance and resource utilization improvements.
29+
- New metrics: per-slot usage metrics, key size distributions for basic data types, and more.
30+
31+
### Binary distributions
32+
33+
- Alpine and Debian Docker images - https://hub.docker.com/_/redis
34+
- Install using snap - see https://github.com/redis/redis-snap
35+
- Install using brew - see https://github.com/redis/homebrew-redis
36+
- Install using RPM - see https://github.com/redis/redis-rpm
37+
- Install using Debian APT - see https://github.com/redis/redis-debian
38+
39+
### Redis 8.0.0 was tested on the following operating systems
40+
41+
- Ubuntu 22.04 (Jammy Jellyfish), 24.04 (Noble Numbat)
42+
- Rocky Linux 8.10, 9.5
43+
- AlmaLinux 8.10, 9.5
44+
- Debian 12 (Bookworm)
45+
- macOS 13 (Ventura), 14 (Sonoma), 15 (Sequoia)
46+
47+
### Security fixes (compared to 8.2-RC1)
48+
49+
- (CVE-2025-32023) Fix out-of-bounds write in `HyperLogLog` commands.
50+
- (CVE-2025-48367) Retry accepting other connections even if the accepted connection reports an error.
51+
52+
### New Features (compared to 8.2-RC1)
53+
54+
- [#14141](https://github.com/redis/redis/pull/14141) Keyspace notifications - new event types:
55+
- `OVERWRITTEN` - the value of a key is completely overwritten
56+
- `TYPE_CHANGED` - key type change
57+
58+
### Bug fixes (compared to 8.2-RC1)
59+
60+
- [#14162](https://github.com/redis/redis/pull/14162) Crash when using evport with I/O threads.
61+
- [#14163](https://github.com/redis/redis/pull/14163) `EVAL` crash when error table is empty.
62+
- [#14144](https://github.com/redis/redis/pull/14144) Vector sets - RDB format is not compatible with big endian machines.
63+
- [#14165](https://github.com/redis/redis/pull/14165) Endless client blocking for blocking commands.
64+
- [#14164](https://github.com/redis/redis/pull/14164) Prevent `CLIENT UNBLOCK` from unblocking `CLIENT PAUSE`.
65+
- [#14216](https://github.com/redis/redis/pull/14216) TTL was not removed by the `SET` command.
66+
- [#14224](https://github.com/redis/redis/pull/14224) `HINCRBYFLOAT` removes field expiration on replica.
67+
68+
### Performance and resource utilization improvements (compared to 8.2-RC1)
69+
70+
- [#Q6430](https://github.com/RediSearch/RediSearch/pull/6430) More compression variants for the SVS-VAMANA vector index.
71+
- [#Q6535](https://github.com/RediSearch/RediSearch/pull/6535) `SHARD_K_RATIO` parameter - favor network latency over accuracy for KNN vector query in a Redis cluster (unstable feature) (MOD-10359).
72+
- [#14144](https://github.com/redis/redis/pull/14144) Vector set - improve RDB loading / RESTORE speed by storing the worst link info .
73+
74+
### Modules API
75+
76+
- [#14051](https://github.com/redis/redis/pull/14051) `RedisModule_Get*`, `RedisModule_Set*` - allow modules to access Redis configurations.
77+
- [#14114](https://github.com/redis/redis/pull/14114) `RM_UnsubscribeFromKeyspaceEvents` - unregister a module from specific keyspace notifications.
78+
1579
## Redis Open Source 8.2-RC1 (July 2025)
1680

1781
This is the first Release Candidate of Redis Open Source 8.2.
@@ -30,31 +94,31 @@ Redis 8.2-RC1 is available as a Docker image and can be downloaded from [Docker
3094

3195
### New Features (compared to 8.2-M01)
3296

33-
- [#14130](https://github.com/redis/redis/pull/14130) Streams - new commands: `XDELEX` and `XACKDEL`; extension to `XADD` and `XTRIM`
34-
- [#14039](https://github.com/redis/redis/pull/14039) New command: `CLUSTER SLOT-STATS` - get per-slot usage metrics such as key count, CPU time, and network I/O
35-
- [#14122](https://github.com/redis/redis/pull/14122) `VSIM` - new `IN` operator for filtering expressions
36-
- [#Q6329](https://github.com/RediSearch/RediSearch/pull/6329), [#Q6394](https://github.com/RediSearch/RediSearch/pull/6394) - Query Engine - new SVS-VAMANA vector index type which supports vector compression (optimized for Intel machines)
97+
- [#14130](https://github.com/redis/redis/pull/14130) Streams - new commands: `XDELEX` and `XACKDEL`; extension to `XADD` and `XTRIM`.
98+
- [#14039](https://github.com/redis/redis/pull/14039) New command: `CLUSTER SLOT-STATS` - get per-slot usage metrics such as key count, CPU time, and network I/O.
99+
- [#14122](https://github.com/redis/redis/pull/14122) `VSIM` - new `IN` operator for filtering expressions.
100+
- [#Q6329](https://github.com/RediSearch/RediSearch/pull/6329), [#Q6394](https://github.com/RediSearch/RediSearch/pull/6394) - Query Engine - new SVS-VAMANA vector index type which supports vector compression (optimized for Intel machines).
37101

38102
### Bug fixes (compared to 8.2-M01)
39103

40-
- [#14143](https://github.com/redis/redis/pull/14143) Gracefully handle short read errors for hashes with TTL during full sync
104+
- [#14143](https://github.com/redis/redis/pull/14143) Gracefully handle short read errors for hashes with TTL during full sync.
41105

42106
### Performance and resource utilization improvements (compared to 8.2-M01)
43107

44-
- [#14103](https://github.com/redis/redis/pull/14103) Optimize `BITCOUNT` by introducing prefetching
45-
- [#14121](https://github.com/redis/redis/pull/14121) Optimize `SCAN` by performing expiration checks only on DBs with volatile keys
46-
- [#14140](https://github.com/redis/redis/pull/14140) Optimize expiry check in `scanCallback`
47-
- [#14131](https://github.com/redis/redis/pull/14131) Optimize `LREM`, `LPOS`, `LINSERT`, `ZRANK`, and more by caching `string2ll` results in `quicklistCompare`
48-
- [#14088](https://github.com/redis/redis/pull/14088) Optimize `COPY`, `RENAME`, and `RESTORE` when TTL is used
49-
- [#14074](https://github.com/redis/redis/pull/14074) Reduce the overhead associated with tracking `malloc`’s usable memory
50-
- [#13900](https://github.com/redis/redis/pull/13900) Optimize the client’s cron to avoid blocking the main thread
51-
- [#J1350](https://github.com/RedisJSON/RedisJSON/pull/1350) JSON - memory footprint improvement by inlining numbers (MOD-9511)
108+
- [#14103](https://github.com/redis/redis/pull/14103) Optimize `BITCOUNT` by introducing prefetching.
109+
- [#14121](https://github.com/redis/redis/pull/14121) Optimize `SCAN` by performing expiration checks only on DBs with volatile keys.
110+
- [#14140](https://github.com/redis/redis/pull/14140) Optimize expiry check in `scanCallback`.
111+
- [#14131](https://github.com/redis/redis/pull/14131) Optimize `LREM`, `LPOS`, `LINSERT`, `ZRANK`, and more by caching `string2ll` results in `quicklistCompare`.
112+
- [#14088](https://github.com/redis/redis/pull/14088) Optimize `COPY`, `RENAME`, and `RESTORE` when TTL is used.
113+
- [#14074](https://github.com/redis/redis/pull/14074) Reduce the overhead associated with tracking `malloc`’s usable memory.
114+
- [#13900](https://github.com/redis/redis/pull/13900) Optimize the client’s cron to avoid blocking the main thread.
115+
- [#J1350](https://github.com/RedisJSON/RedisJSON/pull/1350) JSON - memory footprint improvement by inlining numbers (MOD-9511).
52116

53117
### Metrics
54118

55-
- [#14067](https://github.com/redis/redis/pull/14067) `INFO`: `used_memory_peak_time` - time when `used_memory_peak` was hit
119+
- [#14067](https://github.com/redis/redis/pull/14067) `INFO`: `used_memory_peak_time` - time when `used_memory_peak` was hit.
56120
- [#13990](https://github.com/redis/redis/pull/13990) `INFO`:
57-
- `master_current_sync_attempts` - number of times the replica attempted to sync to a master since last disconnection
58-
- `master_total_sync_attempts` - number of times the replica attempted to sync to a master
59-
- `master_link_up_since_seconds` - number of seconds since the link has been up
60-
- `total_disconnect_time_sec` - total cumulative time the replica has been disconnected
121+
- `master_current_sync_attempts` - number of times the replica attempted to sync to a master since last disconnection.
122+
- `master_total_sync_attempts` - number of times the replica attempted to sync to a master.
123+
- `master_link_up_since_seconds` - number of seconds since the link has been up.
124+
- `total_disconnect_time_sec` - total cumulative time the replica has been disconnected.

0 commit comments

Comments
 (0)