Redis 8.10.0
Redis 8.10.0 Overview
Redis 8.10.0 is now generally available — a significant release that introduces compact hash encoding, new commands across modules, TLS server-to-server authentication, and a slew of performance improvements. This update follows the 8.8 series and brings Redis's data structure toolkit forward considerably.
Breaking Changes
- Compact hash migration — Existing hashes are not automatically re-encoded; use
HIMPORTor the newOBJENCODINGcommands to migrate. - TLS peer certificate validation — Servers enabling peer-based TLS auth must have valid certificates configured on both ends.
- BACKUP command semantics — The new
BACKUPcommand changes snapshot behavior; review your backup scripts.
New Features
- Compact hashes — A new hash encoding that stores field names just once per schema, dramatically reducing memory overhead for keys sharing the same field layout.
- HIMPORT command — High-throughput bulk insertion for compact hashes, designed for large-scale data loading.
- TLS peer certificate authentication — Server-to-server TLS authentication using peer certificates, enabling zero-trust cluster deployments.
- LMOVEM / BLMOVEM — Atomic move of multiple elements between lists, reducing round trips for batch list operations.
- SUNIONCARD / SDIFFCARD — Get the cardinality of set union and difference without retrieving full sets.
- BACKUP command — Node-side backup and restore built on multi-part AOF (MP-AOF), simplifying operational workflows.
- Extended stream commands — XREAD and XREADGROUP now support MAXCOUNT and MAXSIZE to cap cumulative reply entries and size.
Search and Time Series Enhancements
- FT.ALIASLIST — List all aliases for a given index, improving index management at scale.
- Stemmer support — Malay and Tagalog languages now supported in full-text search.
- JSONPath extensions — Broader query path support for documents.
- TS.NRANGE / TS.NREVRANGE — Query across multiple time series and group results by timestamp.
- TS.READ — Optionally blocking read on time series.
- TS.QUERYLABELS — Retrieve labels and label-values from time series.
- TS.MRANGE / TS.MREVRANGE — New EXCLUDEEMPTY argument to filter out series with no reported samples.
Bug Fixes
- Fixed division-by-zero when active defragmentation thresholds are configured with equal or reversed values (#15513)
- Clients blocked on BLPOP, BLMOVE, or BLMOVEM could remain blocked after SORT with STORE replaced the target key with a list (#15453)
- Memory usage reported for compressed replication clients was sometimes understated (#15499)
- Notify modules when node's own IP/port changes (#15518)
- Loading an AOF file with an RDB preamble could fail when active defragmentation was enabled (#15539)
- RediSearch: crash in numeric range tree during background GC with an empty leaf
- RediSearch: FT.CREATE and FT.ALTER now reject empty string field names, preventing crash loops
Redis 8.10.0 is available now on Docker Hub, Homebrew, APT, and RPM repositories. Upgrade instructions are available in the official Redis documentation.