Dragonfly v1.19.0
Some prominent changes include:
- SPOP and SRANDMEMBER return truly randomized results (#3022)
- Fix memory blowup in some cases during replication (#3084 #3103)
- Snapshotting works with data tiering (#3073)
- Fix incompatibility issue of RDB snapshot with Redis 6.x (#3121)
- Memory utilization improvements + better introspection of memory usage via /metrics
What's Changed
- chore: update versions and remove caching code by @romange in #3030
- chore: fix macos tiering by @dranikpg in #3032
- feat: support subrange expressions in jsonpathv2 by @romange in #3036
- fix: reduce delay when stop replica #3020 by @BorysTheDev in #3028
- fix(set): fix random in SRANDMEMBER and SPOP commands by @BagritsevichStepan in #3022
- chore: prevent updating gcc on macos by @romange in #3037
- chore: add half-range indices by @romange in #3041
- chore: update helio together with new mimalloc version by @romange in #3040
- fix: header for oom_errors_total by @romange in #3043
- chore: reset enable_direct_fd to avoid socket leakage in kernel by @romange in #3051
- chore: update deprecated actions by @romange in #3052
- chore: remove unneeded check-fails by @romange in #3054
- chore: Export replication memory stats by @romange in #3062
- !: Update grafana panel by @MaoMaoCake in #3064
- chore: add replication memory stats to the dashboard by @romange in #3065
- chore: bpop prints by @dranikpg in #3076
- fix(tiering): wait for IO before test teardown by @dranikpg in #3079
- chore: small replayer fixes by @dranikpg in #3081
- fix: increase lua stack limit to 8KB by @romange in #3080
- chore: minor fixes by @romange in #3082
- fix: fix cluster incorrect keys status by @BorysTheDev in #3083
- fix(acl): return -NOPERM instead of response error by @kostasrim in #3049
- feat(server): Expose serialization bytes via
INFO
and/metrics
by @chakaz in #3087 - chore(streams): Some refactoring by @dranikpg in #3088
- feat(server): remove multi shard sync from replication by @adiholden in #3085
- fix(replication): fullsync phase write to sync on noop by @adiholden in #3084
- fix(tiering): Async delete for small bins by @dranikpg in #3068
- fix: prevent crashing if error happened during snapshot moving by @BorysTheDev in #3092
- fix: add timeout for DFLYMIGRATE ACK to prevent deadlock by @BorysTheDev in #3093
- chore: improve Migration() by @kostasrim in #3033
- feat(streams): Stream optimizations by @dranikpg in #3091
- feat(tiering): Defragmentation by @dranikpg in #3021
- fix: bit shift of kTagMask by @haodongnj in #3099
- feat(cluster_mgr): Allow attaching replicas by @chakaz in #3105
- bug(server): fix replication stuck in full sync by @adiholden in #3103
- fix(server): Sync FLUSH with tiering by @dranikpg in #3098
- chore: export pipeline related metrics by @romange in #3104
- chore: zset error log (from 1.18 branch) by @dranikpg in #3109
- New test for cluster migration: connection issue by @BorysTheDev in #3102
- chore: minor fixes + remove redundant DCHECK by @romange in #3115
- fix: fix cluster_fuzzy_migration test by @BorysTheDev in #3116
- feat(server): Pipeline and dispatch on
/metrics
by @chakaz in #3117 - chore: pull helio add test for tls deadlock by @kostasrim in #3111
- feat(cluster_mgr): Improvements to
cluster_mgr.py
by @chakaz in #3118 - refactor client tracking, fix atomicity, squashing and multi/exec by @kostasrim in #2970
- fix(server): fix compatibility with rdb snapshot by @adiholden in #3121
- Revert "refactor client tracking, fix atomicity, squashing and multi/… by @adiholden in #3122
- feat(cluster_mgr): Take over command by @chakaz in #3120
- fix: fix RestoreStreamer to prevent buckets skipping #2830 by @BorysTheDev in #3119
- feat(cluster_mgr): Fix migration action by @chakaz in #3124
- chore: prevent Dispatch fiber to be launched during migration by @romange in #3123
- feat(tiering): Simple snapshotting by @dranikpg in #3073
- fix: upload action in version release by @romange in #3127
New Contributors
- @MaoMaoCake made their first contribution in #3064
- @haodongnj made their first contribution in #3099
Huge thanks to all the contributors! ❤️
Full Changelog: v1.18.0...v1.19.0