8.0-m02
版本发布时间: 2024-11-04 17:16:21
redis/redis最新发布版本:8.0-m02(2024-11-04 17:16:21)
This is the second Milestone of Redis Community Edition 8.0.
Milestones are non-feature-complete pre-releases. Pre-releases are not suitable for production use. Once we reach feature-completeness we will release RC1.
Headlines:
8.0-M02 introduces significant performance improvements. Both Alpine and Debian Docker images are now available on Docker Hub. Additional distributions will be introduced in upcoming pre-releases. In addition, Redis Query Engine now supports both horizontal and vertical scaling for search, query and vector workloads.
Supported upgrade paths (by replication or persistence) to 8.0-M02
- From previous Redis versions, without modules
The following upgrade paths (by replication or persistence) to 8.0-M02 are not yet tested and will be introduced in upcoming pre-releases:
- From previous Redis versions with modules (RediSearch, RedisJSON, RedisTimeSeries, RedisBloom)
- From Redis Stack 7.2 or 7.4
Security fixes
- (CVE-2024-31449) Lua library commands may lead to stack overflow and potential RCE.
- (CVE-2024-31227) Potential Denial-of-service due to malformed ACL selectors.
- (CVE-2024-31228) Potential Denial-of-service due to unbounded pattern matching.
Bug fixes
- #13539 Hash: Fix key ref for a hash that no longer has fields with expiration on
RENAME
/MOVE
/SWAPDB
/RESTORE
- #13512 Fix
TOUCH
command from a script in no-touch mode - #13468 Cluster: Fix cluster node config corruption caused by mixing shard-id and non-shard-id versions
- #13608 Cluster: Fix
GET #
option inSORT
command
Modules API
- #13526 Extend
RedisModule_OpenKey
to read also expired keys and subkeys
Performance and resource utilization improvements
- #11884 Optimize
ZADD
andZRANGE*
commands - #13530 Optimize
SSCAN
command in case of listpack or intset encoding - #13531 Optimize
HSCAN
/ZSCAN
command in case of listpack encoding - #13520 Optimize commands that heavily rely on bulk/mbulk replies (example of
LRANGE
) - #13566 Optimize
ZUNION[STORE]
by avoiding redundant temporary dict usage - #13567 Optimize
SUNION
/SDIFF
commands by avoiding redundant temporary dict usage - #11533 Avoid redundant
lpGet
to boostquicklistCompare
- #13412 Reduce redundant call of
prepareClientToWrite
when calladdReply*
continuously
Notes
- Additional distributions, upgrade paths, features, and improvements will be introduced in upcoming pre-releases.
- With the GA release of 8.0 we will deprecate Redis Stack.