This is the General Availability release of Redis 8.6 in Redis Open Source.
Major changes compared to 8.4
- Substantial performance improvements
- Substantial memory reduction for hashes (hashtable-encoded) and sorted sets (skiplist-encoded)
- Streams:
XADDidempotency (at-most-once guarantee) with newIDMPAUTOandIDMParguments - New eviction policies - least recently modified:
volatile-lrmandallkeys-lrm - Hot keys detection and reporting; new command:
HOTKEYS - TLS certificate-based automatic client authentication
- Time series: support NaN values; new aggregators:
COUNTNANandCOUNTALL
Binary distributions
- Alpine and Debian Docker images - https://hub.docker.com/_/redis
- Install using snap - see https://github.com/redis/redis-snap
- Install using brew - see https://github.com/redis/homebrew-redis
- Install using RPM - see https://github.com/redis/redis-rpm
- Install using Debian APT - see https://github.com/redis/redis-debian
Operating systems we test Redis 8.6 on
- Ubuntu 22.04 (Jammy Jellyfish), 24.04 (Noble Numbat)
- Rocky Linux 8.10, 9.5
- AlmaLinux 8.10, 9.5, 10.1
- Debian 12 (Bookworm), Debian 13 (Trixie)
- macOS 14 (Sonoma), 15 (Sequoia)
New Features (compared to 8.6-RC1)
- redis/redis#14695 Keys memory size histograms
Performance and resource utilization improvements (compared to 8.6-RC1)
- redis/redis#14714 Optimize user ACL permission verification
- redis/redis#14692 Optimize peak memory metric collection
- redis/redis#14739 Avoid allocating and releasing list node in reply copy avoidance
- redis/redis#14713 Reduce per command syscalls by reusing cached time when hardware monotonic clock is available
- redis/redis#14726 Optimize
XREADGROUP CLAIM - redis/redis#13962 Vector set: replace manual popcount with __builtin_popcountll for binary vector distance (Intel, AMD, ARM)
- redis/redis#14474 Vector set: vectorized the quantized 8-bit vector distance calculation (Intel, AMD)
- redis/redis#14492 Vector set: vectorize binary quantization path for vectorsets distance calculation (Intel, AMD)
Configuration parameters
- redis/redis#14719
cluster-slot-stats-enabled- per-slot resource consumptions statistics to collect - redis/redis#14695
key-memory-histogramscollect memory consumption histograms per data type
Metrics
- redis/redis#14695
db0_distrib_lists_sizes,db0_distrib_sets_sizes,db0_distrib_hashes_sizes,db0_distrib_zsets_sizes
known bugs and limitations
- Streams: avoid using
XADDwith the newIDMPorIDMPAUTOoptions when usingappendonly yeswithaof-use-rdb-preamble no(non default).
This limitation will be removed in the next patch.
Hashes
MSYS2 Builds Hashes
Algorithm : SHA256
Hash : E38C500CDCD6592488C72A8D7E862F061DBF749A84D519388F357D520B3ED8EF
Path : D:\a\redis-windows\redis-windows\Redis-8.6.0-Windows-x64-msys2.zip
Algorithm : SHA256
Hash : 4094DB6A98605E5733D62569569C7BD4F1241B4EEC0C6477C9D58F89BF084412
Path : D:\a\redis-windows\redis-windows\Redis-8.6.0-Windows-x64-msys2-with-Service.zip
Cygwin Builds Hashes
Algorithm : SHA256
Hash : B4801CB452C156A00DB9EFF033AE263DB5102E2E30B5B8A5418BA8D6CA961190
Path : D:\a\redis-windows\redis-windows\Redis-8.6.0-Windows-x64-cygwin.zip
Algorithm : SHA256
Hash : 1DDFEE770FD880BAB50C3EA64CED606B7697FDB65A347D07483D396D0F8957C5
Path : D:\a\redis-windows\redis-windows\Redis-8.6.0-Windows-x64-cygwin-with-Service.zip
From workflow: https://github.com/redis-windows/redis-windows/actions/runs/21869353765