{
  "schema_version": 2,
  "id": "operate/oss_and_stack/stack-with-enterprise/release-notes/redisce/redisos-8.2-release-notes",
  "title": "Redis Open Source 8.2 release notes",
  "url": "https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisce/redisos-8.2-release-notes/",
  "summary": "Redis Open Source 8.2 release notes.",
  "tags": [
    "docs",
    "operate",
    "stack"
  ],
  "last_updated": "2026-08-17T13:21:31-07:00",
  "page_type": "content",
  "content_hash": "875e4a68fc5fdcd776ba57ea0729f440b381a64fbcdf71a7e26baf28e2d07ce4",
  "sections": [
    {
      "id": "redis-open-source-829-august-2026",
      "title": "Redis Open Source 8.2.9 (August 2026)",
      "role": "overview",
      "text": "Update urgency: `SECURITY`: There are security fixes in the release."
    },
    {
      "id": "security-fixes",
      "title": "Security fixes",
      "role": "security",
      "text": "- (CVE-2026-62356) Miscalculated buffer size in `CMSketch` RDB loading may lead to heap OOB write.\n- Out-of-bounds access in TopK heap cleanup path (MOD-15410).\n- Use-after-free in the TLS pending-data list when a command closes another pending connection.\n- [#15478](https://github.com/redis/redis/pull/15478) ACL key permission bypass in `SORT`, `GEORADIUS`/`GEORADIUSBYMEMBER` and `XREAD`/`XREADGROUP`: the keys validated by ACL could differ from the keys the command actually accesses.\n- [#14847](https://github.com/redis/redis/pull/14847) Out-of-bounds `argv` access during key extraction when checking ACL permissions of a `KEYNUM keyspec` command (for example, `EVAL`) with wrong arity.\n- A malicious RDB payload with an out-of-range `SLOT_INFO slot id` causes memory corruption during RDB loading, which may lead to Remote Code Execution.\n- Vector Sets: missing node level validation when loading a vector set from RDB may lead to out-of-bounds access.\n- Vector Sets: use-after-free when `VREM` mutates the HNSW graph while background `VSIM` threads are still running.\n- Vector Sets: a negative `hnsw_search()` return was treated as a huge unsigned count, reading past the end of the result arrays.\n- [#15594](https://github.com/redis/redis/pull/15594) Use-after-free in the blocked-client list when reprocessing a command evicts another client blocked on the same key."
    },
    {
      "id": "redis-open-source-828-july-2026",
      "title": "Redis Open Source 8.2.8 (July 2026)",
      "role": "content",
      "text": "SECURITY: There are security fixes in the release."
    },
    {
      "id": "security-fixes-1",
      "title": "Security fixes",
      "role": "security",
      "text": "- Use-after-free when loading a stream consumer group via `RESTORE` may lead to Remote Code Execution.\n- RedisBloom/RedisBloom[#1041](https://github.com/redisbloom/redisbloom/pull/1041) Crafted RESTORE payloads in RedisBloom and TDigest may trigger out-of-bounds writes, potentially leading to remote code execution."
    },
    {
      "id": "bug-fixes",
      "title": "Bug fixes",
      "role": "content",
      "text": "- RedisBloom/RedisBloom[#1019](https://github.com/redisbloom/redisbloom/pull/1019) Replicate `CF.LOADCHUNK` data chunks to prevent silent Cuckoo Filter data loss on failover."
    },
    {
      "id": "redis-open-source-827-june-2026",
      "title": "Redis Open Source 8.2.7 (June 2026)",
      "role": "content",
      "text": "Update urgency: `HIGH`: There are critical bugs that may affect a subset of users."
    },
    {
      "id": "bug-fixes-1",
      "title": "Bug fixes",
      "role": "content",
      "text": "- [#15175](https://github.com/redis/redis/pull/15175), RediSearch/RediSearch[#9262](https://github.com/redisearch/redisearch/pull/9262) Redis fails to start on AArch64.\n- [#14537](https://github.com/redis/redis/pull/14537) `SCAN`: restore original filter order (revert change introduced in 8.2).\n- [#14816](https://github.com/redis/redis/pull/14816) setModuleEnumConfig() passing prefixed name to module callbacks.\n- [#14623](https://github.com/redis/redis/pull/14623) Streams: `XTRIM`/`XADD` with approx mode (`~`) don’t delete entries for `DELREF`/`ACKED` strategies.\n- [#14552](https://github.com/redis/redis/pull/14552) Streams: Incorrect behavior when using `XDELEX...`ACKED` after `XGROUP DESTROY`.\n- [#14420](https://github.com/redis/redis/pull/14420) Shutdown blocked client not being properly reset after shutdown cancellation.\n- [#14415](https://github.com/redis/redis/pull/14415) Potential crash in `lookupKey()` when `executing_client` is NULL.\n- [#14417](https://github.com/redis/redis/pull/14417) `CLUSTER FORGET` - heap-buffer-overflow.\n- [#15188](https://github.com/redis/redis/pull/15188) `cluster-announce-ip` rejecting hostnames (regression).\n- [#14667](https://github.com/redis/redis/pull/14667), [#14886](https://github.com/redis/redis/pull/14886) Potential TCP stalls/deadlocks.\n- RediSearch/RediSearch[#9484](https://github.com/redisearch/redisearch/pull/9484) Shard crash during background index scan of JSON documents with vector fields on Active-Active (CRDT) databases (MOD-15542).\n- RediSearch/RediSearch[#9635](https://github.com/redisearch/redisearch/pull/9635) Severe latency spikes and shard unresponsiveness when `EXPIRE` or `EXPIREAT` operations run concurrently with queries on large indexes (MOD-14930)."
    },
    {
      "id": "redis-open-source-826-may-2026",
      "title": "Redis Open Source 8.2.6 (May 2026)",
      "role": "content",
      "text": "Update urgency: `SECURITY`: There are security fixes in the release."
    },
    {
      "id": "security-fixes-2",
      "title": "Security fixes",
      "role": "security",
      "text": "- (CVE-2026-23479) Use-After-Free in unblock client flow may lead to Remote Code Execution.\n- (CVE-2026-25243) Invalid memory access in `RESTORE` may lead to Remote Code Execution.\n- (CVE-2026-23631) Lua Use-After-Free may lead to remote code execution.\n- (CVE-2026-25588) Invalid memory access in `RESTORE` may lead to Remote Code Execution (Time Series).\n- (CVE-2026-25589) Invalid memory access in `RESTORE` may lead to Remote Code Execution (Probabilistic)."
    },
    {
      "id": "bug-fixes-2",
      "title": "Bug fixes",
      "role": "content",
      "text": "- `SUBSCRIBE`, `PSUBSCRIBE`, `SSUBSCRIBE`: crash on OOM (RED-167788).\n- `CONFIG SET`: some settings allow invalid characters (RED-167787).\n- `SCRIPT DEBUG`: potential crash on scripts (RED-175507).\n- `VADD`: crash or buffer overflow on large `REDUCE` value (RED-170921).\n- `VSET`: crash on huge allocations (MOD-12678).\n- Potential crash on disconnections and TLS failures (Time Series) (MOD-14850).\n- RediSearch/RediSearch[#8743](https://github.com/redisearch/redisearch/pull/8743) Crash when many keys receive expirations under heavy TTL activity (MOD-14500).\n- RediSearch/RediSearch[#8850](https://github.com/redisearch/redisearch/pull/8850) HNSW vector index memory growth under high-churn workloads until shard restart (MOD-13761).\n- RediSearch/RediSearch[#9178](https://github.com/redisearch/redisearch/pull/9178) Coordinator deadlock under mixed `FT.SEARCH` and `FT.AGGREGATE` load (MOD-14268).\n- RediSearch/RediSearch[#9049](https://github.com/redisearch/redisearch/pull/9049) `FT.PROFILE` output is inconsistent when a profiled value is missing (MOD-10560).\n- RediSearch/RediSearch[#8793](https://github.com/redisearch/redisearch/pull/8793) `FT.EXPLAIN` does not lock, causing a race with concurrent index changes (MOD-14461).\n- RediSearch/RediSearch[#8600](https://github.com/redisearch/redisearch/pull/8600) `FILTER` returns inconsistent results with multiple indexes sharing field aliases (MOD-14063).\n- RediSearch/RediSearch[#8662](https://github.com/redisearch/redisearch/pull/8662) `FILTER` behavior depends on property order in the expression (MOD-14342).\n- RediSearch/RediSearch[#8602](https://github.com/redisearch/redisearch/pull/8602) Filter expressions are evaluated for indexes that do not match the document type (MOD-14064).\n- RediSearch/RediSearch[#8601](https://github.com/redisearch/redisearch/pull/8601) Documents are inconsistently included or excluded depending on the indexing path taken (MOD-13948).\n- RediSearch/RediSearch[#8599](https://github.com/redisearch/redisearch/pull/8599) `RENAME` notification handler loads the wrong key, causing stale index entries after a rename (MOD-14062).\n- RediSearch/RediSearch[#9019](https://github.com/redisearch/redisearch/pull/9019) `PERSIST` and `HPERSIST` notifications are not reflected in index expiration tracking (MOD-14800).\n- RediSearch/RediSearch[#9081](https://github.com/redisearch/redisearch/pull/9081) `FT.SPELLCHECK` treats `PARAMS` placeholders as literal terms instead of resolving them (MOD-10596).\n- RediSearch/RediSearch[#8464](https://github.com/redisearch/redisearch/pull/8464) GC out-of-memory on replica shards leaves the replica in an inconsistent state (MOD-14066).\n- RediSearch/RediSearch[#8888](https://github.com/redisearch/redisearch/pull/8888) `FT.CURSOR` enters an infinite loop when the ACL user lacks specific permissions (MOD-14479).\n- RediSearch/RediSearch[#9166](https://github.com/redisearch/redisearch/pull/9166) Crash on `FT.SEARCH` when topology validation fails (for example, some nodes unreachable) (MOD-14475).\n- RediSearch/RediSearch[#8453](https://github.com/redisearch/redisearch/pull/8453) `FT.INFO`-style output no longer reports zero-index summary data when no indices exist (MOD-14081).\n- RediSearch/RediSearch[#9076](https://github.com/redisearch/redisearch/pull/9076) `FT.CREATE` now rejects schema definitions with invalid option combinations at creation time (MOD-14655)."
    },
    {
      "id": "metrics",
      "title": "Metrics",
      "role": "content",
      "text": "- RediSearch/RediSearch[#8235](https://github.com/redisearch/redisearch/pull/8235) `FT.PROFILE`: added queue time tracking (MOD-13602)."
    },
    {
      "id": "redis-open-source-825-february-2026",
      "title": "Redis Open Source 8.2.5 (February 2026)",
      "role": "content",
      "text": "Update urgency: `SECURITY`: There are security fixes in the release."
    },
    {
      "id": "security-fixes-3",
      "title": "Security fixes",
      "role": "security",
      "text": "- A user can manipulate data read by a connection by injecting `\\r\\n` sequences into a Redis error reply."
    },
    {
      "id": "redis-open-source-824-february-2026",
      "title": "Redis Open Source 8.2.4 (February 2026)",
      "role": "content",
      "text": "Update urgency: `SECURITY`: There are security fixes in the release."
    },
    {
      "id": "security-fixes-4",
      "title": "Security fixes",
      "role": "security",
      "text": "- RedisTimeSeries/RedisTimeSeries[#1837](https://github.com/redistimeseries/redistimeseries/pull/1837), RedisJSON/RedisJSON[#1474](https://github.com/redisjson/redisjson/pull/1474) Hide Personally Identifiable Information from server log."
    },
    {
      "id": "bug-fixes-3",
      "title": "Bug fixes",
      "role": "content",
      "text": "- RedisJSON/RedisJSON[#1430](https://github.com/redisjson/redisjson/pull/1430) Malformed panic log messages (MOD-9365).\n- RedisBloom/RedisBloom[#945](https://github.com/redisbloom/redisbloom/pull/945) Bloom filter: crash on RDB load on large number of filters (MOD-11590).\n- RediSearch/RediSearch[#6973](https://github.com/redisearch/redisearch/pull/6973) Correct empty string token counting in byteOffset calculations to ensure accurate text position tracking (MOD-11233).\n- RediSearch/RediSearch[#6995](https://github.com/redisearch/redisearch/pull/6995) Prevent `FT.INFO` command fanout to replicas to reduce unnecessary cluster traffic.\n- RediSearch/RediSearch[#7034](https://github.com/redisearch/redisearch/pull/7034) Correct goto statement handling on RDB load.\n- RediSearch/RediSearch[#7154](https://github.com/redisearch/redisearch/pull/7154) Display Background Indexing OOM warning in `FT.AGGREGATE` when memory limits are approached (MOD-11817).\n- RediSearch/RediSearch[#7219](https://github.com/redisearch/redisearch/pull/7219) Resolve concurrency issue in Reducer that caused intermittent errors (MOD-12243).\n- RediSearch/RediSearch[#7255](https://github.com/redisearch/redisearch/pull/7255) Correct `BM25STD` underflow wraparound to prevent incorrect scoring (MOD-12223).\n- RediSearch/RediSearch[#7264](https://github.com/redisearch/redisearch/pull/7264) Ensure accurate `totalDocsLen` updates to maintain correct document statistics (MOD-12234).\n- RediSearch/RediSearch[#7275](https://github.com/redisearch/redisearch/pull/7275) Report used memory as unsigned long to prevent overflow (RED-169833).\n- RediSearch/RediSearch[#7350](https://github.com/redisearch/redisearch/pull/7350) Allow `FT.CREATE` with LeanVec parameters on non-Intel architectures (RED-176382).\n- RediSearch/RediSearch[#7384](https://github.com/redisearch/redisearch/pull/7384) Reduce index load from RDB temporary memory overhead (MOD-12212).\n- RediSearch/RediSearch[#7435](https://github.com/redisearch/redisearch/pull/7435) Ensure full profile output on timeout with `RETURN` policy in `FT.PROFILE` (MOD-12320).\n- RediSearch/RediSearch[#7446](https://github.com/redisearch/redisearch/pull/7446) Remove outdated validation from debug aggregate in cluster mode (MOD-12435).\n- RediSearch/RediSearch[#7458](https://github.com/redisearch/redisearch/pull/7458) Correct GC regression that caused stability issues (MOD-12538).\n- RediSearch/RediSearch[#7459](https://github.com/redisearch/redisearch/pull/7459) Prevent potential double-free in Fork GC error path (MOD-12521).\n- RediSearch/RediSearch[#7470](https://github.com/redisearch/redisearch/pull/7470) Remove draining from Flush callback to avoid blocking.\n- RediSearch/RediSearch[#7499](https://github.com/redisearch/redisearch/pull/7499) Propagate `HGETALL` command in HDT mode (MOD-12662).\n- RediSearch/RediSearch[#7534](https://github.com/redisearch/redisearch/pull/7534) Reduce number of worker threads asynchronously to prevent performance degradation (MOD-12252, MOD-11658).\n- RediSearch/RediSearch[#7554](https://github.com/redisearch/redisearch/pull/7554) Handle Coordinator case when `SCORE` is sent alone without extra fields (MOD-12647).\n- RediSearch/RediSearch[#7561](https://github.com/redisearch/redisearch/pull/7561) Prevent memory corruption when freeing searchRequestCtx on error (MOD-12699).\n- RediSearch/RediSearch[#7685](https://github.com/redisearch/redisearch/pull/7685) Resolve cursor logical leak that could lead to resource exhaustion (MOD-12807).\n- RediSearch/RediSearch[#7710](https://github.com/redisearch/redisearch/pull/7710) Add support for `WITHCOUNT` in `FT.AGGREGATE` (MOD-11751).\n- RediSearch/RediSearch[#7794](https://github.com/redisearch/redisearch/pull/7794) Correctly handle binary data with embedded NULLs to prevent crashes (MOD-13010).\n- RediSearch/RediSearch[#7812](https://github.com/redisearch/redisearch/pull/7812) Correct SVS GC for no-workers case (MOD-12983).\n- RediSearch/RediSearch[#7873](https://github.com/redisearch/redisearch/pull/7873) Handle warnings in empty `FT.AGGREGATE` replies in cluster mode (MOD-12640).\n- RediSearch/RediSearch[#7886](https://github.com/redisearch/redisearch/pull/7886) Remove non-TEXT fields from spec's keys dictionary to prevent incorrect field handling (MOD-13150).\n- RediSearch/RediSearch[#7901](https://github.com/redisearch/redisearch/pull/7901) Support multiple warnings in reply to prevent warning loss (MOD-13252).\n- RediSearch/RediSearch[#8083](https://github.com/redisearch/redisearch/pull/8083) Correct `FULLTEXT` field metric count accuracy (MOD-13432).\n- RediSearch/RediSearch[#8153](https://github.com/redisearch/redisearch/pull/8153) Resolve config registration issue (RED-171841).\n- RediSearch/RediSearch[#7371](https://github.com/redisearch/redisearch/pull/7371) Validate `search-min-operation-workers` min value correctly (MOD-12383).\n- RediSearch/RediSearch[#8151](https://github.com/redisearch/redisearch/pull/8151) Correct `FT.PROFILE` shard total profile time calculation (MOD-13735, MOD-13181).\n- RediSearch/RediSearch[#7165](https://github.com/redisearch/redisearch/pull/7165) (Redis Enterprise only) `FT.DROPINDEX` as touches-arbitrary-keys for proper cluster handling causing crash on A-A (MOD-11090).\n- RediSearch/RediSearch[#7023](https://github.com/redisearch/redisearch/pull/7023) (Redis Enterprise only) Ensure all `FT.SUG*` commands are hashslot-aware to prevent cluster routing errors (MOD-11756)."
    },
    {
      "id": "performance-and-resource-utilization-improvements",
      "title": "Performance and resource utilization improvements",
      "role": "performance",
      "text": "- RediSearch/RediSearch[#7496](https://github.com/redisearch/redisearch/pull/7496) Vector search performance improvements (MOD-12011, MOD-12063, MOD-12629, MOD-12346).\n- RediSearch/RediSearch[#7694](https://github.com/redisearch/redisearch/pull/7694) Use asynchronous jobs in GC for SVS to reduce blocking (MOD-12668)."
    },
    {
      "id": "metrics-1",
      "title": "Metrics",
      "role": "content",
      "text": "- RediSearch/RediSearch[#7614](https://github.com/redisearch/redisearch/pull/7614) Track timeout errors and warnings in info (MOD-12419).\n- RediSearch/RediSearch[#7646](https://github.com/redisearch/redisearch/pull/7646) Track `maxprefixexpansions` errors and warnings in info (MOD-12417).\n- RediSearch/RediSearch[#7957](https://github.com/redisearch/redisearch/pull/7957) Persist query warnings across cursor reads (MOD-12984).\n- RediSearch/RediSearch[#7341](https://github.com/redisearch/redisearch/pull/7341) Rename `FT.PROFILE` counter fields for clarity (MOD-6056).\n- RediSearch/RediSearch[#7436](https://github.com/redisearch/redisearch/pull/7436) Enhance `FT.PROFILE` with vector search execution details (MOD-12263).\n- RediSearch/RediSearch[#7737](https://github.com/redisearch/redisearch/pull/7737) Add `Internal cursor reads` metric to cluster `FT.PROFILE` output (MOD-12414).\n- RediSearch/RediSearch[#7692](https://github.com/redisearch/redisearch/pull/7692) Declare query error struct on `_FT.CURSOR PROFILE` (MOD-12955).\n- RediSearch/RediSearch[#7552](https://github.com/redisearch/redisearch/pull/7552) Add `active_io_threads` metric (MOD-12069, MOD-12695).\n- RediSearch/RediSearch[#7564](https://github.com/redisearch/redisearch/pull/7564) Add `active_worker_threads` metric (MOD-12694, MOD-12069).\n- RediSearch/RediSearch[#7623](https://github.com/redisearch/redisearch/pull/7623) Add `active_coord_threads` metric (MOD-12694, MOD-12069).\n- RediSearch/RediSearch[#7626](https://github.com/redisearch/redisearch/pull/7626) Add `*_pending_jobs` metrics for job queues (MOD-12069).\n- RediSearch/RediSearch[#7672](https://github.com/redisearch/redisearch/pull/7672) Add pending workers admin jobs metric (MOD-12069, MOD-12791).\n- RediSearch/RediSearch[#7732](https://github.com/redisearch/redisearch/pull/7732) Introduce `active_topology_update_threads` metric (MOD-12069, MOD-12790).\n- RediSearch/RediSearch[#7759](https://github.com/redisearch/redisearch/pull/7759) Extend indexing metrics for better observability (MOD-12070)."
    },
    {
      "id": "configuration-parameters",
      "title": "Configuration parameters",
      "role": "configuration",
      "text": "- RediSearch/RediSearch[#7083](https://github.com/redisearch/redisearch/pull/7083) Add default scorer configuration option (MOD-10037)"
    },
    {
      "id": "redis-open-source-823-november-2025",
      "title": "Redis Open Source 8.2.3 (November 2025)",
      "role": "content",
      "text": "Update urgency: `SECURITY`: There is a security fix in the release."
    },
    {
      "id": "security-fixes-5",
      "title": "Security fixes",
      "role": "security",
      "text": "- (CVE-2025-62507) `XACKDEL` - potential stack overflow and RCE"
    },
    {
      "id": "bug-fixes-4",
      "title": "Bug fixes",
      "role": "content",
      "text": "- `HGETEX` - potential crash when `FIELDS` is used  and `numfields` is missing\n- Potential crash on HyperLogLog with 2GB+ entries\n- Cuckoo filter - Division by zero in Cuckoo filter insertion\n- Cuckoo filter - Counter overflow\n- Bloom filter - Arbitrary memory read/write with invalid filter\n- Bloom filter - Out-of-bounds access with empty chain\n- Bloom filter - Restore invalid filter\n- Top-k - Out-of-bounds access"
    },
    {
      "id": "redis-open-source-822-october-2025",
      "title": "Redis Open Source 8.2.2 (October 2025)",
      "role": "content",
      "text": "Update urgency: `SECURITY`: There are security fixes in the release."
    },
    {
      "id": "security-fixes-6",
      "title": "Security fixes",
      "role": "security",
      "text": "- (CVE-2025-49844) A Lua script may lead to remote code execution\n- (CVE-2025-46817) A Lua script may lead to integer overflow and potential RCE\n- (CVE-2025-46818) A Lua script can be executed in the context of another user\n- (CVE-2025-46819) LUA out-of-bound read"
    },
    {
      "id": "new-features",
      "title": "New Features",
      "role": "content",
      "text": "- [#14223](https://github.com/redis/redis/pull/14223) `VSIM`: new `EPSILON` argument to specify maximum distance\n- [#Q6867](https://github.com/RediSearch/RediSearch/pull/6867), [#Q6845](https://github.com/RediSearch/RediSearch/pull/6845) `SVS-VAMANA`: allow use of `BUILD_INTEL_SVS_OPT` flag for Intel optimisations (MOD-10920)"
    },
    {
      "id": "bug-fixes-5",
      "title": "Bug fixes",
      "role": "content",
      "text": "- [#14319](https://github.com/redis/redis/pull/14319) Potential crash on Lua script defrag\n- [#14323](https://github.com/redis/redis/pull/14323) Potential crash on streams and HFE defrag\n- [#14330](https://github.com/redis/redis/pull/14330) Potential use-after-free after pubsub and Lua defrag\n- [#14288](https://github.com/redis/redis/pull/14288) `MEMORY USAGE`: fix reported value\n- [#14259](https://github.com/redis/redis/pull/14259) `XGROUP CREATE`, `XGROUP SETID`: limit `ENTRIESREAD` value to the number of entries added to the stream\n- [#J1374](https://github.com/RedisJSON/RedisJSON/issues/1374) `JSON.DEL` doesn’t delete all matching object members / array elements (MOD-11032, MOD-11067)\n- [#P886](https://github.com/RedisBloom/RedisBloom/pull/886) `TDIGEST.CREATE` crashes (OOM) on huge initialization values (MOD-10840)\n- [#Q6787](https://github.com/RediSearch/RediSearch/pull/6787) Potential shard restart while reindexing vectors on RDB loading (MOD-11011)\n- [#Q6676](https://github.com/RediSearch/RediSearch/pull/6676) Potential crash when using small `CONSTRUCTION_WINDOW_SIZE` on `SVS-VAMANA` (MOD-10771)\n- [#Q6701](https://github.com/RediSearch/RediSearch/pull/6701) Potential crash (OOM) in heavy updates due to a file descriptor leak (MOD-10975)\n- [#Q6723](https://github.com/RediSearch/RediSearch/pull/6723) Potential crash when using ACL rules (MOD-10748)\n- [#Q6641](https://github.com/RediSearch/RediSearch/pull/6641) `INFO SEARCH`: `search_used_memory_indexes` vector index memory value incorrect\n- [#Q6665](https://github.com/RediSearch/RediSearch/pull/6665) `FT.PROFILE`: more accurate execution duration measurements (MOD-10622)"
    },
    {
      "id": "performance-and-resource-utilization",
      "title": "Performance and resource utilization",
      "role": "performance",
      "text": "- [#Q6648](https://github.com/RediSearch/RediSearch/pull/6648) Improve RESP3 serialization performance (MOD-9687)"
    },
    {
      "id": "metrics-2",
      "title": "Metrics",
      "role": "content",
      "text": "- [#Q6671](https://github.com/RediSearch/RediSearch/pull/6671) `INFO SEARCH`: new `SVS-VAMANA` metrics"
    },
    {
      "id": "redis-open-source-821-august-2025",
      "title": "Redis Open Source 8.2.1 (August 2025)",
      "role": "content",
      "text": "Update urgency: `MODERATE`: Program an upgrade of the server, but it's not urgent."
    },
    {
      "id": "bug-fixes-6",
      "title": "Bug fixes",
      "role": "content",
      "text": "- [#14240](https://github.com/redis/redis/pull/14240) `INFO KEYSIZES` - potential incorrect histogram updates on cluster mode with modules.\n- [#14274](https://github.com/redis/redis/pull/14274) Disable Active Defrag during flushing replica.\n- [#14276](https://github.com/redis/redis/pull/14276) `XADD` or `XTRIM` can crash the server after loading RDB.\n- [#Q6601](https://github.com/RediSearch/RediSearch/pull/6601) Potential crash when running `FLUSHDB` (MOD-10681)."
    },
    {
      "id": "performance-and-resource-utilization-1",
      "title": "Performance and resource utilization",
      "role": "performance",
      "text": "- Query Engine - LeanVec and LVQ proprietary Intel optimizations were removed from Redis Open Source.\n- [#Q6621](https://github.com/RediSearch/RediSearch/pull/6621) Fix regression in `INFO` (MOD-10779)."
    },
    {
      "id": "redis-open-source-82-august-2025",
      "title": "Redis Open Source 8.2 (August 2025)",
      "role": "content",
      "text": "This is the General Availability release of Redis 8.2 in Redis Open Source."
    },
    {
      "id": "headlines",
      "title": "Headlines",
      "role": "content",
      "text": "Redis 8.2 introduces major performance and memory footprint improvements, new commands, and command extensions."
    },
    {
      "id": "major-changes-compared-to-80",
      "title": "Major changes compared to 8.0",
      "role": "content",
      "text": "- Streams - new commands: `XDELEX` and `XACKDEL`; extension to `XADD` and `XTRIM`.\n- Bitmap - `BITOP`: new operators: `DIFF`, `DIFF1`, `ANDOR`, and `ONE`.\n- Query Engine - new SVS-VAMANA vector index type which supports vector compression.\n- More than 15 performance and resource utilization improvements.\n- New metrics: per-slot usage metrics, key size distributions for basic data types, and more."
    },
    {
      "id": "binary-distributions",
      "title": "Binary distributions",
      "role": "content",
      "text": "- Alpine and Debian Docker images - https://hub.docker.com/_/redis\n- Install using snap - see https://github.com/redis/redis-snap\n- Install using brew - see https://github.com/redis/homebrew-redis\n- Install using RPM - see https://github.com/redis/redis-rpm\n- Install using Debian APT - see https://github.com/redis/redis-debian"
    },
    {
      "id": "redis-800-was-tested-on-the-following-operating-systems",
      "title": "Redis 8.0.0 was tested on the following operating systems",
      "role": "content",
      "text": "- Ubuntu 22.04 (Jammy Jellyfish), 24.04 (Noble Numbat)\n- Rocky Linux 8.10, 9.5\n- AlmaLinux 8.10, 9.5\n- Debian 12 (Bookworm)\n- macOS 13 (Ventura), 14 (Sonoma), 15 (Sequoia)"
    },
    {
      "id": "security-fixes-compared-to-82-rc1",
      "title": "Security fixes (compared to 8.2-RC1)",
      "role": "security",
      "text": "- (CVE-2025-32023) Fix out-of-bounds write in `HyperLogLog` commands.\n- (CVE-2025-48367) Retry accepting other connections even if the accepted connection reports an error."
    },
    {
      "id": "new-features-compared-to-82-rc1",
      "title": "New Features (compared to 8.2-RC1)",
      "role": "content",
      "text": "- [#14141](https://github.com/redis/redis/pull/14141) Keyspace notifications - new event types:\n  - `OVERWRITTEN` - the value of a key is completely overwritten\n  - `TYPE_CHANGED` - key type change"
    },
    {
      "id": "bug-fixes-compared-to-82-rc1",
      "title": "Bug fixes (compared to 8.2-RC1)",
      "role": "content",
      "text": "- [#14162](https://github.com/redis/redis/pull/14162) Crash when using evport with I/O threads.\n- [#14163](https://github.com/redis/redis/pull/14163) `EVAL` crash when error table is empty.\n- [#14144](https://github.com/redis/redis/pull/14144) Vector sets - RDB format is not compatible with big endian machines.\n- [#14165](https://github.com/redis/redis/pull/14165) Endless client blocking for blocking commands.\n- [#14164](https://github.com/redis/redis/pull/14164) Prevent `CLIENT UNBLOCK` from unblocking `CLIENT PAUSE`.\n- [#14216](https://github.com/redis/redis/pull/14216) TTL was not removed by the `SET` command.\n- [#14224](https://github.com/redis/redis/pull/14224) `HINCRBYFLOAT` removes field expiration on replica."
    },
    {
      "id": "performance-and-resource-utilization-improvements-compared-to-82-rc1",
      "title": "Performance and resource utilization improvements (compared to 8.2-RC1)",
      "role": "performance",
      "text": "- [#Q6430](https://github.com/RediSearch/RediSearch/pull/6430) More compression variants for the SVS-VAMANA vector index.\n- [#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).\n- [#14144](https://github.com/redis/redis/pull/14144) Vector set - improve RDB loading / RESTORE speed by storing the worst link info ."
    },
    {
      "id": "modules-api",
      "title": "Modules API",
      "role": "content",
      "text": "- [#14051](https://github.com/redis/redis/pull/14051) `RedisModule_Get*`, `RedisModule_Set*` - allow modules to access Redis configurations.\n- [#14114](https://github.com/redis/redis/pull/14114) `RM_UnsubscribeFromKeyspaceEvents` - unregister a module from specific keyspace notifications."
    },
    {
      "id": "redis-open-source-82-rc1-july-2025",
      "title": "Redis Open Source 8.2-RC1 (July 2025)",
      "role": "content",
      "text": "This is the first Release Candidate of Redis Open Source 8.2.\n\nRelease Candidates are feature-complete pre-releases. Pre-releases are not suitable for production use."
    },
    {
      "id": "headlines-1",
      "title": "Headlines",
      "role": "content",
      "text": "Redis 8.2 introduces major performance and memory footprint improvements, new commands, and command extensions.\n\nRedis 8.2-RC1 is available as a Docker image and can be downloaded from [Docker Hub](https://hub.docker.com/_/redis). Additional distributions will be introduced in upcoming pre-releases."
    },
    {
      "id": "security-fixes-compared-to-82-m01",
      "title": "Security fixes (compared to 8.2-M01)",
      "role": "security",
      "text": "- (CVE-2025-27151) redis-check-aof may lead to stack overflow and potential RCE"
    },
    {
      "id": "new-features-compared-to-82-m01",
      "title": "New Features (compared to 8.2-M01)",
      "role": "content",
      "text": "- [#14130](https://github.com/redis/redis/pull/14130) Streams - new commands: `XDELEX` and `XACKDEL`; extension to `XADD` and `XTRIM`.\n- [#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.\n- [#14122](https://github.com/redis/redis/pull/14122) `VSIM` - new `IN` operator for filtering expressions.\n- [#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)."
    },
    {
      "id": "bug-fixes-compared-to-82-m01",
      "title": "Bug fixes (compared to 8.2-M01)",
      "role": "content",
      "text": "- [#14143](https://github.com/redis/redis/pull/14143) Gracefully handle short read errors for hashes with TTL during full sync."
    },
    {
      "id": "performance-and-resource-utilization-improvements-compared-to-82-m01",
      "title": "Performance and resource utilization improvements (compared to 8.2-M01)",
      "role": "performance",
      "text": "- [#14103](https://github.com/redis/redis/pull/14103) Optimize `BITCOUNT` by introducing prefetching.\n- [#14121](https://github.com/redis/redis/pull/14121) Optimize `SCAN` by performing expiration checks only on DBs with volatile keys.\n- [#14140](https://github.com/redis/redis/pull/14140) Optimize expiry check in `scanCallback`.\n- [#14131](https://github.com/redis/redis/pull/14131) Optimize `LREM`, `LPOS`, `LINSERT`, `ZRANK`, and more by caching `string2ll` results in `quicklistCompare`.\n- [#14088](https://github.com/redis/redis/pull/14088) Optimize `COPY`, `RENAME`, and `RESTORE` when TTL is used.\n- [#14074](https://github.com/redis/redis/pull/14074) Reduce the overhead associated with tracking `malloc`’s usable memory.\n- [#13900](https://github.com/redis/redis/pull/13900) Optimize the client’s cron to avoid blocking the main thread.\n- [#J1350](https://github.com/RedisJSON/RedisJSON/pull/1350) JSON - memory footprint improvement by inlining numbers (MOD-9511)."
    },
    {
      "id": "metrics-3",
      "title": "Metrics",
      "role": "content",
      "text": "- [#14067](https://github.com/redis/redis/pull/14067) `INFO`: `used_memory_peak_time` - time when `used_memory_peak` was hit.\n- [#13990](https://github.com/redis/redis/pull/13990) `INFO`:\n  - `master_current_sync_attempts` - number of times the replica attempted to sync to a master since last disconnection.\n  - `master_total_sync_attempts` - number of times the replica attempted to sync to a master.\n  - `master_link_up_since_seconds` - number of seconds since the link has been up.\n  - `total_disconnect_time_sec` - total cumulative time the replica has been disconnected."
    }
  ],
  "examples": []
}
