Repository navigation
kevy 7.0.0 brings the public Rust API of every crate to the Rust API Guidelines, keeps every write an embedded store returned through a killed process, adds global indexes spread over the shards by value, makes index rows a quarter or less of their former size, and adds encrypted links between nodes and on a second client port (off unless configured).
It is a major release. Most Rust signatures changed (old → new), kevy-config's structs gained public fields, the Go module moved to github.com/goliajp/kevy-go/v7, and a data directory 7.0 has written holds frames 6.4 does not understand. A wire client needs no change, and a 6.4 directory opens as it is.
Before upgrading, read the upgrade guide — English · 中文 · 日本語 — if you set maxmemory (used_memory reads higher for the same data), run replicas, may go back to 6.4, script kevy-cli tools as bare words, or use kevy as a Rust library. Every statement there about mixing versions was measured against the 6.4.0 release binary.
Several fixes stop data that had been lost or changed, some since 1.x; each names the first release that had the defect. The server now runs on kevy-alloc by default.
Measured on the same 16-core box (PERFORMANCE.md):
- against 6.4.0: throughput 1–23% higher and instructions per command 6–16% lower on every workload shape, resident memory lower on all of them
- against Redis 8.10.2, valkey 9.1.2 and Dragonfly 2.0.0, each engine on 4 cores: every one of 20 paired ratios has its 99% lower bound above 1; the narrowest is LPUSH against Redis, 1.35×
Full list of changes: CHANGELOG.md