Upgrade urgency: MODERATE, Contains fixes for a few non-critical or unlikely bugs, and some dramatic optimizations to Geo, EVAL, and Sorted sets commands.
Potentially Breaking Bug Fixes for new Redis 7.0 features
- RM_ResetDataset module API should not clear the functions (#11268)
- RM_Call module API used with the “C” flag to run scripts, would now cause
the commands in the script to check ACL with the designated user (#10966)
Performance and resource utilization improvements
- Geo commands speedups (#11535, #11522, #11552, #11579)
- Fix EVAL command performance regression from Redis 7.0 (#11521, #11541)
- Reduce EXPIRE commands performance regression from Redis 7.0 (#11602)
- Optimize commands returning double values, mainly affecting zset commands (#11093)
- Optimize Lua parsing of some command responses (#11556)
- Optimize client memory usage tracking operation while client eviction is disabled (#11348)
Platform / toolchain support related improvements
- Fix compilation on Solaris (#11327)
Module API changes
- RM_SetContextUser, RM_SetModuleUserACLString, RM_GetModuleUserACLString (#10966)
- Fix crash in CLIENT_CHANGE event, when the selected database is not 0 (#11500)
Changes in CLI tools
- redis-benchmark avoid aborting on NOPERM from CONFIG GET (#11096)
Bug Fixes
- Avoid hang of diskless replication fork child when parent crashes (#11463)
- Fix crash with module API of list iterator and RM_ListDelete (#11383)
- Fix TLS error handling to avoid connection drops on timeouts (#11563)
- Fix runtime changes to cluster-announce-*-port to take effect on the local node too (#10745)
- Fix sentinel function that compares hostnames if failed resolve (#11419)
- Fix MIGRATE with AUTH set to “keys” is getting wrong key names leading to MOVED or ACL errors (#11253)