Skip to content

Releases: dragonflydb/dragonfly

v1.18.0

09 May 08:39
3dd6c49
Compare
Choose a tag to compare

Dragonfly v1.18.0

Some prominent changes include:

  • ACL improvements: #2945 #2943 #2920 #2982 #2995
  • Implementation of json.merge #2960
  • Replication - memory improvements
  • Very much alpha support for data tiering. Try it out with --tiered_prefix=/pathto/ssd/base and see how your memory usage goes down (STRING type only). Do not use it in prod! 😸

What's Changed

Huge thanks to all the contributors! ❤️

New Contributors

Full Changelog: v1.17.0...v1.18.0

v1.17.1

18 Apr 05:04
9d0253c
Compare
Choose a tag to compare

Dragonfly v1.17.1

This is a patch release.

What's Changed

fix: potential data race in the transactional code (#2911)

v1.17.0

16 Apr 09:42
5c422e3
Compare
Choose a tag to compare

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

Huge thanks to all the contributors! ❤️

Full Changelog: v1.16.0...v1.17.0

v1.16.1

08 Apr 14:51
48541c7
Compare
Choose a tag to compare

Dragonfly v1.16.1

This is a patch release.

What's Changed

  • fix: authorize the http connection to call DF commands (#2863)
  • possible crash in tls code (#2854 )
  • healthcheck for docker containers (#2853)

Full Changelog: v1.16.0...v1.16.1

v1.16.0

03 Apr 05:29
8bd3575
Compare
Choose a tag to compare

Dragonfly v1.16.0

Our spring release. We are getting closer to 2.0 with some very exciting features ahead. Stay tuned!

Some prominent changes include:

  • Improved memory accounting of client connections (#2710 #2755 and #2692 )
  • FT.AGGREGATE call (#2413)
  • Properly handle and replicate Memcache flags (#2787 #2807)
  • Intoduce BF.AGGREGATE BD.(M)ADD and BF.(M)EXISTS methods (#2801). Note, that it does not work with snapshots and replication yet.
  • Dragonfly builds natively on MacOS. We would love some help with extending the release pipeline to create a proper macos binary.
  • Following the requests from the Edge developers community, we added a basic HTTP API support! Try running Dragonfly with:
    --expose_http_api flag and then call curl -X POST -d '["ping"]' localhost:6379/api. We will follow up with more extensive docs later this month.
  • Lots of stability fixes, especially around Sidekiq and BullMQ workloads.

What's Changed

Read more

v1.15.1

12 Mar 15:44
d670346
Compare
Choose a tag to compare

Dragonfly v1.15.1

This is a patch release.

What's Changed

fix: Workaround for a possible crash during BLPOP calls.

Full Changelog: v1.15.0...v1.15.1

v1.15.0

04 Mar 05:49
0c11509
Compare
Choose a tag to compare

Dragonfly v1.15.0

After more than a month, we are releasing a new version with even more efficient transactional algorithms, improved lua compatibility, better memory management and lots of stability fixes. For Mac enthusiasts - the project now builds natively on MacOs 💻

Some prominent changes include:

  • Lua redis.log(..) is recognized (#2476)
  • Lua can optionally return doubles as longs when replying to RESP2 clients using --lua_resp2_legacy_float flag (#2672)
  • Added backlog option (#2456)

What's Changed

  • chore: improve benchmark for bpptree and zsl tree by @romange in #2450
  • feat(transaction): Independent out of order execution by @dranikpg in #2426
  • fix(RestoreStreamer): Fix a few glitches by @chakaz in #2452
  • feat(cluster): add tx execution in cluster_shard_migration by @BorysTheDev in #2385
  • feat(server): Add backlog flag for listen() by @chakaz in #2456
  • feat: allow reading offloaded strings without loading to the store by @romange in #2449
  • refactor: return OpResult in DbSlice::AddOrFind instead of throwing std::bad_alloc by @kostasrim in #2427
  • fix(transaction): Improve ACTIVE flags management by @dranikpg in #2458
  • test(cluster): Enable seeder to work against a Dragonfly cluster by @chakaz in #2462
  • Update README.md to include dragonfly cloud link by @worldsoup in #2469
  • fix: resolves the crash with MGET and duplicate keys by @romange in #2471
  • fix: fixes for v1.14.0 by @dranikpg in #2473
  • feat(lua): add no-op redis.log command by @kostasrim in #2476
  • fix: reduce test_pipeline_batching_while_migrating flakiness by @dranikpg in #2475
  • chore: switch json object to pmr allocator by @romange in #2483
  • chore(transaction): Simplify PollExecution() by @dranikpg in #2457
  • chore: fix clang warnings by @romange in #2485
  • chore(transaction): Launder copied keys in multi transactions by @dranikpg in #2478
  • chore: lock keys when going through fast-path execution by @romange in #2491
  • fix(server): mget crash on same key get by @adiholden in #2474
  • chore: Introduce LockKey for LockTable by @romange in #2463
  • fix(cluster): fix slot filtration to RestoreStreamer by @BorysTheDev in #2477
  • feat(lua): add missing no-op redis.replicate_commands() by @kostasrim in #2472
  • chore: remove batch reply statistics by @romange in #2490
  • Fix redis->DF replication tests by @romange in #2495
  • chore: introduce TaskQueue for executing shard local tasks by @romange in #2498
  • fix(cluster): fix incorrect version checking and resource double free by @BorysTheDev in #2499
  • fix(server): Fix crash in RENAME by @chakaz in #2503
  • test: Disable flaky test test_policy_based_eviction_propagation by @chakaz in #2505
  • feat(server): Memory tracker by @chakaz in #2501
  • fix(server): update post updater iterator in tiering by @adiholden in #2497
  • chore(transaction): Use PhasedBarrier for easier synchronization by @dranikpg in #2455
  • feat(server): Implement SCRIPT FLUSH command by @highpon in #2493
  • fix: do not crash with inconsistent watch queue by @romange in #2515
  • Fix: awakened_keys inconcistency by @romange in #2517
  • feat(cluster): add migration finalization by @BorysTheDev in #2507
  • fix: fix BLOCKING/REVERSE_MAPPING flags for some commands by @romange in #2516
  • fix: handle null length strings in stored commands by @dranikpg in #2518
  • feat(server): Add MEMORY TRACK ADDRESS command by @chakaz in #2513
  • feat(server): Implement CONFIG HELP command by @highpon in #2510
  • fix(transaction): Add special barrier for blocking tx by @dranikpg in #2512
  • fix(zset): ignore cancelled op status in BZPopMinMax by @andydunstall in #2527
  • fix: fix script replication by @dranikpg in #2531
  • chore: remove redis sorted set implementation by @romange in #2522
  • fix: add emoji when regression tests timeout by @kostasrim in #2543
  • fix(cluster): fix #2532 tests redis client close errors by @BorysTheDev in #2542
  • bug: DFLY_PASSWORD environment variable deprecation by @mprimeaux in #2539
  • fix: wrongly printing timedout emoji on test failures by @kostasrim in #2546
  • feat: move lint test chart to seperate action and trigger it on reg tests by @kostasrim in #2536
  • Update helio by @romange in #2538
  • fix(server): Do not yield in journal if not allowed by @chakaz in #2540
  • fix: fix interpreter acquisition with MULTI by @dranikpg in #2549
  • fix(tests): increase interpreter test load, lower notice limit, include 2553 by @dranikpg in #2554
  • feat: introduce a skeleton for jsonpath parser by @romange in #2521
  • fix(pytest): Disable flaky interpreter test monitoring by @dranikpg in #2558
  • feat(cluster): add slots blocking when we finalize migration by @BorysTheDev in #2484
  • fix(server): Init tx time for all multi/lua transactions by @chakaz in #2562
  • chore: enable ContendExpire by @romange in #2563
  • fix(server): do not print warning on replica stop/ takeover by @adiholden in #2560
  • chore: parse a simple jsonpath by @romange in #2566
  • feat(pytest): Gen2 seeder, part 1 by @dranikpg in #2556
  • fix: make sure SCRIPT FLUSH concludes by @romange in #2565
  • chore: Remove manual memory management from stats by @dranikpg in #2550
  • fix: asan errors on unit tests by @kostasrim in #2564
  • chore(transaction): Simplify armed state by @dranikpg in #2508
  • test(memory): Unaccounted memory test + add DEBUG POPULATE TYPE <type> by @chakaz in #2561
  • chore: Recognize exit status in regression tests by @romange in #2571
  • chore(server): replica not accumulate multi commands untill exec by @adiholden in #2557
  • chore: use helio MPSCIntrusiveQueue queue by @romange in #2573
  • chore: provide plumbing for jsonpath error propagation by @romange in #2567
  • test(cluster-migration): Fix some bugs and add cluster migration fuzzy tests by @chakaz in #2572
  • fix: do not migrate during connection close by @romange in #2570
  • chore: fix fiber types in the codebase by @romange in #2574
  • feat(release): Also bundle dragonfly-debug builds by @Pothulapati in #2424
  • feat: jsonpath supports index/wildcard expressions by @romange in #2578
  • fix(tiering tests): introduce wait until tiering entries num EQ/GT by @adiholden in #2559
  • chore(pytest): Refactor snapshot test by @dranikpg in #2583
  • fix(test): Apply pytest filter to regression tests as well by @chakaz in #2589
  • feat: add descent operator to jsonpath parser by @romange in #2588
  • test(cluster): Fix and un...
Read more

v1.14.7

04 Mar 04:19
082c5e0
Compare
Choose a tag to compare

Dragonfly v1.14.7

This is a patch release.

What's Changed

  • chore: add oom stats to /metrics (#2680)
  • feat(server): introduce table_growth_margin flag (#2678)

Full Changelog: v1.14.6...v1.14.7

v1.14.6

01 Mar 02:47
a5af87e
Compare
Choose a tag to compare

Dragonfly v1.14.6

This is a patch release.

What's Changed

  • fix: data race during snapshotting with INFO calls (#2637)
  • fix: avoid crashing during the connection traversal when TLS is enabled (#2651)

Full Changelog: v1.14.5...v1.14.6

v1.14.5

22 Feb 08:12
9ed5513
Compare
Choose a tag to compare

Dragonfly v1.14.5

This is a patch release.

What's Changed

  • fix(bug): server crash info memory while saving (#2637)

Full Changelog: v1.14.4...v1.14.5