v1.17.0
Dragonfly v1.17.0
Some prominent changes include:
- Improved performance for MGET operations (#2453)
- Fix argument parsing in json.objkeys (#2872)
- Fix ipv6 support for replication (#2889)
- Support serialisation of bloom filters - saving to and loading from snapshots (#2846)
- Support of HLL PFADD (#2761)
- Support bullmq workloads that do not have
{}
hashtags in their queue names (#2890)
What's Changed
- fix: #2745 don't start migration process again after apply the same the same config is applied by @BorysTheDev in #2822
- feat(transaction): Idempotent callbacks (immediate runs) by @dranikpg in #2453
- refactor(cluster): replace sync_id with node_id for slot migration #2835 by @BorysTheDev in #2838
- feat(tiering): Simple OpManager by @dranikpg in #2781
- chore: implement path mutation for JsonFlat by @romange in #2805
- feat(cluster): add migration removing by config #2835 by @BorysTheDev in #2844
- chore: expose direct API on Bloom objects by @romange in #2845
- chore: generalize CompactObject::AllocateMR by @kostasrim in #2847
- feat(tiering): Simplest small bins by @dranikpg in #2810
- refactor: clean cluster slot migration code by @BorysTheDev in #2848
- fix(tests): Fix numsub test by @dranikpg in #2852
- fix: healthcheck for docker containers by @romange in #2853
- fix: possible crash in tls code by @romange in #2854
- fix(server): Do not block admin-port commands by @chakaz in #2842
- fix(pytest): make pytests fail if server crash on shutdown by @adiholden in #2827
- feat(server): add prints on takeover timeout by @adiholden in #2856
- fix(pytest): dont check process return code on kill by @adiholden in #2862
- fix: authorize the http connection to call commands by @romange in #2863
- feat(cluster): Send number of keys for incoming and outgoing migrations. by @chakaz in #2858
- feat(tiering): TieredStorageV2 by @dranikpg in #2849
- bug(server): set connection flags block/pause flag on all blocking commands by @adiholden in #2816
- chore: serialize SBF by @romange in #2846
- fix: test_replicaof_reject_on_load crash on stop by @kostasrim in #2818
- feat(dbslice): Add self-laundering iterator in
DbSlice
by @chakaz in #2815 - chore: License update by @romange in #2767
- fix(acl): incompatibilities with acl load by @kostasrim in #2867
- fix(json): make path optional in json.objkeys by @kostasrim in #2872
- fix: return wrong type errors for SET...GET command by @romange in #2874
- fix(redis replication): remove partial sync flow ,not supported yet by @adiholden in #2865
- chore: limit traffic logger only to the main interface by @romange in #2877
- chore: relax repltakeover constraints to only exclude write commands by @kostasrim in #2873
- chore(replayer): Roll back to go1.18 by @dranikpg in #2881
- fix: brpoplpush single shard to wake up blocked transactions by @kostasrim in #2875
- chore: LockTable tracks fingerprints of keys by @romange in #2839
- chore: reject TLS handshake when our listener is plain TCP by @romange in #2882
- Add support for Sparse HLL PFADD by @azuredream in #2761
- feat server: bring visibility to script errors by @adiholden in #2879
- chore: clean up REPLTAKEOVER flow by @romange in #2887
- chore(tiering): Move files and move kb literal to common by @dranikpg in #2868
- chore(interpreter): Support object replies by @dranikpg in #2885
- fix(ci/helm): Stick to v0.73.0 version of prom operator by @Pothulapati in #2893
- fix(acl): authentication with UDS socket by @kostasrim in #2895
- feat(cluster): add repeated ACK if an error is happened by @BorysTheDev in #2892
- chore(blocking): Remove faulty DCHECK by @dranikpg in #2898
- chore: add a clear link on how to build dragonfly from source by @romange in #2884
- feat(server): Allow configuration of hashtag extraction by @chakaz in #2890
- fix: fix build under macos by @BorysTheDev in #2901
- fix(cluster_replication): replicate redis cluster node bug fix by @adiholden in #2876
- fix(acl): skip http and add check on connection traversals by @kostasrim in #2883
- fix(zset): Better memory consumption calculation by @chakaz in #2900
- fix: fix ld for num converting by @BorysTheDev in #2902
- chore: add help string for memory_fiberstack_vms_bytes by @romange in #2903
- fix(sanitizers): false positive fail on multi_test::Eval by @kostasrim in #2896
- chore: pull helio and add ipv6 replication test by @dranikpg in #2889
- chore: add ipv6 support for native linux release by @romange in #2908
Huge thanks to all the contributors! ❤️
Full Changelog: v1.16.0...v1.17.0