mirror of https://github.com/valkey-io/valkey
Valkey 9.0.0-rc1 release notes and `version.h` bump (#2476)
As per step 2 of the release checklist #2408 for 9.0.0-rc1 --------- Signed-off-by: Kyle J. Davis <kyledvs@amazon.com> Co-authored-by: Madelyn Olson <madelyneolson@gmail.com> Co-authored-by: Viktor Söderqvist <viktor.soderqvist@est.tech> Co-authored-by: Harkrishn Patro <bunty.hari@gmail.com> Co-authored-by: Ping Xie <pingxie@outlook.com> Co-authored-by: Wen Hui <wen.hui.ware@gmail.com>
This commit is contained in:
parent
6c2e4f9553
commit
70a7ce0eb1
218
00-RELEASENOTES
218
00-RELEASENOTES
|
|
@ -1,16 +1,212 @@
|
|||
Hello! This file is just a placeholder, since this is the "unstable" branch
|
||||
of Valkey, the place where all the development happens.
|
||||
Valkey 9.0 release notes
|
||||
========================
|
||||
|
||||
There is no release notes for this branch, it gets forked into another branch
|
||||
every time there is a partial feature freeze in order to eventually create
|
||||
a new stable release.
|
||||
Upgrade urgency levels:
|
||||
|
||||
Usually "unstable" is stable enough for you to use it in development environments
|
||||
however you should never use it in production environments. It is possible
|
||||
to download the latest stable release here:
|
||||
| Level | Meaning |
|
||||
|----------|---------------------------------------------------------------------|
|
||||
| LOW | No need to upgrade unless there are new features you want to use. |
|
||||
| MODERATE | Program an upgrade of the server, but it's not urgent. |
|
||||
| HIGH | There is a critical bug that may affect a subset of users. Upgrade! |
|
||||
| CRITICAL | There is a critical bug affecting MOST USERS. Upgrade ASAP. |
|
||||
| SECURITY | There are security fixes in the release. |
|
||||
|
||||
https://valkey.io/download/
|
||||
Valkey 9.0.0-rc1 - August 14, 2025
|
||||
----------------------------------
|
||||
|
||||
More information is available at https://valkey.io
|
||||
Upgrade urgency LOW: This is the first release candidate of Valkey 9.0.0, with
|
||||
performance improvements, atomic slot migrations, hash field expiration, and numbered databases in cluster mode,
|
||||
as well as a whole host of new items as listed below.
|
||||
|
||||
Happy hacking!
|
||||
### New Features
|
||||
* Client Commands Extended Filtering by @sarthakaggarwal97 (#1466)
|
||||
* Add multi-database support to cluster mode by @xbasel (#1671)
|
||||
* Support BYPOLYGON option for GEOSEARCH by @KarthikSubbarao (#1809)
|
||||
* Introduce MPTCP by @pizhenwei (#1811)
|
||||
* Add sentinel_total_tilt to sentinel INFO sentinel by @carlosfu (#1904)
|
||||
* Add support for automatic client authentication via TLS certificate fields by @omanges (#1920)
|
||||
* Add --hotkeys-count option for valkey-cli by @hwware (#1933)
|
||||
* Introduce atomic slot migration by @murphyjacob4 (#1949)
|
||||
* Introduce MPTCP for replica by @pizhenwei (#1961)
|
||||
* Add DELIFEQ command by @LinusU (#1975)
|
||||
* Allow dynamic modification of io-threads num by @ayush933 (#2033)
|
||||
* Introduce HASH items expiration by @ranshid (#2089)
|
||||
* Add SAFE option to SHUTDOWN to reject shutdown in unsafe situations by @enjoy-binbin (#2195)
|
||||
* Support negative filtering for client command filters by @soloestoy (#2378)
|
||||
|
||||
### New Configs
|
||||
* Auto-failover on shutdown unified config by @zuiderkwast (#2292)
|
||||
|
||||
### Logging and Tooling Improvements
|
||||
* Add node pfail and fail count to cluster info metrics by @hpatro (#1910)
|
||||
* Introduce support for lttng based tracing by @artikell (#2070)
|
||||
|
||||
### Performance/Efficiency Improvements
|
||||
* Optimize bitcount command by SIMD by @chzhoo (#1741)
|
||||
* Save RDB file to disk using a background thread on replica(s) (#1784)
|
||||
* Improve replication stability by prioritizing replication traffic in the replica by @xbasel (#1838)
|
||||
* Optimize hyperloglog commands with ARM NEON SIMD instructions by @xbasel (#1859)
|
||||
* Optimize BITCOUNT using ARM NEON SIMD by @xbasel (#1867)
|
||||
* Optimize string-to-integer performance using AVX512 by @zhulipeng (#1944)
|
||||
* Improve system responsiveness by limiting number of new cluster link connections per cycle by @hpatro (#2009)
|
||||
* Optimize hash table performance using SIMD by @zhulipeng (#2030)
|
||||
* Improve performance of network operations by directly writing responses to clients by @xbasel (#2078)
|
||||
* Allow shrinking hashtables in low memory situations by @Fusl (#2095)
|
||||
* Optimize string2ll with load-time CPU feature check using IFUNC resolver by @zhulipeng (#2099)
|
||||
* Optimize WATCH by equalStringObjects early length check by @vitahlin (#2107)
|
||||
* Optimize GEORADIUS command performance with pre-allocated buffer by @chzhoo (#2116)
|
||||
* Improve zcount performance by combing range element ranks calculation with range elements search to @SoftlyRaining (#2129)
|
||||
* Optimize scan/sscan/hscan/zscan commands by replacing list with vector by @chzhoo (#2160)
|
||||
|
||||
### Cluster
|
||||
* Trigger manual failover on SIGTERM / shutdown to cluster primary by @enjoy-binbin (#1091)
|
||||
* Add CLUSTER FLUSHSLOT command by @wuranxx (#1384)
|
||||
* Allow replicas to become primaries without data by using CLUSTER REPLICATE NO ONE by @skolosov-snap (#1674)
|
||||
* Add cluster bus port out of range error message for CLUSTER MEET command by @hwware (#1686)
|
||||
* Add cluster-manual-failover-timeout to configure the timeout for manual failover by @enjoy-binbin (#1690)
|
||||
|
||||
### Module
|
||||
* Add new module API flag to bypass command validation by @sungming2 (#1357)
|
||||
|
||||
### Bug Fixes
|
||||
* Avoid shard id update of replica if it doesn't match with primary shard id by @hpatro (#573)
|
||||
* Change "Redis ver." to "Valkey ver." in LOLWUT output by @sarthakaggarwal97 (#1559)
|
||||
* Fix temp file leak during replication error handling by @enjoy-binbin (#1721)
|
||||
* Fix raxRemove crash at memcpy() due to key size exceeds max Rax size by @VoletiRam (#1722)
|
||||
* Respect process umask when creating data files by @kronwerk (#1725)
|
||||
* Fix error "SSL routines::bad length" when connTLSWrite is called second time with smaller buffer by @zori-janea (#1737)
|
||||
* cmd's out bytes need count deferred reply by @soloestoy (#1760)
|
||||
* Enable TCP_NODELAY by default in incoming and outgoing connections by @sungming2 (#1763)
|
||||
* Ignore stale gossip packets that arrive out of order by @enjoy-binbin (#1777)
|
||||
* Remove unicode optimization in Lua cjson library by @rjd15372 (#1785)
|
||||
* Save config file and broadcast PONG message on configEpoch change by @enjoy-binbin (#1813)
|
||||
* Fix engine crash on module client blocking during keyspace events by @yairgott (#1819)
|
||||
* Fix bug where invalidation messages were getting sent to closing clients by @madolson (#1823)
|
||||
* Fix ACL LOAD crash on replica since the primary client don't has a user by @bogdanp05 (#1842)
|
||||
* Fix RANDOMKEY infinite loop during CLIENT PAUSE by @li-benson (#1850)
|
||||
* Improve clarity of errors for GEO commands when member does not exist by @chx9 (#1943)
|
||||
* Fix panic in primary when blocking shutdown after previous block with timeout by @murphyjacob4 (#1948)
|
||||
* fix cluster slot stats assertion during promotion of replica by @Fusl (#1950)
|
||||
* Fix incorrect lag reported in XINFO GROUPS by @nesty92 (#1952)
|
||||
* Fix crash during TLS handshake with I/O threads by @uriyage (#1955)
|
||||
* Disallow sending REPLY ON / OFF / SKIP inside a multi-exec transaction by @sarthakaggarwal97 (#1966)
|
||||
* Fix random element in skewed sparse hash table by @zuiderkwast (#2085)
|
||||
* Allow mixing quoted and unquoted inline args by @Fusl (#2098)
|
||||
* Only mark the client reprocessing flag when unblocked on keys by @ranshid (#2109)
|
||||
* CLIENT UNBLOCK should't be able to unpause paused clients by @enjoy-binbin (#2117)
|
||||
* Fix memory corruption in sharded pubsub unsubscribe by @uriyage (#2137)
|
||||
* Detect SSL_new() returning NULL in outgoing connections by @zuiderkwast (#2140)
|
||||
* Correctly handle large cluster bus extensions which may have resulted in dropped cluster packets by @madolson (#2144)
|
||||
* Converge divergent shard-id persisted in nodes.conf to primary's shard ID by @hpatro (#2174)
|
||||
* Fix replica can't finish failover when config epoch is outdated by @enjoy-binbin (#2178)
|
||||
* Fix CLUSTER SLOTS/NODES showing wrong port after updating port/tls-port by @enjoy-binbin (#2186)
|
||||
* Fix use-after-free when active expiration triggers hashtable to shrink by @gusakovy (#2257)
|
||||
* Redact user data when a module crashes for not handling I/O errors enabled by @YueTang-Vanessa (#2274)
|
||||
* Generate a new shard_id when the replica executes CLUSTER RESET SOFT by @enjoy-binbin (#2283)
|
||||
* Fix missing response when AUTH returns an error inside a transaction by @enjoy-binbin (#2287)
|
||||
* Fix memory leak when shrinking a hashtable without entries by @yzc-yzc (#2288)
|
||||
* Fix MEMORY USAGE to consider embedded keys by @yulazariy (#2290)
|
||||
* Fix replicas claiming to still have slots after manual failover by @enjoy-binbin (#2301)
|
||||
* Prevent bad memory access when NOTOUCH client gets unblocked by @uriyage (#2347)
|
||||
* Fix large allocations crashing Valkey during active defrag by @Fusl (#2353)
|
||||
|
||||
### Build and Tooling
|
||||
* Support for RDB analysis reports by @artikell (#1743)
|
||||
* Implement RPS control for valkey-benchmark by @artikell (#1761)
|
||||
* valkey-cli: ensure output ends with a newline if missing when printing reply by @xbasel (#1782)
|
||||
* Drop lua object files on clean by @secwall (#1812)
|
||||
* Check both arm64 and aarch64 for ARM based system architecture by @eifrah-aws (#1829)
|
||||
* Add --sequential option to valkey-benchmark to support populating entire keyspace by @SoftlyRaining (#1839)
|
||||
* Support environment variable VALKEYCLI_AUTH alongside REDISCLI_AUTH in valkey-cli by @HiranmoyChowdhury (#1995)
|
||||
* Add MGET test to valkey-benchmark by @zuiderkwast (#2015)
|
||||
* Add support to send multiple arbitrary commands to valkey-benchmark by @zuiderkwast (#2057)
|
||||
* Support RDMA for valkey-cli and benchmark by @pizhenwei (#2059)
|
||||
* Support MPTCP for valkey-cli and benchmark by @pizhenwei (#2067)
|
||||
* Allow valkey-benchmark to support multiple random (or sequential) placeholders by @SoftlyRaining (#2102)
|
||||
* Change default values of valkey-cli to use valkey naming, and added fallback to old values by @avifenesh (#2334)
|
||||
* Fix duplicate Acks for RDMA events and fix extremely large max latency for RDMA benchmark (#2430)
|
||||
|
||||
### Behavior Change
|
||||
* Move auth check to the front, before command exist/arity/protected check by @enjoy-binbin (#1475)
|
||||
* Include command fullname in error message when returning errors in multi-execs by @enjoy-binbin (#2286)
|
||||
* Add STALE command flag to SCRIPT-EXISTS, SCRIPT-SHOW and SCRIPT-FLUSH by @enjoy-binbin (#2419)
|
||||
|
||||
### Contributors
|
||||
* Ran Shidlansik @ranshid
|
||||
* Binbin @enjoy-binbin
|
||||
* Jacob Murphy @murphyjacob4
|
||||
* Madelyn Olson @madolson
|
||||
* YueTang-Vanessa @YueTang-Vanessa
|
||||
* cxljs @cxljs
|
||||
* Sarthak Aggarwal @sarthakaggarwal97
|
||||
* amanosme @amanosme
|
||||
* Hanxi Zhang @hanxizh9910
|
||||
* Seungmin Lee @sungming2
|
||||
* uriyage @uriyage
|
||||
* Katie Holly @Fusl
|
||||
* Nicky-2000 @Nicky-2000
|
||||
* Allen Samuels @allenss-amazon
|
||||
* yzc-yzc @yzc-yzc
|
||||
* zhaozhao.zz @soloestoy
|
||||
* asagegeLiu @asagege
|
||||
* nitaicaro @nitaicaro
|
||||
* Matthew @utdrmac
|
||||
* Omkar Mestry @omanges
|
||||
* Viktor Söderqvist @zuiderkwast
|
||||
* kukey @kukey
|
||||
* Harkrishn Patro @hpatro
|
||||
* Avi Fenesh @avifenesh
|
||||
* Amit Nagler @naglera
|
||||
* Josh Soref @jsoref
|
||||
* youngmore1024 @youngmore1024
|
||||
* Rain Valentine @SoftlyRaining
|
||||
* skyfirelee @artikell
|
||||
* Wen Hui @hwware
|
||||
* yulazariy @yulazariy
|
||||
* Yakov Gusakov @gusakovy
|
||||
* charsyam @charsyam
|
||||
* Simon Baatz @gmbnomis
|
||||
* Thalia Archibald @thaliaarchi
|
||||
* chzhoo @chzhoo
|
||||
* xbasel @xbasel
|
||||
* Stav Ben-Tov @stav-bentov
|
||||
* wuranxx @wuranxx
|
||||
* Ayush Sharma @ayush933
|
||||
* chx9 @chx9
|
||||
* KarthikSubbarao @KarthikSubbarao
|
||||
* Hüseyin Açacak @huseyinacacak-janea
|
||||
* アンドリー・アンドリ @odaysec
|
||||
* Ping Xie @PingXie
|
||||
* Lipeng Zhu @zhulipeng
|
||||
* Linus Unnebäck @LinusU
|
||||
* Vitah Lin @vitahlin
|
||||
* kronwerk @kronwerk
|
||||
* Vadym Khoptynets @poiuj
|
||||
* muelstefamzn @muelstefamzn
|
||||
* zhenwei pi @pizhenwei
|
||||
* George Padron @DoozkuV
|
||||
* Björn Svensson @bjosv
|
||||
* aradz44 @aradz44
|
||||
* Hiranmoy Das Chowdhury @HiranmoyChowdhury
|
||||
* Yair Gottdenker @yairgott
|
||||
* Roshan Khatri @roshkhatri
|
||||
* nesty92 @nesty92
|
||||
* carlosfu @carlosfu
|
||||
* Arthur Lee @arthurkiller
|
||||
* Shai Zarka @zarkash-aws
|
||||
* Sergey Kolosov @skolosov-snap
|
||||
* Nathan Scott @natoscott
|
||||
* lucasyonge @lucasyonge
|
||||
* WelongZuo @WelongZuo
|
||||
* Jim Brunner @JimB123
|
||||
* jeon1226 @jeon1226
|
||||
* Benson-li @li-benson
|
||||
* Meinhard Zhou @MeinhardZhou
|
||||
* Nikhil Manglore @Nikhil-Manglore
|
||||
* Bogdan Petre @bogdanp05
|
||||
* eifrah-aws @eifrah-aws
|
||||
* Ricardo Dias @rjd15372
|
||||
* secwall @secwall
|
||||
* Anastasia Alexandrova @nastena1606
|
||||
* Marek Zoremba @zori-janea
|
||||
* VoletiRam @VoletiRam
|
||||
|
|
|
|||
|
|
@ -4,13 +4,13 @@
|
|||
* similar. */
|
||||
#define SERVER_NAME "valkey"
|
||||
#define SERVER_TITLE "Valkey"
|
||||
#define VALKEY_VERSION "255.255.255"
|
||||
#define VALKEY_VERSION_NUM 0x00ffffff
|
||||
#define VALKEY_VERSION "9.0.0"
|
||||
#define VALKEY_VERSION_NUM 0x00090000
|
||||
/* The release stage is used in order to provide release status information.
|
||||
* In unstable branch the status is always "dev".
|
||||
* During release process the status will be set to rc1,rc2...rcN.
|
||||
* When the version is released the status will be "ga". */
|
||||
#define VALKEY_RELEASE_STAGE "dev"
|
||||
#define VALKEY_RELEASE_STAGE "rc1"
|
||||
|
||||
/* Redis OSS compatibility version, should never
|
||||
* exceed 7.2.x. */
|
||||
|
|
|
|||
Loading…
Reference in New Issue