|
| 1 | +--- |
| 2 | +title: Redis 7.2 |
| 3 | +alwaysopen: false |
| 4 | +categories: |
| 5 | +- docs |
| 6 | +- operate |
| 7 | +- rs |
| 8 | +- rcw |
| 9 | +description: What's new in Redis 7.2 |
| 10 | +linkTitle: What's new in Redis 7.2 |
| 11 | +weight: 20 |
| 12 | +--- |
| 13 | + |
| 14 | +Redis version 7.2 introduces new capabilities, including improved geospatial queries, and streamlined JSON data manipulation. Performance optimizations, client-side enhancements, and behavioral refinements further improve the efficiency, security, and usability of Redis. |
| 15 | +Below is a detailed breakdown of these updates. |
| 16 | + |
| 17 | +## New features |
| 18 | + |
| 19 | +### Geospatial queries with polygon search |
| 20 | +Redis Query Engine now supports querying geospatial data using polygon search, enabling developers to efficiently filter and retrieve data within complex geographic boundaries. |
| 21 | + |
| 22 | +### Streamlined data manipulation in JSON |
| 23 | +JSON now includes two new commands for improved data handling: |
| 24 | + |
| 25 | +- `JSON.MERGE`: Merges a given JSON value into matching paths, allowing more flexible updates. |
| 26 | +- `JSON.MSET`: Sets or updates multiple JSON values simultaneously based on specified key-path-value triplets, improving efficiency when handling structured data. |
| 27 | + |
| 28 | +## Improvements |
| 29 | + |
| 30 | +### Existing data structures |
| 31 | +Significant performance improvements have been made across Redis data types. Sorted sets, commonly used for gaming leaderboards, now see performance improvements ranging from [30% to 100%](https://redis.io/blog/introducing-redis-7-2/#:~:text=We%20made%20Redis%20more%20powerful%20for%20developers). |
| 32 | + |
| 33 | +Additionally, Redis stream consumer tracking has been enhanced to provide better visibility into consumer activity, and blocked stream commands now return a distinct error when the target key no longer exists. |
| 34 | + |
| 35 | +### Redis Query Engine improvements |
| 36 | +The Redis Query Engine has received several updates, including optimized `SORT BY` operations and the addition of a new `FORMAT` response in RESP3, improving both efficiency and readability. |
| 37 | + |
| 38 | +### Script execution enhancemets |
| 39 | +Client-side tracking now monitors actual keys read during script execution, improving key usage tracking accuracy. Additionally, blocked commands will re-evaluate security checks before execution, ensuring compliance with updated permissions. Standardized ACL failure messages and error codes now provide clearer error handling. |
| 40 | + |
| 41 | +### Client and replication enhancements |
| 42 | +TLS-based replication now supports Server Name Indication (SNI) to improve compatibility with secure deployments. The `HELLO` command behavior has also been refined to modify client state only upon successful execution, ensuring more predictable client behavior. |
| 43 | + |
| 44 | +## Changes |
| 45 | + |
| 46 | +### Breaking changes |
| 47 | +Redis 7.2 introduces several backward-incompatible changes. Lua scripts no longer support the `print()` function, blocking of `PFCOUNT` and `PUBLISH` in read-only scripts, and time sampling freezing during command execution. Error handling updates include case changes in error responses, new behavior for `ZPOPMIN/ZPOPMAX` with `count 0`, and adjustments to `XCLAIM/XAUTOCLAIM`. ACL changes affect command categorization and key access permissions, while command introspection now includes per-subcommand statistics. Redis now allows certain `CONFIG` commands during loading and tracks statistics only when commands are executed. |
| 48 | + |
| 49 | +For more details, see [Redis 7.2 Breaking Changes](https://redis.io/docs/latest/embeds/r7.2-breaking-changes/). |
| 50 | + |
| 51 | +### Expired keys are now deleted from replica indexes |
| 52 | +Expired keys are now deleted from Redis Query Engine replica indexes, ensuring that queries return an empty array rather than `nil` when the data no longer exists. |
| 53 | + |
| 54 | +### Other changes |
| 55 | +Redis Stack 7.2 no longer includes Graph capabilities. For more details, refer to the [RedisGraph End-of-Life Announcement](https://redis.io/blog/redisgraph-eol/#:~:text=After%20January%2031%2C%202025%2C%20RedisGraph,subscriptions%20until%20January%2031%2C%202024.). |
| 56 | + |
| 57 | +## Component versions |
| 58 | +The Redis version 7.2 includes the following components: |
| 59 | + |
| 60 | +- [Redis 7.2](https://github.com/redis/redis/blob/7.2/00-RELEASENOTES) |
| 61 | +- [Search 2.8](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisearch/redisearch-2.8-release-notes/) |
| 62 | +- [JSON 2.6](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisjson/redisjson-2.6-release-notes/) |
| 63 | +- [Time series 1.10](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redistimeseries/redistimeseries-1.10-release-notes/) |
| 64 | +- [Bloom 2.6](https://redis.io/docs/latest/operate/oss_and_stack/stack-with-enterprise/release-notes/redisbloom/redisbloom-2.6-release-notes/) |
0 commit comments