Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: ub in RegisterOnChange and regression tests for big values #3336

Merged
merged 3 commits into from
Jul 19, 2024

Conversation

kostasrim
Copy link
Contributor

@kostasrim kostasrim commented Jul 18, 2024

I renamed the flag but I never renamed it in the tests

The problem is that if we start iterating over db_slice::change_cb_ and we preempt, then a RegisterOnChange might invalidate the iterators of the change_cb_ (since it's a vector) leading to UB. The fix is to coordinate RegisterOnChange and register a new callback only after all the fibers stop iterating over the vector.

  • fix replication test flag name for big values
  • fix a bug that triggers ub when RegisterOnChange is called on flows that iterate over the callbacks and preempt
  • add a stress test for big value serialization

@kostasrim kostasrim requested a review from chakaz July 18, 2024 12:44
@kostasrim kostasrim self-assigned this Jul 18, 2024
@kostasrim
Copy link
Contributor Author

chakaz
chakaz previously approved these changes Jul 18, 2024
@kostasrim kostasrim changed the title fix: rename big value limit flag in replication test fix: ub in RegisterOnChange and regression tests for big values Jul 18, 2024
@kostasrim kostasrim requested a review from chakaz July 18, 2024 18:16
for (const auto& ccb : change_cb_) {
CHECK(ccb.second);
Copy link
Contributor Author

@kostasrim kostasrim Jul 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sanity, cause it helped me identify the problem. UB is ub which doesn't gurantee this check, but it's free and you never know :)

@kostasrim
Copy link
Contributor Author

@@ -524,6 +525,39 @@ class DbSlice {
void CallChangeCallbacks(DbIndex id, const ChangeReq& cr) const;

private:
struct CounterCondFlag {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have some feedback about naming.
we already have BlockingCounter which has the same semantics. why not call it LocalBlockingCounter since it's just a single threaded version of the same class.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We currently use just a SharedMutex in the journal for the same problem. We can add a non-atomic mutex, switch to properly using lists or add this construct for both cases

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will take care of this in separate PR. Nice @dranikpg

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#3337 so I don't forget

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I actually think there is even more elegant solution to that that will void the need in any locking at all.
I think we can think of adding a quiescent notion to the transactional framework that will make sure calling callbacks during "safe" periods

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@romange happy to take this (but let's defer this until we get the other staff done). Can you plz expand your idea? I will create an issue to remember this :)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thought about it more. My approach won't work here because RegisterOnChange returns a version

@@ -524,6 +525,39 @@ class DbSlice {
void CallChangeCallbacks(DbIndex id, const ChangeReq& cr) const;

private:
struct CounterCondFlag {
void WaitUntilCounterIsZero() {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe Wait or WaitZero if Counter is part of the class name?

size_t mutating = 0;
};

class CounterConditionGuard {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if you add equivalent lock, unlock methods to LocalBlockingCounter you will be able to use std::lock_guard instead of writing a custom class.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Feels like hijacking the interface of the mutex/lock_guard since on lock we should not really lock anything. We only block on certain codepaths so std::unique_lock kinda acts as a counter now. I made the change though including the renames you suggested above :)

@dranikpg
Copy link
Contributor

I edited the code recently. So with support for big value serialization we do suspend now? Because previously we had atomic guards in all the callbacks

@kostasrim
Copy link
Contributor Author

I edited the code recently. So with support for big value serialization we do suspend now? Because previously we had atomic guards in all the callbacks

yes! But it;s safe, Shahar implemented the laundering iterator so preemptions won't harm us :)

@kostasrim kostasrim enabled auto-merge (squash) July 19, 2024 06:48
@kostasrim kostasrim merged commit 8a2d6ad into main Jul 19, 2024
20 checks passed
@kostasrim kostasrim deleted the fix_flag_in_tests branch July 19, 2024 07:03
Copy link
Collaborator

@chakaz chakaz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LG, small nits

Comment on lines +547 to +548
util::fb2::CondVarAny cond_var;
size_t mutating = 0;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please end var names with _, i.e. cond_var_ and _mutating_

}

void unlock() {
--mutating;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add DCHECK(mutating > 0); here

kireque referenced this pull request in kireque/home-ops Aug 8, 2024
…nfly ( v1.20.1 → v1.21.0 ) (#864)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[docker.dragonflydb.io/dragonflydb/dragonfly](https://togithub.com/dragonflydb/dragonfly)
| minor | `v1.20.1` -> `v1.21.0` |

---

### Release Notes

<details>
<summary>dragonflydb/dragonfly
(docker.dragonflydb.io/dragonflydb/dragonfly)</summary>

###
[`v1.21.0`](https://togithub.com/dragonflydb/dragonfly/releases/tag/v1.21.0)

[Compare
Source](https://togithub.com/dragonflydb/dragonfly/compare/v1.20.1...v1.21.0)

##### Dragonfly v1.21.0

Some prominent changes include:

- Alpha release of SSD Data tiering - enabled with flag `--prefix
some/path/basename`
- Very basic support of multi-tenancy
[@&#8203;3260](https://togithub.com/3260)
- HSETEX now supports NX option, see [our
docs](https://www.dragonflydb.io/docs/command-reference/hashes/hsetex).
-   Added support for JSON.MERGE and for JSON.MSET.
- valkey's replica-announce-ip and --cluster--announc--ip are
consolidated via `--announce-ip` flag.

##### What's Changed

- feat(server): master stop sending exec opcode to replica by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3289](https://togithub.com/dragonflydb/dragonfly/pull/3289)
- chore: optimize zpopminmax operations by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3291](https://togithub.com/dragonflydb/dragonfly/pull/3291)
- fix(json_family): Fix error in JsonFamilyTest.MGet by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3285](https://togithub.com/dragonflydb/dragonfly/pull/3285)
- fix: define macro WITH_AWS in cmake when flag is ON by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3296](https://togithub.com/dragonflydb/dragonfly/pull/3296)
- chore: Add 'memory arena show' command by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3298](https://togithub.com/dragonflydb/dragonfly/pull/3298)
- fix: missing logs on pytest failures
[#&#8203;3255](https://togithub.com/dragonflydb/dragonfly/issues/3255)
by [@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3272](https://togithub.com/dragonflydb/dragonfly/pull/3272)
- chore: refactor compact_object and introduce materialize method by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3300](https://togithub.com/dragonflydb/dragonfly/pull/3300)
- fix(acl): loading interleaved plain and hashed passwords by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3297](https://togithub.com/dragonflydb/dragonfly/pull/3297)
- chore: Add CompactObj Raw methods by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3303](https://togithub.com/dragonflydb/dragonfly/pull/3303)
- chore: On invalid TTL, print the TTL first by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3306](https://togithub.com/dragonflydb/dragonfly/pull/3306)
- chore: moving functions + renaming in tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3304](https://togithub.com/dragonflydb/dragonfly/pull/3304)
- fix(tests): Add missing awaits by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3273](https://togithub.com/dragonflydb/dragonfly/pull/3273)
- chore: refactoring around tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3299](https://togithub.com/dragonflydb/dragonfly/pull/3299)
- feat: yield when serialization is in progress by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3220](https://togithub.com/dragonflydb/dragonfly/pull/3220)
- refactor: Use `DbContext`, `OpArgs` and `Transaction` to access
`DbSlice` by [@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3311](https://togithub.com/dragonflydb/dragonfly/pull/3311)
- chore: Separate tiered serialization format from object values by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3310](https://togithub.com/dragonflydb/dragonfly/pull/3310)
- chore: add more community links to README by
[@&#8203;Niennienzz](https://togithub.com/Niennienzz) in
[https://github.com/dragonflydb/dragonfly/pull/3308](https://togithub.com/dragonflydb/dragonfly/pull/3308)
- fix(cluster): Join on specified attempt id by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3305](https://togithub.com/dragonflydb/dragonfly/pull/3305)
- chore(acl): add test with requirepass and aclfile by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3312](https://togithub.com/dragonflydb/dragonfly/pull/3312)
- chore: skip test_cluster_flushall_during_migration by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3316](https://togithub.com/dragonflydb/dragonfly/pull/3316)
- fix (pytest): generate unique random dbfilename for tests by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3317](https://togithub.com/dragonflydb/dragonfly/pull/3317)
- chore: bypass decoding/encoding of the data when performing offloading
by [@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3315](https://togithub.com/dragonflydb/dragonfly/pull/3315)
- refactor: acl helpers and global tables by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3309](https://togithub.com/dragonflydb/dragonfly/pull/3309)
- chore(tiering): Fixes by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3225](https://togithub.com/dragonflydb/dragonfly/pull/3225)
- fix(migration): Use transactions! by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3266](https://togithub.com/dragonflydb/dragonfly/pull/3266)
- fix: forbid DFLYCLUSTER commads set for emulated cluster mode by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3307](https://togithub.com/dragonflydb/dragonfly/pull/3307)
- feat(namespaces): Initial support for multi-tenant by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3260](https://togithub.com/dragonflydb/dragonfly/pull/3260)
- chore: improve dfly_bench stats by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3320](https://togithub.com/dragonflydb/dragonfly/pull/3320)
- chore: remove replace_deleted flag from hnswlib by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3323](https://togithub.com/dragonflydb/dragonfly/pull/3323)
- feat(test): Improve benchmark workflow by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3330](https://togithub.com/dragonflydb/dragonfly/pull/3330)
- fix: Proper shutdown sequence with Namespaces by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3333](https://togithub.com/dragonflydb/dragonfly/pull/3333)
- fix(test): copy logs for failed test during TEARDOWN phase by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3331](https://togithub.com/dragonflydb/dragonfly/pull/3331)
- fix(json_family): fix JSON.STRAPPEND command for JSON legacy mode by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3264](https://togithub.com/dragonflydb/dragonfly/pull/3264)
- chore(tiering): add protection against overruning memory budget by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3327](https://togithub.com/dragonflydb/dragonfly/pull/3327)
- chore: Add coordinated omission mode by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3332](https://togithub.com/dragonflydb/dragonfly/pull/3332)
- chore: implement sequential pass without the overlapping traffic by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3335](https://togithub.com/dragonflydb/dragonfly/pull/3335)
- feat: add an option to flush serialized entries on threshold limit by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3241](https://togithub.com/dragonflydb/dragonfly/pull/3241)
- feat(hset_family): Add NX option to HSETEX by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3295](https://togithub.com/dragonflydb/dragonfly/pull/3295)
- Fix blocking commands moved error by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3334](https://togithub.com/dragonflydb/dragonfly/pull/3334)
- fix: ub in RegisterOnChange and regression tests for big values by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3336](https://togithub.com/dragonflydb/dragonfly/pull/3336)
- fix: Cancel outgoing migration when retrying / closing by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3339](https://togithub.com/dragonflydb/dragonfly/pull/3339)
- chore: Make KeyIndex iterable by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3326](https://togithub.com/dragonflydb/dragonfly/pull/3326)
- fix: AllocationTracker::Remove return value was reversed by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3341](https://togithub.com/dragonflydb/dragonfly/pull/3341)
- chore: remove redundant metrics from memory stats by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3345](https://togithub.com/dragonflydb/dragonfly/pull/3345)
- fix: corruption in replication stream by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3344](https://togithub.com/dragonflydb/dragonfly/pull/3344)
- chore: clean up TaskQueue since we do not need multiple fibers for it
by [@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3348](https://togithub.com/dragonflydb/dragonfly/pull/3348)
- chore: pull helio by [@&#8203;romange](https://togithub.com/romange)
in
[https://github.com/dragonflydb/dragonfly/pull/3350](https://togithub.com/dragonflydb/dragonfly/pull/3350)
- chore: Log connection context when issuing dangerous cmds by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3352](https://togithub.com/dragonflydb/dragonfly/pull/3352)
- chore: small rename and add dcheck on LocalBlockingCounter by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3356](https://togithub.com/dragonflydb/dragonfly/pull/3356)
- refactor: reduce number of logs for cluster by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3357](https://togithub.com/dragonflydb/dragonfly/pull/3357)
- chore: fixes to dfly_bench by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3353](https://togithub.com/dragonflydb/dragonfly/pull/3353)
- chore: fix test_parser_memory_stats flakiness by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3354](https://togithub.com/dragonflydb/dragonfly/pull/3354)
- chore(server): Introduce StringSetWrapper by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3347](https://togithub.com/dragonflydb/dragonfly/pull/3347)
- fix: do not upload offload values on a first hit by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3360](https://togithub.com/dragonflydb/dragonfly/pull/3360)
- chore(tiering): Range functions + small refactoring by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3207](https://togithub.com/dragonflydb/dragonfly/pull/3207)
- fix: failure in test_cluster_fuzzymigration by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3363](https://togithub.com/dragonflydb/dragonfly/pull/3363)
- fix(server): Require >=1 args to `GETEX` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3366](https://togithub.com/dragonflydb/dragonfly/pull/3366)
- fix(transaction): Fix namespace access by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3364](https://togithub.com/dragonflydb/dragonfly/pull/3364)
- chore: disable compression on big values by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3358](https://togithub.com/dragonflydb/dragonfly/pull/3358)
- fix: protect OnJournalEntry with ConditionGuard by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3367](https://togithub.com/dragonflydb/dragonfly/pull/3367)
- chore: Introduce CoolQueue by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3365](https://togithub.com/dragonflydb/dragonfly/pull/3365)
- chore: small fixes around tiering by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3368](https://togithub.com/dragonflydb/dragonfly/pull/3368)
- chore: add a test for HeapSize() function by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3349](https://togithub.com/dragonflydb/dragonfly/pull/3349)
- chore: simplify computation of used_mem_current by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3372](https://togithub.com/dragonflydb/dragonfly/pull/3372)
- chore: disable cluster_fuzzymigration by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3373](https://togithub.com/dragonflydb/dragonfly/pull/3373)
- chore(replica): remove unused methods in the Replica class by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3374](https://togithub.com/dragonflydb/dragonfly/pull/3374)
- fix(transaction): Properly store block cancel status by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3371](https://togithub.com/dragonflydb/dragonfly/pull/3371)
- chore: Track db_slice table memory instantly by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3375](https://togithub.com/dragonflydb/dragonfly/pull/3375)
- chore: add mem test for big values and default the flag by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3369](https://togithub.com/dragonflydb/dragonfly/pull/3369)
- update: replication_acks_interval flag to 1000 by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3378](https://togithub.com/dragonflydb/dragonfly/pull/3378)
- chore: dfly_bench - print ongoing error counts by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3382](https://togithub.com/dragonflydb/dragonfly/pull/3382)
- chore: introduce a cool queue that gradually retires cool items by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3377](https://togithub.com/dragonflydb/dragonfly/pull/3377)
- chore: update cached stats inside PollExecution by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3376](https://togithub.com/dragonflydb/dragonfly/pull/3376)
- fix: Fix `test_take_over_seeder` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3385](https://togithub.com/dragonflydb/dragonfly/pull/3385)
- chore: reenable evictions upon insertion to avoid OOM rejections by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3387](https://togithub.com/dragonflydb/dragonfly/pull/3387)
- fix: remove fiber guard from non atomic section by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3381](https://togithub.com/dragonflydb/dragonfly/pull/3381)
- chore: do not preempt on db_slice::RegisterOnChange by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3388](https://togithub.com/dragonflydb/dragonfly/pull/3388)
- fix: disable inline transactions when db_slice has registered
callbacks by [@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3391](https://togithub.com/dragonflydb/dragonfly/pull/3391)
- fix: test_big_value_serialization_memory_limit shutdown timeout by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3390](https://togithub.com/dragonflydb/dragonfly/pull/3390)
- chore: set serialization_max_chunk_size to 1 byte by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3379](https://togithub.com/dragonflydb/dragonfly/pull/3379)
- chore: tiered fixes by [@&#8203;romange](https://togithub.com/romange)
in
[https://github.com/dragonflydb/dragonfly/pull/3393](https://togithub.com/dragonflydb/dragonfly/pull/3393)
- fix(acl): remove none from acl categories by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3392](https://togithub.com/dragonflydb/dragonfly/pull/3392)
- chore: tiering - make Modify work with cool storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3395](https://togithub.com/dragonflydb/dragonfly/pull/3395)
- fix: Fix unsupported object type rejson-rl in RedisInsight by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3384](https://togithub.com/dragonflydb/dragonfly/pull/3384)
- Revert "chore: set serialization_max_chunk_size to 1 byte
([#&#8203;3379](https://togithub.com/dragonflydb/dragonfly/issues/3379))"
by [@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3398](https://togithub.com/dragonflydb/dragonfly/pull/3398)
- chore(tiering): Move cool entry warmup to DbSlice by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3397](https://togithub.com/dragonflydb/dragonfly/pull/3397)
- fix: reenable macos builds by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3399](https://togithub.com/dragonflydb/dragonfly/pull/3399)
- chore: Don't print password to log on replica `AUTH` failure by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3403](https://togithub.com/dragonflydb/dragonfly/pull/3403)
- chore: Support setting the value of `replica-priority` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3400](https://togithub.com/dragonflydb/dragonfly/pull/3400)
- feat: stabilize non-coordinated omission mode by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3407](https://togithub.com/dragonflydb/dragonfly/pull/3407)
- chore: cancel slot migrations on shutdown by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3405](https://togithub.com/dragonflydb/dragonfly/pull/3405)
- chore: add db_slice lock to protect segments from preemptions by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3406](https://togithub.com/dragonflydb/dragonfly/pull/3406)
- chore: increase timeout of regression tests by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3412](https://togithub.com/dragonflydb/dragonfly/pull/3412)
- fix: crash with NS in multi/exec
[#&#8203;3410](https://togithub.com/dragonflydb/dragonfly/issues/3410)
by [@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3415](https://togithub.com/dragonflydb/dragonfly/pull/3415)
- fix: json.merge exception crash by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3409](https://togithub.com/dragonflydb/dragonfly/pull/3409)
- fix(connection): Count memchached pipelined commands by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3413](https://togithub.com/dragonflydb/dragonfly/pull/3413)
- chore: remove verbose printing of tests by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3420](https://togithub.com/dragonflydb/dragonfly/pull/3420)
- chore: Tiered fixes by [@&#8203;romange](https://togithub.com/romange)
in
[https://github.com/dragonflydb/dragonfly/pull/3401](https://togithub.com/dragonflydb/dragonfly/pull/3401)
- feat: Support non-root paths for json.merge by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3419](https://togithub.com/dragonflydb/dragonfly/pull/3419)
- chore: skip cluster tests if redis-server wasn't found by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3416](https://togithub.com/dragonflydb/dragonfly/pull/3416)
- chore: expose metric that shows how many task submitters are blocked
by [@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3427](https://togithub.com/dragonflydb/dragonfly/pull/3427)
- chore: optimize SendStringArrInternal even more by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3425](https://togithub.com/dragonflydb/dragonfly/pull/3425)
- fix(server): Implement SCRIPT GC command by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3431](https://togithub.com/dragonflydb/dragonfly/pull/3431)
- chore: retire TEST_EnableHeartBeat by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3435](https://togithub.com/dragonflydb/dragonfly/pull/3435)
- feat(server): Support `replica-announce-ip`/`port` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3421](https://togithub.com/dragonflydb/dragonfly/pull/3421)
- test(cluster): Migration replication test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3417](https://togithub.com/dragonflydb/dragonfly/pull/3417)
- chore: improve replication locks by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3436](https://togithub.com/dragonflydb/dragonfly/pull/3436)
- chore: reorganize EngineShard::Heartbeat by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3437](https://togithub.com/dragonflydb/dragonfly/pull/3437)
- chore: fix memcached pipeline test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3438](https://togithub.com/dragonflydb/dragonfly/pull/3438)
- chore: simplify master replication cancelation interface by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3439](https://togithub.com/dragonflydb/dragonfly/pull/3439)
- chore: reset serialization_max_chunk_size to 0 by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3432](https://togithub.com/dragonflydb/dragonfly/pull/3432)
- feat: DEBUG REPLICA PAUSE now pauses fullsync by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3441](https://togithub.com/dragonflydb/dragonfly/pull/3441)
- test: fix test_disconnect_replica by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3442](https://togithub.com/dragonflydb/dragonfly/pull/3442)
- fix: cluster_mgr.py to use `CLUSTER MYID` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3444](https://togithub.com/dragonflydb/dragonfly/pull/3444)
- chore: disable serialization_max_chunk_size in regtests by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3445](https://togithub.com/dragonflydb/dragonfly/pull/3445)
- fix: properly seriailize meta buffer in SendStringArrInternal by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3455](https://togithub.com/dragonflydb/dragonfly/pull/3455)

**Full Changelog**:
dragonflydb/dragonfly@v1.20.0...v1.21.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://togithub.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yMS4wIiwidXBkYXRlZEluVmVyIjoiMzguMjEuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciJdfQ==-->

Co-authored-by: kireque-bot[bot] <143391978+kireque-bot[bot]@users.noreply.github.com>
lumiere-bot bot referenced this pull request in coolguy1771/home-ops Aug 8, 2024
…21.0 ) (#5180)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[ghcr.io/dragonflydb/dragonfly](https://togithub.com/dragonflydb/dragonfly)
| minor | `v1.20.1` -> `v1.21.0` |

---

### Release Notes

<details>
<summary>dragonflydb/dragonfly (ghcr.io/dragonflydb/dragonfly)</summary>

###
[`v1.21.0`](https://togithub.com/dragonflydb/dragonfly/releases/tag/v1.21.0)

[Compare
Source](https://togithub.com/dragonflydb/dragonfly/compare/v1.20.1...v1.21.0)

##### Dragonfly v1.21.0

Some prominent changes include:

- Alpha release of SSD Data tiering - enabled with flag `--prefix
some/path/basename`
- Very basic support of multi-tenancy
[@&#8203;3260](https://togithub.com/3260)
- HSETEX now supports NX option, see [our
docs](https://www.dragonflydb.io/docs/command-reference/hashes/hsetex).
-   Added support for JSON.MERGE and for JSON.MSET.
- valkey's replica-announce-ip and --cluster--announc--ip are
consolidated via `--announce-ip` flag.

##### What's Changed

- feat(server): master stop sending exec opcode to replica by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3289](https://togithub.com/dragonflydb/dragonfly/pull/3289)
- chore: optimize zpopminmax operations by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3291](https://togithub.com/dragonflydb/dragonfly/pull/3291)
- fix(json_family): Fix error in JsonFamilyTest.MGet by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3285](https://togithub.com/dragonflydb/dragonfly/pull/3285)
- fix: define macro WITH_AWS in cmake when flag is ON by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3296](https://togithub.com/dragonflydb/dragonfly/pull/3296)
- chore: Add 'memory arena show' command by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3298](https://togithub.com/dragonflydb/dragonfly/pull/3298)
- fix: missing logs on pytest failures
[#&#8203;3255](https://togithub.com/dragonflydb/dragonfly/issues/3255)
by [@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3272](https://togithub.com/dragonflydb/dragonfly/pull/3272)
- chore: refactor compact_object and introduce materialize method by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3300](https://togithub.com/dragonflydb/dragonfly/pull/3300)
- fix(acl): loading interleaved plain and hashed passwords by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3297](https://togithub.com/dragonflydb/dragonfly/pull/3297)
- chore: Add CompactObj Raw methods by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3303](https://togithub.com/dragonflydb/dragonfly/pull/3303)
- chore: On invalid TTL, print the TTL first by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3306](https://togithub.com/dragonflydb/dragonfly/pull/3306)
- chore: moving functions + renaming in tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3304](https://togithub.com/dragonflydb/dragonfly/pull/3304)
- fix(tests): Add missing awaits by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3273](https://togithub.com/dragonflydb/dragonfly/pull/3273)
- chore: refactoring around tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3299](https://togithub.com/dragonflydb/dragonfly/pull/3299)
- feat: yield when serialization is in progress by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3220](https://togithub.com/dragonflydb/dragonfly/pull/3220)
- refactor: Use `DbContext`, `OpArgs` and `Transaction` to access
`DbSlice` by [@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3311](https://togithub.com/dragonflydb/dragonfly/pull/3311)
- chore: Separate tiered serialization format from object values by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3310](https://togithub.com/dragonflydb/dragonfly/pull/3310)
- chore: add more community links to README by
[@&#8203;Niennienzz](https://togithub.com/Niennienzz) in
[https://github.com/dragonflydb/dragonfly/pull/3308](https://togithub.com/dragonflydb/dragonfly/pull/3308)
- fix(cluster): Join on specified attempt id by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3305](https://togithub.com/dragonflydb/dragonfly/pull/3305)
- chore(acl): add test with requirepass and aclfile by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3312](https://togithub.com/dragonflydb/dragonfly/pull/3312)
- chore: skip test_cluster_flushall_during_migration by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3316](https://togithub.com/dragonflydb/dragonfly/pull/3316)
- fix (pytest): generate unique random dbfilename for tests by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3317](https://togithub.com/dragonflydb/dragonfly/pull/3317)
- chore: bypass decoding/encoding of the data when performing offloading
by [@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3315](https://togithub.com/dragonflydb/dragonfly/pull/3315)
- refactor: acl helpers and global tables by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3309](https://togithub.com/dragonflydb/dragonfly/pull/3309)
- chore(tiering): Fixes by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3225](https://togithub.com/dragonflydb/dragonfly/pull/3225)
- fix(migration): Use transactions! by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3266](https://togithub.com/dragonflydb/dragonfly/pull/3266)
- fix: forbid DFLYCLUSTER commads set for emulated cluster mode by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3307](https://togithub.com/dragonflydb/dragonfly/pull/3307)
- feat(namespaces): Initial support for multi-tenant by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3260](https://togithub.com/dragonflydb/dragonfly/pull/3260)
- chore: improve dfly_bench stats by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3320](https://togithub.com/dragonflydb/dragonfly/pull/3320)
- chore: remove replace_deleted flag from hnswlib by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3323](https://togithub.com/dragonflydb/dragonfly/pull/3323)
- feat(test): Improve benchmark workflow by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3330](https://togithub.com/dragonflydb/dragonfly/pull/3330)
- fix: Proper shutdown sequence with Namespaces by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3333](https://togithub.com/dragonflydb/dragonfly/pull/3333)
- fix(test): copy logs for failed test during TEARDOWN phase by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3331](https://togithub.com/dragonflydb/dragonfly/pull/3331)
- fix(json_family): fix JSON.STRAPPEND command for JSON legacy mode by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3264](https://togithub.com/dragonflydb/dragonfly/pull/3264)
- chore(tiering): add protection against overruning memory budget by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3327](https://togithub.com/dragonflydb/dragonfly/pull/3327)
- chore: Add coordinated omission mode by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3332](https://togithub.com/dragonflydb/dragonfly/pull/3332)
- chore: implement sequential pass without the overlapping traffic by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3335](https://togithub.com/dragonflydb/dragonfly/pull/3335)
- feat: add an option to flush serialized entries on threshold limit by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3241](https://togithub.com/dragonflydb/dragonfly/pull/3241)
- feat(hset_family): Add NX option to HSETEX by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3295](https://togithub.com/dragonflydb/dragonfly/pull/3295)
- Fix blocking commands moved error by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3334](https://togithub.com/dragonflydb/dragonfly/pull/3334)
- fix: ub in RegisterOnChange and regression tests for big values by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3336](https://togithub.com/dragonflydb/dragonfly/pull/3336)
- fix: Cancel outgoing migration when retrying / closing by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3339](https://togithub.com/dragonflydb/dragonfly/pull/3339)
- chore: Make KeyIndex iterable by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3326](https://togithub.com/dragonflydb/dragonfly/pull/3326)
- fix: AllocationTracker::Remove return value was reversed by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3341](https://togithub.com/dragonflydb/dragonfly/pull/3341)
- chore: remove redundant metrics from memory stats by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3345](https://togithub.com/dragonflydb/dragonfly/pull/3345)
- fix: corruption in replication stream by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3344](https://togithub.com/dragonflydb/dragonfly/pull/3344)
- chore: clean up TaskQueue since we do not need multiple fibers for it
by [@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3348](https://togithub.com/dragonflydb/dragonfly/pull/3348)
- chore: pull helio by [@&#8203;romange](https://togithub.com/romange)
in
[https://github.com/dragonflydb/dragonfly/pull/3350](https://togithub.com/dragonflydb/dragonfly/pull/3350)
- chore: Log connection context when issuing dangerous cmds by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3352](https://togithub.com/dragonflydb/dragonfly/pull/3352)
- chore: small rename and add dcheck on LocalBlockingCounter by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3356](https://togithub.com/dragonflydb/dragonfly/pull/3356)
- refactor: reduce number of logs for cluster by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3357](https://togithub.com/dragonflydb/dragonfly/pull/3357)
- chore: fixes to dfly_bench by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3353](https://togithub.com/dragonflydb/dragonfly/pull/3353)
- chore: fix test_parser_memory_stats flakiness by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3354](https://togithub.com/dragonflydb/dragonfly/pull/3354)
- chore(server): Introduce StringSetWrapper by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3347](https://togithub.com/dragonflydb/dragonfly/pull/3347)
- fix: do not upload offload values on a first hit by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3360](https://togithub.com/dragonflydb/dragonfly/pull/3360)
- chore(tiering): Range functions + small refactoring by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3207](https://togithub.com/dragonflydb/dragonfly/pull/3207)
- fix: failure in test_cluster_fuzzymigration by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3363](https://togithub.com/dragonflydb/dragonfly/pull/3363)
- fix(server): Require >=1 args to `GETEX` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3366](https://togithub.com/dragonflydb/dragonfly/pull/3366)
- fix(transaction): Fix namespace access by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3364](https://togithub.com/dragonflydb/dragonfly/pull/3364)
- chore: disable compression on big values by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3358](https://togithub.com/dragonflydb/dragonfly/pull/3358)
- fix: protect OnJournalEntry with ConditionGuard by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3367](https://togithub.com/dragonflydb/dragonfly/pull/3367)
- chore: Introduce CoolQueue by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3365](https://togithub.com/dragonflydb/dragonfly/pull/3365)
- chore: small fixes around tiering by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3368](https://togithub.com/dragonflydb/dragonfly/pull/3368)
- chore: add a test for HeapSize() function by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3349](https://togithub.com/dragonflydb/dragonfly/pull/3349)
- chore: simplify computation of used_mem_current by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3372](https://togithub.com/dragonflydb/dragonfly/pull/3372)
- chore: disable cluster_fuzzymigration by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3373](https://togithub.com/dragonflydb/dragonfly/pull/3373)
- chore(replica): remove unused methods in the Replica class by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3374](https://togithub.com/dragonflydb/dragonfly/pull/3374)
- fix(transaction): Properly store block cancel status by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3371](https://togithub.com/dragonflydb/dragonfly/pull/3371)
- chore: Track db_slice table memory instantly by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3375](https://togithub.com/dragonflydb/dragonfly/pull/3375)
- chore: add mem test for big values and default the flag by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3369](https://togithub.com/dragonflydb/dragonfly/pull/3369)
- update: replication_acks_interval flag to 1000 by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3378](https://togithub.com/dragonflydb/dragonfly/pull/3378)
- chore: dfly_bench - print ongoing error counts by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3382](https://togithub.com/dragonflydb/dragonfly/pull/3382)
- chore: introduce a cool queue that gradually retires cool items by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3377](https://togithub.com/dragonflydb/dragonfly/pull/3377)
- chore: update cached stats inside PollExecution by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3376](https://togithub.com/dragonflydb/dragonfly/pull/3376)
- fix: Fix `test_take_over_seeder` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3385](https://togithub.com/dragonflydb/dragonfly/pull/3385)
- chore: reenable evictions upon insertion to avoid OOM rejections by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3387](https://togithub.com/dragonflydb/dragonfly/pull/3387)
- fix: remove fiber guard from non atomic section by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3381](https://togithub.com/dragonflydb/dragonfly/pull/3381)
- chore: do not preempt on db_slice::RegisterOnChange by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3388](https://togithub.com/dragonflydb/dragonfly/pull/3388)
- fix: disable inline transactions when db_slice has registered
callbacks by [@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3391](https://togithub.com/dragonflydb/dragonfly/pull/3391)
- fix: test_big_value_serialization_memory_limit shutdown timeout by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3390](https://togithub.com/dragonflydb/dragonfly/pull/3390)
- chore: set serialization_max_chunk_size to 1 byte by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3379](https://togithub.com/dragonflydb/dragonfly/pull/3379)
- chore: tiered fixes by [@&#8203;romange](https://togithub.com/romange)
in
[https://github.com/dragonflydb/dragonfly/pull/3393](https://togithub.com/dragonflydb/dragonfly/pull/3393)
- fix(acl): remove none from acl categories by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3392](https://togithub.com/dragonflydb/dragonfly/pull/3392)
- chore: tiering - make Modify work with cool storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3395](https://togithub.com/dragonflydb/dragonfly/pull/3395)
- fix: Fix unsupported object type rejson-rl in RedisInsight by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3384](https://togithub.com/dragonflydb/dragonfly/pull/3384)
- Revert "chore: set serialization_max_chunk_size to 1 byte
([#&#8203;3379](https://togithub.com/dragonflydb/dragonfly/issues/3379))"
by [@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3398](https://togithub.com/dragonflydb/dragonfly/pull/3398)
- chore(tiering): Move cool entry warmup to DbSlice by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3397](https://togithub.com/dragonflydb/dragonfly/pull/3397)
- fix: reenable macos builds by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3399](https://togithub.com/dragonflydb/dragonfly/pull/3399)
- chore: Don't print password to log on replica `AUTH` failure by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3403](https://togithub.com/dragonflydb/dragonfly/pull/3403)
- chore: Support setting the value of `replica-priority` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3400](https://togithub.com/dragonflydb/dragonfly/pull/3400)
- feat: stabilize non-coordinated omission mode by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3407](https://togithub.com/dragonflydb/dragonfly/pull/3407)
- chore: cancel slot migrations on shutdown by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3405](https://togithub.com/dragonflydb/dragonfly/pull/3405)
- chore: add db_slice lock to protect segments from preemptions by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3406](https://togithub.com/dragonflydb/dragonfly/pull/3406)
- chore: increase timeout of regression tests by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3412](https://togithub.com/dragonflydb/dragonfly/pull/3412)
- fix: crash with NS in multi/exec
[#&#8203;3410](https://togithub.com/dragonflydb/dragonfly/issues/3410)
by [@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3415](https://togithub.com/dragonflydb/dragonfly/pull/3415)
- fix: json.merge exception crash by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3409](https://togithub.com/dragonflydb/dragonfly/pull/3409)
- fix(connection): Count memchached pipelined commands by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3413](https://togithub.com/dragonflydb/dragonfly/pull/3413)
- chore: remove verbose printing of tests by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3420](https://togithub.com/dragonflydb/dragonfly/pull/3420)
- chore: Tiered fixes by [@&#8203;romange](https://togithub.com/romange)
in
[https://github.com/dragonflydb/dragonfly/pull/3401](https://togithub.com/dragonflydb/dragonfly/pull/3401)
- feat: Support non-root paths for json.merge by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3419](https://togithub.com/dragonflydb/dragonfly/pull/3419)
- chore: skip cluster tests if redis-server wasn't found by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3416](https://togithub.com/dragonflydb/dragonfly/pull/3416)
- chore: expose metric that shows how many task submitters are blocked
by [@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3427](https://togithub.com/dragonflydb/dragonfly/pull/3427)
- chore: optimize SendStringArrInternal even more by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3425](https://togithub.com/dragonflydb/dragonfly/pull/3425)
- fix(server): Implement SCRIPT GC command by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3431](https://togithub.com/dragonflydb/dragonfly/pull/3431)
- chore: retire TEST_EnableHeartBeat by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3435](https://togithub.com/dragonflydb/dragonfly/pull/3435)
- feat(server): Support `replica-announce-ip`/`port` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3421](https://togithub.com/dragonflydb/dragonfly/pull/3421)
- test(cluster): Migration replication test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3417](https://togithub.com/dragonflydb/dragonfly/pull/3417)
- chore: improve replication locks by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3436](https://togithub.com/dragonflydb/dragonfly/pull/3436)
- chore: reorganize EngineShard::Heartbeat by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3437](https://togithub.com/dragonflydb/dragonfly/pull/3437)
- chore: fix memcached pipeline test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3438](https://togithub.com/dragonflydb/dragonfly/pull/3438)
- chore: simplify master replication cancelation interface by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3439](https://togithub.com/dragonflydb/dragonfly/pull/3439)
- chore: reset serialization_max_chunk_size to 0 by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3432](https://togithub.com/dragonflydb/dragonfly/pull/3432)
- feat: DEBUG REPLICA PAUSE now pauses fullsync by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3441](https://togithub.com/dragonflydb/dragonfly/pull/3441)
- test: fix test_disconnect_replica by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3442](https://togithub.com/dragonflydb/dragonfly/pull/3442)
- fix: cluster_mgr.py to use `CLUSTER MYID` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3444](https://togithub.com/dragonflydb/dragonfly/pull/3444)
- chore: disable serialization_max_chunk_size in regtests by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3445](https://togithub.com/dragonflydb/dragonfly/pull/3445)
- fix: properly seriailize meta buffer in SendStringArrInternal by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3455](https://togithub.com/dragonflydb/dragonfly/pull/3455)

**Full Changelog**:
dragonflydb/dragonfly@v1.20.0...v1.21.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://togithub.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yMS4wIiwidXBkYXRlZEluVmVyIjoiMzguMjEuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciJdfQ==-->

Co-authored-by: lumiere-bot[bot] <98047013+lumiere-bot[bot]@users.noreply.github.com>
spiceratops referenced this pull request in spiceratops/k8s-gitops Aug 20, 2024
#894)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[ghcr.io/dragonflydb/dragonfly](https://togithub.com/dragonflydb/dragonfly)
| minor | `v1.20.1` -> `v1.21.2` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>dragonflydb/dragonfly (ghcr.io/dragonflydb/dragonfly)</summary>

###
[`v1.21.2`](https://togithub.com/dragonflydb/dragonfly/releases/tag/v1.21.2)

[Compare
Source](https://togithub.com/dragonflydb/dragonfly/compare/v1.21.1...v1.21.2)

##### Dragonfly v1.21.2

This is a patch release.

fix: disable code that can cause potential deadlocks during the
replication
([#&#8203;3521](https://togithub.com/dragonflydb/dragonfly/issues/3521))

This follows up on **[Dragonfly
v1.21.0](https://togithub.com/dragonflydb/dragonfly/releases/tag/v1.21.0)**
release, that includes the following prominent features:

- Alpha release of SSD Data tiering - enabled with flag `--tiered_prefix
some/path/basename`
- Very basic support of multi-tenancy
[#&#8203;3260](https://togithub.com/dragonflydb/dragonfly/issues/3260)
- HSETEX now supports NX option, see [our
docs](https://www.dragonflydb.io/docs/command-reference/hashes/hsetex).
-   Added support for JSON.MERGE and for JSON.MSET.
- valkey's replica-announce-ip and --cluster--announc--ip are
consolidated via `--announce-ip` flag.

**Full Changelog**:
dragonflydb/dragonfly@v1.21.1...v1.21.2

###
[`v1.21.1`](https://togithub.com/dragonflydb/dragonfly/releases/tag/v1.21.1)

[Compare
Source](https://togithub.com/dragonflydb/dragonfly/compare/v1.21.0...v1.21.1)

##### Dragonfly v1.21.1

This is a patch release.

fix: the replication from older masters to newer versions
([#&#8203;3473](https://togithub.com/dragonflydb/dragonfly/issues/3473))

This follows up on **[Dragonfly
v1.21.0](https://togithub.com/dragonflydb/dragonfly/releases/tag/v1.21.0)**
release, that includes the following prominent features:

- Alpha release of SSD Data tiering - enabled with flag `--tiered_prefix
some/path/basename`
- Very basic support of multi-tenancy
[@&#8203;3260](https://togithub.com/3260)
- HSETEX now supports NX option, see [our
docs](https://www.dragonflydb.io/docs/command-reference/hashes/hsetex).
-   Added support for JSON.MERGE and for JSON.MSET.
- valkey's replica-announce-ip and --cluster--announc--ip are
consolidated via `--announce-ip` flag.

###
[`v1.21.0`](https://togithub.com/dragonflydb/dragonfly/releases/tag/v1.21.0)

[Compare
Source](https://togithub.com/dragonflydb/dragonfly/compare/v1.20.1...v1.21.0)

##### Dragonfly v1.21.0

Some prominent changes include:

- Alpha release of SSD Data tiering - enabled with flag `--prefix
some/path/basename`
- Very basic support of multi-tenancy
[@&#8203;3260](https://togithub.com/3260)
- HSETEX now supports NX option, see [our
docs](https://www.dragonflydb.io/docs/command-reference/hashes/hsetex).
-   Added support for JSON.MERGE and for JSON.MSET.
- valkey's replica-announce-ip and --cluster--announc--ip are
consolidated via `--announce-ip` flag.

##### What's Changed

- feat(server): master stop sending exec opcode to replica by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3289](https://togithub.com/dragonflydb/dragonfly/pull/3289)
- chore: optimize zpopminmax operations by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3291](https://togithub.com/dragonflydb/dragonfly/pull/3291)
- fix(json_family): Fix error in JsonFamilyTest.MGet by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3285](https://togithub.com/dragonflydb/dragonfly/pull/3285)
- fix: define macro WITH_AWS in cmake when flag is ON by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3296](https://togithub.com/dragonflydb/dragonfly/pull/3296)
- chore: Add 'memory arena show' command by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3298](https://togithub.com/dragonflydb/dragonfly/pull/3298)
- fix: missing logs on pytest failures
[#&#8203;3255](https://togithub.com/dragonflydb/dragonfly/issues/3255)
by [@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3272](https://togithub.com/dragonflydb/dragonfly/pull/3272)
- chore: refactor compact_object and introduce materialize method by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3300](https://togithub.com/dragonflydb/dragonfly/pull/3300)
- fix(acl): loading interleaved plain and hashed passwords by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3297](https://togithub.com/dragonflydb/dragonfly/pull/3297)
- chore: Add CompactObj Raw methods by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3303](https://togithub.com/dragonflydb/dragonfly/pull/3303)
- chore: On invalid TTL, print the TTL first by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3306](https://togithub.com/dragonflydb/dragonfly/pull/3306)
- chore: moving functions + renaming in tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3304](https://togithub.com/dragonflydb/dragonfly/pull/3304)
- fix(tests): Add missing awaits by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3273](https://togithub.com/dragonflydb/dragonfly/pull/3273)
- chore: refactoring around tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3299](https://togithub.com/dragonflydb/dragonfly/pull/3299)
- feat: yield when serialization is in progress by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3220](https://togithub.com/dragonflydb/dragonfly/pull/3220)
- refactor: Use `DbContext`, `OpArgs` and `Transaction` to access
`DbSlice` by [@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3311](https://togithub.com/dragonflydb/dragonfly/pull/3311)
- chore: Separate tiered serialization format from object values by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3310](https://togithub.com/dragonflydb/dragonfly/pull/3310)
- chore: add more community links to README by
[@&#8203;Niennienzz](https://togithub.com/Niennienzz) in
[https://github.com/dragonflydb/dragonfly/pull/3308](https://togithub.com/dragonflydb/dragonfly/pull/3308)
- fix(cluster): Join on specified attempt id by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3305](https://togithub.com/dragonflydb/dragonfly/pull/3305)
- chore(acl): add test with requirepass and aclfile by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3312](https://togithub.com/dragonflydb/dragonfly/pull/3312)
- chore: skip test_cluster_flushall_during_migration by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3316](https://togithub.com/dragonflydb/dragonfly/pull/3316)
- fix (pytest): generate unique random dbfilename for tests by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3317](https://togithub.com/dragonflydb/dragonfly/pull/3317)
- chore: bypass decoding/encoding of the data when performing offloading
by [@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3315](https://togithub.com/dragonflydb/dragonfly/pull/3315)
- refactor: acl helpers and global tables by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3309](https://togithub.com/dragonflydb/dragonfly/pull/3309)
- chore(tiering): Fixes by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3225](https://togithub.com/dragonflydb/dragonfly/pull/3225)
- fix(migration): Use transactions! by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3266](https://togithub.com/dragonflydb/dragonfly/pull/3266)
- fix: forbid DFLYCLUSTER commads set for emulated cluster mode by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3307](https://togithub.com/dragonflydb/dragonfly/pull/3307)
- feat(namespaces): Initial support for multi-tenant by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3260](https://togithub.com/dragonflydb/dragonfly/pull/3260)
- chore: improve dfly_bench stats by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3320](https://togithub.com/dragonflydb/dragonfly/pull/3320)
- chore: remove replace_deleted flag from hnswlib by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3323](https://togithub.com/dragonflydb/dragonfly/pull/3323)
- feat(test): Improve benchmark workflow by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3330](https://togithub.com/dragonflydb/dragonfly/pull/3330)
- fix: Proper shutdown sequence with Namespaces by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3333](https://togithub.com/dragonflydb/dragonfly/pull/3333)
- fix(test): copy logs for failed test during TEARDOWN phase by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3331](https://togithub.com/dragonflydb/dragonfly/pull/3331)
- fix(json_family): fix JSON.STRAPPEND command for JSON legacy mode by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3264](https://togithub.com/dragonflydb/dragonfly/pull/3264)
- chore(tiering): add protection against overruning memory budget by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3327](https://togithub.com/dragonflydb/dragonfly/pull/3327)
- chore: Add coordinated omission mode by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3332](https://togithub.com/dragonflydb/dragonfly/pull/3332)
- chore: implement sequential pass without the overlapping traffic by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3335](https://togithub.com/dragonflydb/dragonfly/pull/3335)
- feat: add an option to flush serialized entries on threshold limit by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3241](https://togithub.com/dragonflydb/dragonfly/pull/3241)
- feat(hset_family): Add NX option to HSETEX by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3295](https://togithub.com/dragonflydb/dragonfly/pull/3295)
- Fix blocking commands moved error by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3334](https://togithub.com/dragonflydb/dragonfly/pull/3334)
- fix: ub in RegisterOnChange and regression tests for big values by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3336](https://togithub.com/dragonflydb/dragonfly/pull/3336)
- fix: Cancel outgoing migration when retrying / closing by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3339](https://togithub.com/dragonflydb/dragonfly/pull/3339)
- chore: Make KeyIndex iterable by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3326](https://togithub.com/dragonflydb/dragonfly/pull/3326)
- fix: AllocationTracker::Remove return value was reversed by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3341](https://togithub.com/dragonflydb/dragonfly/pull/3341)
- chore: remove redundant metrics from memory stats by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3345](https://togithub.com/dragonflydb/dragonfly/pull/3345)
- fix: corruption in replication stream by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3344](https://togithub.com/dragonflydb/dragonfly/pull/3344)
- chore: clean up TaskQueue since we do not need multiple fibers for it
by [@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3348](https://togithub.com/dragonflydb/dragonfly/pull/3348)
- chore: pull helio by [@&#8203;romange](https://togithub.com/romange)
in
[https://github.com/dragonflydb/dragonfly/pull/3350](https://togithub.com/dragonflydb/dragonfly/pull/3350)
- chore: Log connection context when issuing dangerous cmds by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3352](https://togithub.com/dragonflydb/dragonfly/pull/3352)
- chore: small rename and add dcheck on LocalBlockingCounter by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3356](https://togithub.com/dragonflydb/dragonfly/pull/3356)
- refactor: reduce number of logs for cluster by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3357](https://togithub.com/dragonflydb/dragonfly/pull/3357)
- chore: fixes to dfly_bench by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3353](https://togithub.com/dragonflydb/dragonfly/pull/3353)
- chore: fix test_parser_memory_stats flakiness by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3354](https://togithub.com/dragonflydb/dragonfly/pull/3354)
- chore(server): Introduce StringSetWrapper by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3347](https://togithub.com/dragonflydb/dragonfly/pull/3347)
- fix: do not upload offload values on a first hit by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3360](https://togithub.com/dragonflydb/dragonfly/pull/3360)
- chore(tiering): Range functions + small refactoring by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3207](https://togithub.com/dragonflydb/dragonfly/pull/3207)
- fix: failure in test_cluster_fuzzymigration by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3363](https://togithub.com/dragonflydb/dragonfly/pull/3363)
- fix(server): Require >=1 args to `GETEX` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3366](https://togithub.com/dragonflydb/dragonfly/pull/3366)
- fix(transaction): Fix namespace access by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3364](https://togithub.com/dragonflydb/dragonfly/pull/3364)
- chore: disable compression on big values by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3358](https://togithub.com/dragonflydb/dragonfly/pull/3358)
- fix: protect OnJournalEntry with ConditionGuard by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3367](https://togithub.com/dragonflydb/dragonfly/pull/3367)
- chore: Introduce CoolQueue by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3365](https://togithub.com/dragonflydb/dragonfly/pull/3365)
- chore: small fixes around tiering by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3368](https://togithub.com/dragonflydb/dragonfly/pull/3368)
- chore: add a test for HeapSize() function by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3349](https://togithub.com/dragonflydb/dragonfly/pull/3349)
- chore: simplify computation of used_mem_current by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3372](https://togithub.com/dragonflydb/dragonfly/pull/3372)
- chore: disable cluster_fuzzymigration by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3373](https://togithub.com/dragonflydb/dragonfly/pull/3373)
- chore(replica): remove unused methods in the Replica class by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3374](https://togithub.com/dragonflydb/dragonfly/pull/3374)
- fix(transaction): Properly store block cancel status by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3371](https://togithub.com/dragonflydb/dragonfly/pull/3371)
- chore: Track db_slice table memory instantly by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3375](https://togithub.com/dragonflydb/dragonfly/pull/3375)
- chore: add mem test for big values and default the flag by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3369](https://togithub.com/dragonflydb/dragonfly/pull/3369)
- update: replication_acks_interval flag to 1000 by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3378](https://togithub.com/dragonflydb/dragonfly/pull/3378)
- chore: dfly_bench - print ongoing error counts by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3382](https://togithub.com/dragonflydb/dragonfly/pull/3382)
- chore: introduce a cool queue that gradually retires cool items by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3377](https://togithub.com/dragonflydb/dragonfly/pull/3377)
- chore: update cached stats inside PollExecution by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3376](https://togithub.com/dragonflydb/dragonfly/pull/3376)
- fix: Fix `test_take_over_seeder` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3385](https://togithub.com/dragonflydb/dragonfly/pull/3385)
- chore: reenable evictions upon insertion to avoid OOM rejections by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3387](https://togithub.com/dragonflydb/dragonfly/pull/3387)
- fix: remove fiber guard from non atomic section by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3381](https://togithub.com/dragonflydb/dragonfly/pull/3381)
- chore: do not preempt on db_slice::RegisterOnChange by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3388](https://togithub.com/dragonflydb/dragonfly/pull/3388)
- fix: disable inline transactions when db_slice has registered
callbacks by [@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3391](https://togithub.com/dragonflydb/dragonfly/pull/3391)
- fix: test_big_value_serialization_memory_limit shutdown timeout by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3390](https://togithub.com/dragonflydb/dragonfly/pull/3390)
- chore: set serialization_max_chunk_size to 1 byte by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3379](https://togithub.com/dragonflydb/dragonfly/pull/3379)
- chore: tiered fixes by [@&#8203;romange](https://togithub.com/romange)
in
[https://github.com/dragonflydb/dragonfly/pull/3393](https://togithub.com/dragonflydb/dragonfly/pull/3393)
- fix(acl): remove none from acl categories by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3392](https://togithub.com/dragonflydb/dragonfly/pull/3392)
- chore: tiering - make Modify work with cool storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3395](https://togithub.com/dragonflydb/dragonfly/pull/3395)
- fix: Fix unsupported object type rejson-rl in RedisInsight by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3384](https://togithub.com/dragonflydb/dragonfly/pull/3384)
- Revert "chore: set serialization_max_chunk_size to 1 byte
([#&#8203;3379](https://togithub.com/dragonflydb/dragonfly/issues/3379))"
by [@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3398](https://togithub.com/dragonflydb/dragonfly/pull/3398)
- chore(tiering): Move cool entry warmup to DbSlice by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3397](https://togithub.com/dragonflydb/dragonfly/pull/3397)
- fix: reenable macos builds by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3399](https://togithub.com/dragonflydb/dragonfly/pull/3399)
- chore: Don't print password to log on replica `AUTH` failure by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3403](https://togithub.com/dragonflydb/dragonfly/pull/3403)
- chore: Support setting the value of `replica-priority` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3400](https://togithub.com/dragonflydb/dragonfly/pull/3400)
- feat: stabilize non-coordinated omission mode by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3407](https://togithub.com/dragonflydb/dragonfly/pull/3407)
- chore: cancel slot migrations on shutdown by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3405](https://togithub.com/dragonflydb/dragonfly/pull/3405)
- chore: add db_slice lock to protect segments from preemptions by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3406](https://togithub.com/dragonflydb/dragonfly/pull/3406)
- chore: increase timeout of regression tests by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3412](https://togithub.com/dragonflydb/dragonfly/pull/3412)
- fix: crash with NS in multi/exec
[#&#8203;3410](https://togithub.com/dragonflydb/dragonfly/issues/3410)
by [@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3415](https://togithub.com/dragonflydb/dragonfly/pull/3415)
- fix: json.merge exception crash by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3409](https://togithub.com/dragonflydb/dragonfly/pull/3409)
- fix(connection): Count memchached pipelined commands by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3413](https://togithub.com/dragonflydb/dragonfly/pull/3413)
- chore: remove verbose printing of tests by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3420](https://togithub.com/dragonflydb/dragonfly/pull/3420)
- chore: Tiered fixes by [@&#8203;romange](https://togithub.com/romange)
in
[https://github.com/dragonflydb/dragonfly/pull/3401](https://togithub.com/dragonflydb/dragonfly/pull/3401)
- feat: Support non-root paths for json.merge by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3419](https://togithub.com/dragonflydb/dragonfly/pull/3419)
- chore: skip cluster tests if redis-server wasn't found by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3416](https://togithub.com/dragonflydb/dragonfly/pull/3416)
- chore: expose metric that shows how many task submitters are blocked
by [@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3427](https://togithub.com/dragonflydb/dragonfly/pull/3427)
- chore: optimize SendStringArrInternal even more by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3425](https://togithub.com/dragonflydb/dragonfly/pull/3425)
- fix(server): Implement SCRIPT GC command by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3431](https://togithub.com/dragonflydb/dragonfly/pull/3431)
- chore: retire TEST_EnableHeartBeat by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3435](https://togithub.com/dragonflydb/dragonfly/pull/3435)
- feat(server): Support `replica-announce-ip`/`port` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3421](https://togithub.com/dragonflydb/dragonfly/pull/3421)
- test(cluster): Migration replication test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3417](https://togithub.com/dragonflydb/dragonfly/pull/3417)
- chore: improve replication locks by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3436](https://togithub.com/dragonflydb/dragonfly/pull/3436)
- chore: reorganize EngineShard::Heartbeat by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3437](https://togithub.com/dragonflydb/dragonfly/pull/3437)
- chore: fix memcached pipeline test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3438](https://togithub.com/dragonflydb/dragonfly/pull/3438)
- chore: simplify master replication cancelation interface by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3439](https://togithub.com/dragonflydb/dragonfly/pull/3439)
- chore: reset serialization_max_chunk_size to 0 by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3432](https://togithub.com/dragonflydb/dragonfly/pull/3432)
- feat: DEBUG REPLICA PAUSE now pauses fullsync by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3441](https://togithub.com/dragonflydb/dragonfly/pull/3441)
- test: fix test_disconnect_replica by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3442](https://togithub.com/dragonflydb/dragonfly/pull/3442)
- fix: cluster_mgr.py to use `CLUSTER MYID` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3444](https://togithub.com/dragonflydb/dragonfly/pull/3444)
- chore: disable serialization_max_chunk_size in regtests by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3445](https://togithub.com/dragonflydb/dragonfly/pull/3445)
- fix: properly seriailize meta buffer in SendStringArrInternal by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3455](https://togithub.com/dragonflydb/dragonfly/pull/3455)

**Full Changelog**:
dragonflydb/dragonfly@v1.20.0...v1.21.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://togithub.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yMS4wIiwidXBkYXRlZEluVmVyIjoiMzguMzcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciJdfQ==-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants