Skip to content

Conversation

@chakaz
Copy link
Contributor

@chakaz chakaz commented Jun 13, 2024

Fixes #3132

Also do a small refactor to move cancellation logic into RestoreStreamer.

shahar added 2 commits June 13, 2024 15:28
Fixes #3132

Also do a small refactor to move cancellation logic into
`RestoreStreamer`.
@chakaz chakaz requested a review from BorysTheDev June 13, 2024 12:41
}

bool RestoreStreamer::ShouldWrite(const journal::JournalItem& item) const {
if (item.cmd == "FLUSHALL" || item.cmd == "FLUSHDB") {
Copy link
Contributor

Choose a reason for hiding this comment

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

it's not only about flushALL and flushDB. We have several more global commands. You can find a list in TransactionData::IsGlobalCmd()

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We have special handling for FLUSH* commands in replication as well, because these are the only commands which actually drop a db table.
Generally speaking, global commands are not supposed to be sent via migration, and so it wouldn't make sense to break a connection when we get them (it's even worse, as DFLYCLUSTER is one of those commands, so an attempt to even query the status of a migration will kill it..)

void OutgoingMigration::ClearSlotRanges() {
shard_set->pool()->AwaitFiberOnAll([this](util::ProactorBase* pb) {
if (auto* shard = EngineShard::tlocal(); shard) {
shard->db_slice().FlushSlots(GetSlots());
Copy link
Contributor

Choose a reason for hiding this comment

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

why do we do flushslot for outgoing migration, but not for incoming?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

that's just me being incompetent :( please ignore, thanks

Copy link
Contributor

Choose a reason for hiding this comment

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

@chakaz you are so far away from incompetent....

@chakaz chakaz requested a review from BorysTheDev June 17, 2024 11:27
if (item.cmd == "FLUSHALL" || item.cmd == "FLUSHDB") {
// On FLUSH* we restart the migration
CHECK(dest_ != nullptr);
dest_->Shutdown(SHUT_RDWR);
Copy link
Contributor

Choose a reason for hiding this comment

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

I think we need another mechanism to stop migration. because we could have sent already FIN so we get data race in this case

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 think that the use case of supporting a FLUSHALL done right with a migration finalization is not really interesting. As long as it doesn't crash - we're in a good place, consistency is pretty much bonus points
having said that, what other mechanism do you have in mind?

Copy link
Contributor

Choose a reason for hiding this comment

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

I think we need to provide context into restore_streamer and set error there, and set handler for error that stop migration

}

void RestoreStreamer::Start(io::AsyncSink* dest, bool send_lsn) {
dest_ = static_cast<util::FiberSocketBase*>(dest);
Copy link
Contributor

Choose a reason for hiding this comment

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

I'd prefer to provide socket or provide some context or something else but don't do static_cast

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'd want a non-down cast as well. The challenge is that if we do that, we can't override Start() (base class uses a sink)

Copy link
Contributor

Choose a reason for hiding this comment

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

we can provide another method, I don't see any point to repeat interface

Copy link
Contributor Author

Choose a reason for hiding this comment

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

turns out we can just replace the whole interface (including parent) to use sockets, so problem solved :)

@chakaz chakaz requested a review from BorysTheDev June 18, 2024 07:21
@chakaz
Copy link
Contributor Author

chakaz commented Jun 19, 2024

@BorysTheDev ready for your review 🙏

@chakaz chakaz merged commit f66ee5f into main Jun 20, 2024
@chakaz chakaz deleted the migration-flush branch June 20, 2024 08:40
dranikpg pushed a commit to dranikpg/dragonfly that referenced this pull request Jun 23, 2024
…ragonflydb#3173)

* fix(cluster): Support `FLUSHALL` while slot migration is in progress

Fixes dragonflydb#3132

Also do a small refactor to move cancellation logic into
`RestoreStreamer`.
szinn referenced this pull request in szinn/k8s-homelab Jul 9, 2024
…nfly ( v1.19.2 → v1.20.0 ) (#3956)

This PR contains the following updates:

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

---

### Release Notes

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

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

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

##### Dragonfly v1.20.0

Some prominent changes include:

- Improvements around client side caching
([#&#8203;3136](https://togithub.com/dragonflydb/dragonfly/issues/3136)
[#&#8203;3158](https://togithub.com/dragonflydb/dragonfly/issues/3158))
Specifically, rueidis is now supported
([#&#8203;2454](https://togithub.com/dragonflydb/dragonfly/issues/2454))
- Improvements around search and vector search APIs, FT.ALTER is now
supported
([#&#8203;3144](https://togithub.com/dragonflydb/dragonfly/issues/3144),
[#&#8203;3148](https://togithub.com/dragonflydb/dragonfly/issues/3148),
[#&#8203;3178](https://togithub.com/dragonflydb/dragonfly/issues/3178),
[#&#8203;3186](https://togithub.com/dragonflydb/dragonfly/issues/3186))
- JSON.MSET is added
([#&#8203;3167](https://togithub.com/dragonflydb/dragonfly/issues/3167))
- Expiry notifications are now supported
([#&#8203;3154](https://togithub.com/dragonflydb/dragonfly/issues/3154))

##### What's Changed

- test(cluster_mgr): Add tests for cluster_mgr.py by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3129](https://togithub.com/dragonflydb/dragonfly/pull/3129)
- chore: get rid of kv_args and replace it with slices to full_args by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3101](https://togithub.com/dragonflydb/dragonfly/pull/3101)
- fix: Fix live-lock in connection test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3135](https://togithub.com/dragonflydb/dragonfly/pull/3135)
- chore: call breaker_cb\_ on shutdown by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3128](https://togithub.com/dragonflydb/dragonfly/pull/3128)
- chore: Add option to disable aws dependency by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3077](https://togithub.com/dragonflydb/dragonfly/pull/3077)
- feat(cluster): Add important logs by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3138](https://togithub.com/dragonflydb/dragonfly/pull/3138)
- chore: a small cleanup by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3140](https://togithub.com/dragonflydb/dragonfly/pull/3140)
- test: skip test_cluster_migration_cancel, it is broken by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3146](https://togithub.com/dragonflydb/dragonfly/pull/3146)
- chore: update helio by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3150](https://togithub.com/dragonflydb/dragonfly/pull/3150)
- fix: fix bug in cluster/slot_set by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3143](https://togithub.com/dragonflydb/dragonfly/pull/3143)
- chore: recommit client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3136](https://togithub.com/dragonflydb/dragonfly/pull/3136)
- feat(search): Tag field options (separator, case sensitivity) by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3144](https://togithub.com/dragonflydb/dragonfly/pull/3144)
- feat(search): basic FT.ALTER by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3148](https://togithub.com/dragonflydb/dragonfly/pull/3148)
- chore: Introduce pipeline back-pressure by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3152](https://togithub.com/dragonflydb/dragonfly/pull/3152)
- fix: lua and client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3163](https://togithub.com/dragonflydb/dragonfly/pull/3163)
- feat: client tracking optout by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3158](https://togithub.com/dragonflydb/dragonfly/pull/3158)
- feat: add noloop subcommand in client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3164](https://togithub.com/dragonflydb/dragonfly/pull/3164)
- fix(ci): docker not using iouring by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3169](https://togithub.com/dragonflydb/dragonfly/pull/3169)
- fix(ci): add missing docker option on reg tests workflow by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3172](https://togithub.com/dragonflydb/dragonfly/pull/3172)
- fix: acl compatibility by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3147](https://togithub.com/dragonflydb/dragonfly/pull/3147)
- chore: Streamer is rewritten with async interface by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3108](https://togithub.com/dragonflydb/dragonfly/pull/3108)
- feat(json): MSET by [@&#8203;dranikpg](https://togithub.com/dranikpg)
in
[https://github.com/dragonflydb/dragonfly/pull/3167](https://togithub.com/dragonflydb/dragonfly/pull/3167)
- fix(cluster): Wait for flow creation before cancelling it by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3159](https://togithub.com/dragonflydb/dragonfly/pull/3159)
- chore: improve ft.create for vector search by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3178](https://togithub.com/dragonflydb/dragonfly/pull/3178)
- feat: add incoming migration error processing by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3175](https://togithub.com/dragonflydb/dragonfly/pull/3175)
- chore: add parsing support for the rest of VECTOR parameters by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3179](https://togithub.com/dragonflydb/dragonfly/pull/3179)
- fix(cluster): Wait before all access to slot migrations by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3180](https://togithub.com/dragonflydb/dragonfly/pull/3180)
- fix(server): fix bug in replication on cached mode by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3156](https://togithub.com/dragonflydb/dragonfly/pull/3156)
- chore: small acl compat changes by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3177](https://togithub.com/dragonflydb/dragonfly/pull/3177)
- chore: allow calling Context::ReportError from I/O dispatch fiber by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3182](https://togithub.com/dragonflydb/dragonfly/pull/3182)
- chore: add a lexer test covering KNN query by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3185](https://togithub.com/dragonflydb/dragonfly/pull/3185)
- chore(search): Add \__vector_score alias by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3186](https://togithub.com/dragonflydb/dragonfly/pull/3186)
- chore: Refactor string span management by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3165](https://togithub.com/dragonflydb/dragonfly/pull/3165)
- chore(ci): run replication tests on arm by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3168](https://togithub.com/dragonflydb/dragonfly/pull/3168)
- chore(search): improve parser error reporting by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3184](https://togithub.com/dragonflydb/dragonfly/pull/3184)
- fix(reply_builder): remove virtual modifier in SendError(ErrorReply)
method by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3191](https://togithub.com/dragonflydb/dragonfly/pull/3191)
- fix(cluster): Support `FLUSHALL` while slot migration is in progress
by [@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3173](https://togithub.com/dragonflydb/dragonfly/pull/3173)
- fix: fix RegisterOnChange methods for journal and db_slice by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3171](https://togithub.com/dragonflydb/dragonfly/pull/3171)
- fix(generic_family): fix RenameGeneric command for non-string data
types by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3181](https://togithub.com/dragonflydb/dragonfly/pull/3181)
- fix(server): Rename confusing flag
`replica_reconnect_on_master_restart` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3193](https://togithub.com/dragonflydb/dragonfly/pull/3193)
- fix(unit tests): fix generic family info test by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3187](https://togithub.com/dragonflydb/dragonfly/pull/3187)
- test: improve cluster_fuzzy_migration test by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3197](https://togithub.com/dragonflydb/dragonfly/pull/3197)
- chore(core): Remove DfImpl inside ScoredMap by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3199](https://togithub.com/dragonflydb/dragonfly/pull/3199)
- chore(tiering): Remove IoMgr by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3198](https://togithub.com/dragonflydb/dragonfly/pull/3198)
- test(cluster): Make sure migration maintains TTL by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3188](https://togithub.com/dragonflydb/dragonfly/pull/3188)
- feat(cluster): Support `STICK` bit in slot migration by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3200](https://togithub.com/dragonflydb/dragonfly/pull/3200)
- chore: Re-enable previously flaky test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3196](https://togithub.com/dragonflydb/dragonfly/pull/3196)
- feat(acl): add support of multiple passwords by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3189](https://togithub.com/dragonflydb/dragonfly/pull/3189)
- chore(tiering): More advanced tiering tests by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3201](https://togithub.com/dragonflydb/dragonfly/pull/3201)
- chore: add replica-priority flag by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3204](https://togithub.com/dragonflydb/dragonfly/pull/3204)
- chore: fix tiering regtest test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3208](https://togithub.com/dragonflydb/dragonfly/pull/3208)
- feat(generic_family): Assemble RESTORE and STICK commands into one
commmand during replication of the RENAME command by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3209](https://togithub.com/dragonflydb/dragonfly/pull/3209)
- core(search): Add EF_RUNTIME parameter by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3206](https://togithub.com/dragonflydb/dragonfly/pull/3206)
- fix(sanitizers): failing json test by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3176](https://togithub.com/dragonflydb/dragonfly/pull/3176)
- feat(server): expiry notifications by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3154](https://togithub.com/dragonflydb/dragonfly/pull/3154)
- fix: replicaof_reject_on_load flake by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3203](https://togithub.com/dragonflydb/dragonfly/pull/3203)
- fix(cluster): Don't miss keys when migrating slots by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3218](https://togithub.com/dragonflydb/dragonfly/pull/3218)
- fix(tiering): Fix pending leak during immediate stash error by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3219](https://togithub.com/dragonflydb/dragonfly/pull/3219)
- chore: provide basic logging to catch possible command errors by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3213](https://togithub.com/dragonflydb/dragonfly/pull/3213)
- chore: disable tiering test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3236](https://togithub.com/dragonflydb/dragonfly/pull/3236)
- fix(transaction): Don't transactionalize empty EVAL inside EXEC by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3231](https://togithub.com/dragonflydb/dragonfly/pull/3231)
- fix: fix deadlock in DFLYCLUSTER CONFIG command and outgoing migration
finaliztion by [@&#8203;BorysTheDev](https://togithub.com/BorysTheDev)
in
[https://github.com/dragonflydb/dragonfly/pull/3239](https://togithub.com/dragonflydb/dragonfly/pull/3239)
- chore(tiered): minor fixes + expose buffer allocation type stats by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3234](https://togithub.com/dragonflydb/dragonfly/pull/3234)
- fix(pytest): timed ticker for simpler conditions by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3242](https://togithub.com/dragonflydb/dragonfly/pull/3242)
- fix(server): Fix SCAN deadlock by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3235](https://togithub.com/dragonflydb/dragonfly/pull/3235)
- chore: introduce back-pressure to tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3243](https://togithub.com/dragonflydb/dragonfly/pull/3243)
- chore: improve dfly_bench by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3244](https://togithub.com/dragonflydb/dragonfly/pull/3244)
- chore(tiering): External alloc free page chaining by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3237](https://togithub.com/dragonflydb/dragonfly/pull/3237)
- fix: total_stash_overflows statistic by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3248](https://togithub.com/dragonflydb/dragonfly/pull/3248)
- chore: update action versions by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3250](https://togithub.com/dragonflydb/dragonfly/pull/3250)
- chore(lua): Return which undeclared key was accessed by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3245](https://togithub.com/dragonflydb/dragonfly/pull/3245)
- chore: replace session wide fixtures with scope by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3251](https://togithub.com/dragonflydb/dragonfly/pull/3251)
- chore: pull helio and adjust mimalloc for 32MiB segments by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3174](https://togithub.com/dragonflydb/dragonfly/pull/3174)
- chore: add more logs around the duplicate value case in small_bins by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3254](https://togithub.com/dragonflydb/dragonfly/pull/3254)
- fix: fix move error during migration finalization by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3253](https://togithub.com/dragonflydb/dragonfly/pull/3253)
- chore: upload all the logs from /tmp by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3263](https://togithub.com/dragonflydb/dragonfly/pull/3263)
- fix(tiering): Throttle snapshot load by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3249](https://togithub.com/dragonflydb/dragonfly/pull/3249)
- chore: initiate grow preemptively by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3267](https://togithub.com/dragonflydb/dragonfly/pull/3267)
- chore(monitoring): add more dashboards + memcached by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3268](https://togithub.com/dragonflydb/dragonfly/pull/3268)
- fix(json_family): fix JSON.GET commmand for JSON legacy mode by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3261](https://togithub.com/dragonflydb/dragonfly/pull/3261)
- chore: dfly_bench can send traffic to memcached by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3271](https://togithub.com/dragonflydb/dragonfly/pull/3271)
- chore: print effective QPS of the server. by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3274](https://togithub.com/dragonflydb/dragonfly/pull/3274)
- chore: debugging fixes by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3275](https://togithub.com/dragonflydb/dragonfly/pull/3275)
- chore: more debug checks around tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3277](https://togithub.com/dragonflydb/dragonfly/pull/3277)
- chore(license): Fix typo in LICENSE.md text by
[@&#8203;softmoth](https://togithub.com/softmoth) in
[https://github.com/dragonflydb/dragonfly/pull/3283](https://togithub.com/dragonflydb/dragonfly/pull/3283)
- fix(test): Verify that save has not finished by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3278](https://togithub.com/dragonflydb/dragonfly/pull/3278)
- Create scorecard.yml by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3270](https://togithub.com/dragonflydb/dragonfly/pull/3270)
- chore: Disable cluster_mgr_test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3279](https://togithub.com/dragonflydb/dragonfly/pull/3279)
- fix: Increase key count to make test more robust by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3286](https://togithub.com/dragonflydb/dragonfly/pull/3286)
- fix: properly clean tiered state upon flash by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3281](https://togithub.com/dragonflydb/dragonfly/pull/3281)
- fix(bug): crash on takeover and info replication by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3282](https://togithub.com/dragonflydb/dragonfly/pull/3282)

##### New Contributors

- [@&#8203;softmoth](https://togithub.com/softmoth) made their first
contribution in
[https://github.com/dragonflydb/dragonfly/pull/3283](https://togithub.com/dragonflydb/dragonfly/pull/3283)

##### Huge thanks to all the contributors! ❤️

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

</details>

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjYuMiIsInVwZGF0ZWRJblZlciI6IjM3LjQyNi4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

Co-authored-by: repo-jeeves[bot] <106431701+repo-jeeves[bot]@users.noreply.github.com>
spiceratops referenced this pull request in spiceratops/k8s-gitops Jul 9, 2024
#845)

This PR contains the following updates:

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

---

> [!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.20.0`](https://togithub.com/dragonflydb/dragonfly/releases/tag/v1.20.0)

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

##### Dragonfly v1.20.0

Some prominent changes include:

- Improvements around client side caching
([#&#8203;3136](https://togithub.com/dragonflydb/dragonfly/issues/3136)
[#&#8203;3158](https://togithub.com/dragonflydb/dragonfly/issues/3158))
Specifically, rueidis is now supported
([#&#8203;2454](https://togithub.com/dragonflydb/dragonfly/issues/2454))
- Improvements around search and vector search APIs, FT.ALTER is now
supported
([#&#8203;3144](https://togithub.com/dragonflydb/dragonfly/issues/3144),
[#&#8203;3148](https://togithub.com/dragonflydb/dragonfly/issues/3148),
[#&#8203;3178](https://togithub.com/dragonflydb/dragonfly/issues/3178),
[#&#8203;3186](https://togithub.com/dragonflydb/dragonfly/issues/3186))
- JSON.MSET is added
([#&#8203;3167](https://togithub.com/dragonflydb/dragonfly/issues/3167))
- Expiry notifications are now supported
([#&#8203;3154](https://togithub.com/dragonflydb/dragonfly/issues/3154))

##### What's Changed

- test(cluster_mgr): Add tests for cluster_mgr.py by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3129](https://togithub.com/dragonflydb/dragonfly/pull/3129)
- chore: get rid of kv_args and replace it with slices to full_args by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3101](https://togithub.com/dragonflydb/dragonfly/pull/3101)
- fix: Fix live-lock in connection test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3135](https://togithub.com/dragonflydb/dragonfly/pull/3135)
- chore: call breaker_cb\_ on shutdown by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3128](https://togithub.com/dragonflydb/dragonfly/pull/3128)
- chore: Add option to disable aws dependency by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3077](https://togithub.com/dragonflydb/dragonfly/pull/3077)
- feat(cluster): Add important logs by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3138](https://togithub.com/dragonflydb/dragonfly/pull/3138)
- chore: a small cleanup by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3140](https://togithub.com/dragonflydb/dragonfly/pull/3140)
- test: skip test_cluster_migration_cancel, it is broken by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3146](https://togithub.com/dragonflydb/dragonfly/pull/3146)
- chore: update helio by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3150](https://togithub.com/dragonflydb/dragonfly/pull/3150)
- fix: fix bug in cluster/slot_set by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3143](https://togithub.com/dragonflydb/dragonfly/pull/3143)
- chore: recommit client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3136](https://togithub.com/dragonflydb/dragonfly/pull/3136)
- feat(search): Tag field options (separator, case sensitivity) by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3144](https://togithub.com/dragonflydb/dragonfly/pull/3144)
- feat(search): basic FT.ALTER by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3148](https://togithub.com/dragonflydb/dragonfly/pull/3148)
- chore: Introduce pipeline back-pressure by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3152](https://togithub.com/dragonflydb/dragonfly/pull/3152)
- fix: lua and client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3163](https://togithub.com/dragonflydb/dragonfly/pull/3163)
- feat: client tracking optout by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3158](https://togithub.com/dragonflydb/dragonfly/pull/3158)
- feat: add noloop subcommand in client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3164](https://togithub.com/dragonflydb/dragonfly/pull/3164)
- fix(ci): docker not using iouring by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3169](https://togithub.com/dragonflydb/dragonfly/pull/3169)
- fix(ci): add missing docker option on reg tests workflow by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3172](https://togithub.com/dragonflydb/dragonfly/pull/3172)
- fix: acl compatibility by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3147](https://togithub.com/dragonflydb/dragonfly/pull/3147)
- chore: Streamer is rewritten with async interface by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3108](https://togithub.com/dragonflydb/dragonfly/pull/3108)
- feat(json): MSET by [@&#8203;dranikpg](https://togithub.com/dranikpg)
in
[https://github.com/dragonflydb/dragonfly/pull/3167](https://togithub.com/dragonflydb/dragonfly/pull/3167)
- fix(cluster): Wait for flow creation before cancelling it by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3159](https://togithub.com/dragonflydb/dragonfly/pull/3159)
- chore: improve ft.create for vector search by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3178](https://togithub.com/dragonflydb/dragonfly/pull/3178)
- feat: add incoming migration error processing by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3175](https://togithub.com/dragonflydb/dragonfly/pull/3175)
- chore: add parsing support for the rest of VECTOR parameters by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3179](https://togithub.com/dragonflydb/dragonfly/pull/3179)
- fix(cluster): Wait before all access to slot migrations by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3180](https://togithub.com/dragonflydb/dragonfly/pull/3180)
- fix(server): fix bug in replication on cached mode by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3156](https://togithub.com/dragonflydb/dragonfly/pull/3156)
- chore: small acl compat changes by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3177](https://togithub.com/dragonflydb/dragonfly/pull/3177)
- chore: allow calling Context::ReportError from I/O dispatch fiber by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3182](https://togithub.com/dragonflydb/dragonfly/pull/3182)
- chore: add a lexer test covering KNN query by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3185](https://togithub.com/dragonflydb/dragonfly/pull/3185)
- chore(search): Add \__vector_score alias by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3186](https://togithub.com/dragonflydb/dragonfly/pull/3186)
- chore: Refactor string span management by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3165](https://togithub.com/dragonflydb/dragonfly/pull/3165)
- chore(ci): run replication tests on arm by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3168](https://togithub.com/dragonflydb/dragonfly/pull/3168)
- chore(search): improve parser error reporting by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3184](https://togithub.com/dragonflydb/dragonfly/pull/3184)
- fix(reply_builder): remove virtual modifier in SendError(ErrorReply)
method by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3191](https://togithub.com/dragonflydb/dragonfly/pull/3191)
- fix(cluster): Support `FLUSHALL` while slot migration is in progress
by [@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3173](https://togithub.com/dragonflydb/dragonfly/pull/3173)
- fix: fix RegisterOnChange methods for journal and db_slice by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3171](https://togithub.com/dragonflydb/dragonfly/pull/3171)
- fix(generic_family): fix RenameGeneric command for non-string data
types by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3181](https://togithub.com/dragonflydb/dragonfly/pull/3181)
- fix(server): Rename confusing flag
`replica_reconnect_on_master_restart` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3193](https://togithub.com/dragonflydb/dragonfly/pull/3193)
- fix(unit tests): fix generic family info test by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3187](https://togithub.com/dragonflydb/dragonfly/pull/3187)
- test: improve cluster_fuzzy_migration test by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3197](https://togithub.com/dragonflydb/dragonfly/pull/3197)
- chore(core): Remove DfImpl inside ScoredMap by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3199](https://togithub.com/dragonflydb/dragonfly/pull/3199)
- chore(tiering): Remove IoMgr by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3198](https://togithub.com/dragonflydb/dragonfly/pull/3198)
- test(cluster): Make sure migration maintains TTL by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3188](https://togithub.com/dragonflydb/dragonfly/pull/3188)
- feat(cluster): Support `STICK` bit in slot migration by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3200](https://togithub.com/dragonflydb/dragonfly/pull/3200)
- chore: Re-enable previously flaky test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3196](https://togithub.com/dragonflydb/dragonfly/pull/3196)
- feat(acl): add support of multiple passwords by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3189](https://togithub.com/dragonflydb/dragonfly/pull/3189)
- chore(tiering): More advanced tiering tests by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3201](https://togithub.com/dragonflydb/dragonfly/pull/3201)
- chore: add replica-priority flag by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3204](https://togithub.com/dragonflydb/dragonfly/pull/3204)
- chore: fix tiering regtest test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3208](https://togithub.com/dragonflydb/dragonfly/pull/3208)
- feat(generic_family): Assemble RESTORE and STICK commands into one
commmand during replication of the RENAME command by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3209](https://togithub.com/dragonflydb/dragonfly/pull/3209)
- core(search): Add EF_RUNTIME parameter by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3206](https://togithub.com/dragonflydb/dragonfly/pull/3206)
- fix(sanitizers): failing json test by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3176](https://togithub.com/dragonflydb/dragonfly/pull/3176)
- feat(server): expiry notifications by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3154](https://togithub.com/dragonflydb/dragonfly/pull/3154)
- fix: replicaof_reject_on_load flake by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3203](https://togithub.com/dragonflydb/dragonfly/pull/3203)
- fix(cluster): Don't miss keys when migrating slots by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3218](https://togithub.com/dragonflydb/dragonfly/pull/3218)
- fix(tiering): Fix pending leak during immediate stash error by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3219](https://togithub.com/dragonflydb/dragonfly/pull/3219)
- chore: provide basic logging to catch possible command errors by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3213](https://togithub.com/dragonflydb/dragonfly/pull/3213)
- chore: disable tiering test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3236](https://togithub.com/dragonflydb/dragonfly/pull/3236)
- fix(transaction): Don't transactionalize empty EVAL inside EXEC by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3231](https://togithub.com/dragonflydb/dragonfly/pull/3231)
- fix: fix deadlock in DFLYCLUSTER CONFIG command and outgoing migration
finaliztion by [@&#8203;BorysTheDev](https://togithub.com/BorysTheDev)
in
[https://github.com/dragonflydb/dragonfly/pull/3239](https://togithub.com/dragonflydb/dragonfly/pull/3239)
- chore(tiered): minor fixes + expose buffer allocation type stats by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3234](https://togithub.com/dragonflydb/dragonfly/pull/3234)
- fix(pytest): timed ticker for simpler conditions by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3242](https://togithub.com/dragonflydb/dragonfly/pull/3242)
- fix(server): Fix SCAN deadlock by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3235](https://togithub.com/dragonflydb/dragonfly/pull/3235)
- chore: introduce back-pressure to tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3243](https://togithub.com/dragonflydb/dragonfly/pull/3243)
- chore: improve dfly_bench by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3244](https://togithub.com/dragonflydb/dragonfly/pull/3244)
- chore(tiering): External alloc free page chaining by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3237](https://togithub.com/dragonflydb/dragonfly/pull/3237)
- fix: total_stash_overflows statistic by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3248](https://togithub.com/dragonflydb/dragonfly/pull/3248)
- chore: update action versions by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3250](https://togithub.com/dragonflydb/dragonfly/pull/3250)
- chore(lua): Return which undeclared key was accessed by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3245](https://togithub.com/dragonflydb/dragonfly/pull/3245)
- chore: replace session wide fixtures with scope by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3251](https://togithub.com/dragonflydb/dragonfly/pull/3251)
- chore: pull helio and adjust mimalloc for 32MiB segments by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3174](https://togithub.com/dragonflydb/dragonfly/pull/3174)
- chore: add more logs around the duplicate value case in small_bins by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3254](https://togithub.com/dragonflydb/dragonfly/pull/3254)
- fix: fix move error during migration finalization by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3253](https://togithub.com/dragonflydb/dragonfly/pull/3253)
- chore: upload all the logs from /tmp by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3263](https://togithub.com/dragonflydb/dragonfly/pull/3263)
- fix(tiering): Throttle snapshot load by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3249](https://togithub.com/dragonflydb/dragonfly/pull/3249)
- chore: initiate grow preemptively by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3267](https://togithub.com/dragonflydb/dragonfly/pull/3267)
- chore(monitoring): add more dashboards + memcached by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3268](https://togithub.com/dragonflydb/dragonfly/pull/3268)
- fix(json_family): fix JSON.GET commmand for JSON legacy mode by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3261](https://togithub.com/dragonflydb/dragonfly/pull/3261)
- chore: dfly_bench can send traffic to memcached by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3271](https://togithub.com/dragonflydb/dragonfly/pull/3271)
- chore: print effective QPS of the server. by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3274](https://togithub.com/dragonflydb/dragonfly/pull/3274)
- chore: debugging fixes by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3275](https://togithub.com/dragonflydb/dragonfly/pull/3275)
- chore: more debug checks around tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3277](https://togithub.com/dragonflydb/dragonfly/pull/3277)
- chore(license): Fix typo in LICENSE.md text by
[@&#8203;softmoth](https://togithub.com/softmoth) in
[https://github.com/dragonflydb/dragonfly/pull/3283](https://togithub.com/dragonflydb/dragonfly/pull/3283)
- fix(test): Verify that save has not finished by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3278](https://togithub.com/dragonflydb/dragonfly/pull/3278)
- Create scorecard.yml by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3270](https://togithub.com/dragonflydb/dragonfly/pull/3270)
- chore: Disable cluster_mgr_test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3279](https://togithub.com/dragonflydb/dragonfly/pull/3279)
- fix: Increase key count to make test more robust by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3286](https://togithub.com/dragonflydb/dragonfly/pull/3286)
- fix: properly clean tiered state upon flash by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3281](https://togithub.com/dragonflydb/dragonfly/pull/3281)
- fix(bug): crash on takeover and info replication by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3282](https://togithub.com/dragonflydb/dragonfly/pull/3282)

##### New Contributors

- [@&#8203;softmoth](https://togithub.com/softmoth) made their first
contribution in
[https://github.com/dragonflydb/dragonfly/pull/3283](https://togithub.com/dragonflydb/dragonfly/pull/3283)

##### Huge thanks to all the contributors! ❤️

**Full Changelog**:
dragonflydb/dragonfly@v1.19.0...v1.20.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:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjYuMiIsInVwZGF0ZWRJblZlciI6IjM3LjQyNi4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->
kireque referenced this pull request in kireque/home-ops-old Jul 10, 2024
…nfly ( v1.19.2 → v1.20.1 ) (#762)

This PR contains the following updates:

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

---

### Release Notes

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

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

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

##### Dragonfly v1.20.1

This is a patch release.

fix: S3 access for loading/saving snapshots
([#&#8203;3296](https://togithub.com/dragonflydb/dragonfly/issues/3296))

Signed-off-by: kostas <kostas@dragonflydb.io>

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

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

##### Dragonfly v1.20.0

Some prominent changes include:

- Improvements around client side caching
([#&#8203;3136](https://togithub.com/dragonflydb/dragonfly/issues/3136)
[#&#8203;3158](https://togithub.com/dragonflydb/dragonfly/issues/3158))
Specifically, rueidis is now supported
([#&#8203;2454](https://togithub.com/dragonflydb/dragonfly/issues/2454))
- Improvements around search and vector search APIs, FT.ALTER is now
supported
([#&#8203;3144](https://togithub.com/dragonflydb/dragonfly/issues/3144),
[#&#8203;3148](https://togithub.com/dragonflydb/dragonfly/issues/3148),
[#&#8203;3178](https://togithub.com/dragonflydb/dragonfly/issues/3178),
[#&#8203;3186](https://togithub.com/dragonflydb/dragonfly/issues/3186))
- JSON.MSET is added
([#&#8203;3167](https://togithub.com/dragonflydb/dragonfly/issues/3167))
- Expiry notifications are now supported
([#&#8203;3154](https://togithub.com/dragonflydb/dragonfly/issues/3154))

##### What's Changed

- test(cluster_mgr): Add tests for cluster_mgr.py by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3129](https://togithub.com/dragonflydb/dragonfly/pull/3129)
- chore: get rid of kv_args and replace it with slices to full_args by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3101](https://togithub.com/dragonflydb/dragonfly/pull/3101)
- fix: Fix live-lock in connection test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3135](https://togithub.com/dragonflydb/dragonfly/pull/3135)
- chore: call breaker_cb\_ on shutdown by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3128](https://togithub.com/dragonflydb/dragonfly/pull/3128)
- chore: Add option to disable aws dependency by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3077](https://togithub.com/dragonflydb/dragonfly/pull/3077)
- feat(cluster): Add important logs by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3138](https://togithub.com/dragonflydb/dragonfly/pull/3138)
- chore: a small cleanup by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3140](https://togithub.com/dragonflydb/dragonfly/pull/3140)
- test: skip test_cluster_migration_cancel, it is broken by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3146](https://togithub.com/dragonflydb/dragonfly/pull/3146)
- chore: update helio by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3150](https://togithub.com/dragonflydb/dragonfly/pull/3150)
- fix: fix bug in cluster/slot_set by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3143](https://togithub.com/dragonflydb/dragonfly/pull/3143)
- chore: recommit client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3136](https://togithub.com/dragonflydb/dragonfly/pull/3136)
- feat(search): Tag field options (separator, case sensitivity) by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3144](https://togithub.com/dragonflydb/dragonfly/pull/3144)
- feat(search): basic FT.ALTER by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3148](https://togithub.com/dragonflydb/dragonfly/pull/3148)
- chore: Introduce pipeline back-pressure by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3152](https://togithub.com/dragonflydb/dragonfly/pull/3152)
- fix: lua and client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3163](https://togithub.com/dragonflydb/dragonfly/pull/3163)
- feat: client tracking optout by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3158](https://togithub.com/dragonflydb/dragonfly/pull/3158)
- feat: add noloop subcommand in client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3164](https://togithub.com/dragonflydb/dragonfly/pull/3164)
- fix(ci): docker not using iouring by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3169](https://togithub.com/dragonflydb/dragonfly/pull/3169)
- fix(ci): add missing docker option on reg tests workflow by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3172](https://togithub.com/dragonflydb/dragonfly/pull/3172)
- fix: acl compatibility by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3147](https://togithub.com/dragonflydb/dragonfly/pull/3147)
- chore: Streamer is rewritten with async interface by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3108](https://togithub.com/dragonflydb/dragonfly/pull/3108)
- feat(json): MSET by [@&#8203;dranikpg](https://togithub.com/dranikpg)
in
[https://github.com/dragonflydb/dragonfly/pull/3167](https://togithub.com/dragonflydb/dragonfly/pull/3167)
- fix(cluster): Wait for flow creation before cancelling it by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3159](https://togithub.com/dragonflydb/dragonfly/pull/3159)
- chore: improve ft.create for vector search by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3178](https://togithub.com/dragonflydb/dragonfly/pull/3178)
- feat: add incoming migration error processing by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3175](https://togithub.com/dragonflydb/dragonfly/pull/3175)
- chore: add parsing support for the rest of VECTOR parameters by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3179](https://togithub.com/dragonflydb/dragonfly/pull/3179)
- fix(cluster): Wait before all access to slot migrations by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3180](https://togithub.com/dragonflydb/dragonfly/pull/3180)
- fix(server): fix bug in replication on cached mode by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3156](https://togithub.com/dragonflydb/dragonfly/pull/3156)
- chore: small acl compat changes by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3177](https://togithub.com/dragonflydb/dragonfly/pull/3177)
- chore: allow calling Context::ReportError from I/O dispatch fiber by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3182](https://togithub.com/dragonflydb/dragonfly/pull/3182)
- chore: add a lexer test covering KNN query by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3185](https://togithub.com/dragonflydb/dragonfly/pull/3185)
- chore(search): Add \__vector_score alias by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3186](https://togithub.com/dragonflydb/dragonfly/pull/3186)
- chore: Refactor string span management by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3165](https://togithub.com/dragonflydb/dragonfly/pull/3165)
- chore(ci): run replication tests on arm by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3168](https://togithub.com/dragonflydb/dragonfly/pull/3168)
- chore(search): improve parser error reporting by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3184](https://togithub.com/dragonflydb/dragonfly/pull/3184)
- fix(reply_builder): remove virtual modifier in SendError(ErrorReply)
method by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3191](https://togithub.com/dragonflydb/dragonfly/pull/3191)
- fix(cluster): Support `FLUSHALL` while slot migration is in progress
by [@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3173](https://togithub.com/dragonflydb/dragonfly/pull/3173)
- fix: fix RegisterOnChange methods for journal and db_slice by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3171](https://togithub.com/dragonflydb/dragonfly/pull/3171)
- fix(generic_family): fix RenameGeneric command for non-string data
types by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3181](https://togithub.com/dragonflydb/dragonfly/pull/3181)
- fix(server): Rename confusing flag
`replica_reconnect_on_master_restart` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3193](https://togithub.com/dragonflydb/dragonfly/pull/3193)
- fix(unit tests): fix generic family info test by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3187](https://togithub.com/dragonflydb/dragonfly/pull/3187)
- test: improve cluster_fuzzy_migration test by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3197](https://togithub.com/dragonflydb/dragonfly/pull/3197)
- chore(core): Remove DfImpl inside ScoredMap by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3199](https://togithub.com/dragonflydb/dragonfly/pull/3199)
- chore(tiering): Remove IoMgr by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3198](https://togithub.com/dragonflydb/dragonfly/pull/3198)
- test(cluster): Make sure migration maintains TTL by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3188](https://togithub.com/dragonflydb/dragonfly/pull/3188)
- feat(cluster): Support `STICK` bit in slot migration by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3200](https://togithub.com/dragonflydb/dragonfly/pull/3200)
- chore: Re-enable previously flaky test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3196](https://togithub.com/dragonflydb/dragonfly/pull/3196)
- feat(acl): add support of multiple passwords by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3189](https://togithub.com/dragonflydb/dragonfly/pull/3189)
- chore(tiering): More advanced tiering tests by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3201](https://togithub.com/dragonflydb/dragonfly/pull/3201)
- chore: add replica-priority flag by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3204](https://togithub.com/dragonflydb/dragonfly/pull/3204)
- chore: fix tiering regtest test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3208](https://togithub.com/dragonflydb/dragonfly/pull/3208)
- feat(generic_family): Assemble RESTORE and STICK commands into one
commmand during replication of the RENAME command by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3209](https://togithub.com/dragonflydb/dragonfly/pull/3209)
- core(search): Add EF_RUNTIME parameter by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3206](https://togithub.com/dragonflydb/dragonfly/pull/3206)
- fix(sanitizers): failing json test by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3176](https://togithub.com/dragonflydb/dragonfly/pull/3176)
- feat(server): expiry notifications by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3154](https://togithub.com/dragonflydb/dragonfly/pull/3154)
- fix: replicaof_reject_on_load flake by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3203](https://togithub.com/dragonflydb/dragonfly/pull/3203)
- fix(cluster): Don't miss keys when migrating slots by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3218](https://togithub.com/dragonflydb/dragonfly/pull/3218)
- fix(tiering): Fix pending leak during immediate stash error by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3219](https://togithub.com/dragonflydb/dragonfly/pull/3219)
- chore: provide basic logging to catch possible command errors by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3213](https://togithub.com/dragonflydb/dragonfly/pull/3213)
- chore: disable tiering test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3236](https://togithub.com/dragonflydb/dragonfly/pull/3236)
- fix(transaction): Don't transactionalize empty EVAL inside EXEC by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3231](https://togithub.com/dragonflydb/dragonfly/pull/3231)
- fix: fix deadlock in DFLYCLUSTER CONFIG command and outgoing migration
finaliztion by [@&#8203;BorysTheDev](https://togithub.com/BorysTheDev)
in
[https://github.com/dragonflydb/dragonfly/pull/3239](https://togithub.com/dragonflydb/dragonfly/pull/3239)
- chore(tiered): minor fixes + expose buffer allocation type stats by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3234](https://togithub.com/dragonflydb/dragonfly/pull/3234)
- fix(pytest): timed ticker for simpler conditions by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3242](https://togithub.com/dragonflydb/dragonfly/pull/3242)
- fix(server): Fix SCAN deadlock by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3235](https://togithub.com/dragonflydb/dragonfly/pull/3235)
- chore: introduce back-pressure to tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3243](https://togithub.com/dragonflydb/dragonfly/pull/3243)
- chore: improve dfly_bench by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3244](https://togithub.com/dragonflydb/dragonfly/pull/3244)
- chore(tiering): External alloc free page chaining by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3237](https://togithub.com/dragonflydb/dragonfly/pull/3237)
- fix: total_stash_overflows statistic by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3248](https://togithub.com/dragonflydb/dragonfly/pull/3248)
- chore: update action versions by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3250](https://togithub.com/dragonflydb/dragonfly/pull/3250)
- chore(lua): Return which undeclared key was accessed by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3245](https://togithub.com/dragonflydb/dragonfly/pull/3245)
- chore: replace session wide fixtures with scope by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3251](https://togithub.com/dragonflydb/dragonfly/pull/3251)
- chore: pull helio and adjust mimalloc for 32MiB segments by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3174](https://togithub.com/dragonflydb/dragonfly/pull/3174)
- chore: add more logs around the duplicate value case in small_bins by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3254](https://togithub.com/dragonflydb/dragonfly/pull/3254)
- fix: fix move error during migration finalization by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3253](https://togithub.com/dragonflydb/dragonfly/pull/3253)
- chore: upload all the logs from /tmp by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3263](https://togithub.com/dragonflydb/dragonfly/pull/3263)
- fix(tiering): Throttle snapshot load by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3249](https://togithub.com/dragonflydb/dragonfly/pull/3249)
- chore: initiate grow preemptively by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3267](https://togithub.com/dragonflydb/dragonfly/pull/3267)
- chore(monitoring): add more dashboards + memcached by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3268](https://togithub.com/dragonflydb/dragonfly/pull/3268)
- fix(json_family): fix JSON.GET commmand for JSON legacy mode by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3261](https://togithub.com/dragonflydb/dragonfly/pull/3261)
- chore: dfly_bench can send traffic to memcached by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3271](https://togithub.com/dragonflydb/dragonfly/pull/3271)
- chore: print effective QPS of the server. by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3274](https://togithub.com/dragonflydb/dragonfly/pull/3274)
- chore: debugging fixes by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3275](https://togithub.com/dragonflydb/dragonfly/pull/3275)
- chore: more debug checks around tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3277](https://togithub.com/dragonflydb/dragonfly/pull/3277)
- chore(license): Fix typo in LICENSE.md text by
[@&#8203;softmoth](https://togithub.com/softmoth) in
[https://github.com/dragonflydb/dragonfly/pull/3283](https://togithub.com/dragonflydb/dragonfly/pull/3283)
- fix(test): Verify that save has not finished by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3278](https://togithub.com/dragonflydb/dragonfly/pull/3278)
- Create scorecard.yml by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3270](https://togithub.com/dragonflydb/dragonfly/pull/3270)
- chore: Disable cluster_mgr_test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3279](https://togithub.com/dragonflydb/dragonfly/pull/3279)
- fix: Increase key count to make test more robust by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3286](https://togithub.com/dragonflydb/dragonfly/pull/3286)
- fix: properly clean tiered state upon flash by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3281](https://togithub.com/dragonflydb/dragonfly/pull/3281)
- fix(bug): crash on takeover and info replication by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3282](https://togithub.com/dragonflydb/dragonfly/pull/3282)

##### New Contributors

- [@&#8203;softmoth](https://togithub.com/softmoth) made their first
contribution in
[https://github.com/dragonflydb/dragonfly/pull/3283](https://togithub.com/dragonflydb/dragonfly/pull/3283)

##### Huge thanks to all the contributors! ❤️

**Full Changelog**:
dragonflydb/dragonfly@v1.19.0...v1.20.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:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjYuMiIsInVwZGF0ZWRJblZlciI6IjM3LjQyNi40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

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 Jul 13, 2024
…20.1 ) (#5021)

This PR contains the following updates:

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

---

### Release Notes

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

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

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

##### Dragonfly v1.20.1

This is a patch release.

fix: S3 access for loading/saving snapshots
([#&#8203;3296](https://togithub.com/dragonflydb/dragonfly/issues/3296))

Signed-off-by: kostas <kostas@dragonflydb.io>

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

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

##### Dragonfly v1.20.0

Some prominent changes include:

- Improvements around client side caching
([#&#8203;3136](https://togithub.com/dragonflydb/dragonfly/issues/3136)
[#&#8203;3158](https://togithub.com/dragonflydb/dragonfly/issues/3158))
Specifically, rueidis is now supported
([#&#8203;2454](https://togithub.com/dragonflydb/dragonfly/issues/2454))
- Improvements around search and vector search APIs, FT.ALTER is now
supported
([#&#8203;3144](https://togithub.com/dragonflydb/dragonfly/issues/3144),
[#&#8203;3148](https://togithub.com/dragonflydb/dragonfly/issues/3148),
[#&#8203;3178](https://togithub.com/dragonflydb/dragonfly/issues/3178),
[#&#8203;3186](https://togithub.com/dragonflydb/dragonfly/issues/3186))
- JSON.MSET is added
([#&#8203;3167](https://togithub.com/dragonflydb/dragonfly/issues/3167))
- Expiry notifications are now supported
([#&#8203;3154](https://togithub.com/dragonflydb/dragonfly/issues/3154))

##### What's Changed

- test(cluster_mgr): Add tests for cluster_mgr.py by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3129](https://togithub.com/dragonflydb/dragonfly/pull/3129)
- chore: get rid of kv_args and replace it with slices to full_args by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3101](https://togithub.com/dragonflydb/dragonfly/pull/3101)
- fix: Fix live-lock in connection test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3135](https://togithub.com/dragonflydb/dragonfly/pull/3135)
- chore: call breaker_cb\_ on shutdown by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3128](https://togithub.com/dragonflydb/dragonfly/pull/3128)
- chore: Add option to disable aws dependency by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3077](https://togithub.com/dragonflydb/dragonfly/pull/3077)
- feat(cluster): Add important logs by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3138](https://togithub.com/dragonflydb/dragonfly/pull/3138)
- chore: a small cleanup by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3140](https://togithub.com/dragonflydb/dragonfly/pull/3140)
- test: skip test_cluster_migration_cancel, it is broken by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3146](https://togithub.com/dragonflydb/dragonfly/pull/3146)
- chore: update helio by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3150](https://togithub.com/dragonflydb/dragonfly/pull/3150)
- fix: fix bug in cluster/slot_set by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3143](https://togithub.com/dragonflydb/dragonfly/pull/3143)
- chore: recommit client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3136](https://togithub.com/dragonflydb/dragonfly/pull/3136)
- feat(search): Tag field options (separator, case sensitivity) by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3144](https://togithub.com/dragonflydb/dragonfly/pull/3144)
- feat(search): basic FT.ALTER by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3148](https://togithub.com/dragonflydb/dragonfly/pull/3148)
- chore: Introduce pipeline back-pressure by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3152](https://togithub.com/dragonflydb/dragonfly/pull/3152)
- fix: lua and client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3163](https://togithub.com/dragonflydb/dragonfly/pull/3163)
- feat: client tracking optout by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3158](https://togithub.com/dragonflydb/dragonfly/pull/3158)
- feat: add noloop subcommand in client tracking by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3164](https://togithub.com/dragonflydb/dragonfly/pull/3164)
- fix(ci): docker not using iouring by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3169](https://togithub.com/dragonflydb/dragonfly/pull/3169)
- fix(ci): add missing docker option on reg tests workflow by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3172](https://togithub.com/dragonflydb/dragonfly/pull/3172)
- fix: acl compatibility by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3147](https://togithub.com/dragonflydb/dragonfly/pull/3147)
- chore: Streamer is rewritten with async interface by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3108](https://togithub.com/dragonflydb/dragonfly/pull/3108)
- feat(json): MSET by [@&#8203;dranikpg](https://togithub.com/dranikpg)
in
[https://github.com/dragonflydb/dragonfly/pull/3167](https://togithub.com/dragonflydb/dragonfly/pull/3167)
- fix(cluster): Wait for flow creation before cancelling it by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3159](https://togithub.com/dragonflydb/dragonfly/pull/3159)
- chore: improve ft.create for vector search by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3178](https://togithub.com/dragonflydb/dragonfly/pull/3178)
- feat: add incoming migration error processing by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3175](https://togithub.com/dragonflydb/dragonfly/pull/3175)
- chore: add parsing support for the rest of VECTOR parameters by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3179](https://togithub.com/dragonflydb/dragonfly/pull/3179)
- fix(cluster): Wait before all access to slot migrations by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3180](https://togithub.com/dragonflydb/dragonfly/pull/3180)
- fix(server): fix bug in replication on cached mode by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3156](https://togithub.com/dragonflydb/dragonfly/pull/3156)
- chore: small acl compat changes by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3177](https://togithub.com/dragonflydb/dragonfly/pull/3177)
- chore: allow calling Context::ReportError from I/O dispatch fiber by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3182](https://togithub.com/dragonflydb/dragonfly/pull/3182)
- chore: add a lexer test covering KNN query by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3185](https://togithub.com/dragonflydb/dragonfly/pull/3185)
- chore(search): Add \__vector_score alias by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3186](https://togithub.com/dragonflydb/dragonfly/pull/3186)
- chore: Refactor string span management by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3165](https://togithub.com/dragonflydb/dragonfly/pull/3165)
- chore(ci): run replication tests on arm by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3168](https://togithub.com/dragonflydb/dragonfly/pull/3168)
- chore(search): improve parser error reporting by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3184](https://togithub.com/dragonflydb/dragonfly/pull/3184)
- fix(reply_builder): remove virtual modifier in SendError(ErrorReply)
method by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3191](https://togithub.com/dragonflydb/dragonfly/pull/3191)
- fix(cluster): Support `FLUSHALL` while slot migration is in progress
by [@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3173](https://togithub.com/dragonflydb/dragonfly/pull/3173)
- fix: fix RegisterOnChange methods for journal and db_slice by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3171](https://togithub.com/dragonflydb/dragonfly/pull/3171)
- fix(generic_family): fix RenameGeneric command for non-string data
types by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3181](https://togithub.com/dragonflydb/dragonfly/pull/3181)
- fix(server): Rename confusing flag
`replica_reconnect_on_master_restart` by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3193](https://togithub.com/dragonflydb/dragonfly/pull/3193)
- fix(unit tests): fix generic family info test by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3187](https://togithub.com/dragonflydb/dragonfly/pull/3187)
- test: improve cluster_fuzzy_migration test by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3197](https://togithub.com/dragonflydb/dragonfly/pull/3197)
- chore(core): Remove DfImpl inside ScoredMap by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3199](https://togithub.com/dragonflydb/dragonfly/pull/3199)
- chore(tiering): Remove IoMgr by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3198](https://togithub.com/dragonflydb/dragonfly/pull/3198)
- test(cluster): Make sure migration maintains TTL by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3188](https://togithub.com/dragonflydb/dragonfly/pull/3188)
- feat(cluster): Support `STICK` bit in slot migration by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3200](https://togithub.com/dragonflydb/dragonfly/pull/3200)
- chore: Re-enable previously flaky test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3196](https://togithub.com/dragonflydb/dragonfly/pull/3196)
- feat(acl): add support of multiple passwords by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3189](https://togithub.com/dragonflydb/dragonfly/pull/3189)
- chore(tiering): More advanced tiering tests by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3201](https://togithub.com/dragonflydb/dragonfly/pull/3201)
- chore: add replica-priority flag by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3204](https://togithub.com/dragonflydb/dragonfly/pull/3204)
- chore: fix tiering regtest test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3208](https://togithub.com/dragonflydb/dragonfly/pull/3208)
- feat(generic_family): Assemble RESTORE and STICK commands into one
commmand during replication of the RENAME command by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3209](https://togithub.com/dragonflydb/dragonfly/pull/3209)
- core(search): Add EF_RUNTIME parameter by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3206](https://togithub.com/dragonflydb/dragonfly/pull/3206)
- fix(sanitizers): failing json test by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3176](https://togithub.com/dragonflydb/dragonfly/pull/3176)
- feat(server): expiry notifications by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3154](https://togithub.com/dragonflydb/dragonfly/pull/3154)
- fix: replicaof_reject_on_load flake by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3203](https://togithub.com/dragonflydb/dragonfly/pull/3203)
- fix(cluster): Don't miss keys when migrating slots by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3218](https://togithub.com/dragonflydb/dragonfly/pull/3218)
- fix(tiering): Fix pending leak during immediate stash error by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3219](https://togithub.com/dragonflydb/dragonfly/pull/3219)
- chore: provide basic logging to catch possible command errors by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3213](https://togithub.com/dragonflydb/dragonfly/pull/3213)
- chore: disable tiering test by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3236](https://togithub.com/dragonflydb/dragonfly/pull/3236)
- fix(transaction): Don't transactionalize empty EVAL inside EXEC by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3231](https://togithub.com/dragonflydb/dragonfly/pull/3231)
- fix: fix deadlock in DFLYCLUSTER CONFIG command and outgoing migration
finaliztion by [@&#8203;BorysTheDev](https://togithub.com/BorysTheDev)
in
[https://github.com/dragonflydb/dragonfly/pull/3239](https://togithub.com/dragonflydb/dragonfly/pull/3239)
- chore(tiered): minor fixes + expose buffer allocation type stats by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3234](https://togithub.com/dragonflydb/dragonfly/pull/3234)
- fix(pytest): timed ticker for simpler conditions by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3242](https://togithub.com/dragonflydb/dragonfly/pull/3242)
- fix(server): Fix SCAN deadlock by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3235](https://togithub.com/dragonflydb/dragonfly/pull/3235)
- chore: introduce back-pressure to tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3243](https://togithub.com/dragonflydb/dragonfly/pull/3243)
- chore: improve dfly_bench by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3244](https://togithub.com/dragonflydb/dragonfly/pull/3244)
- chore(tiering): External alloc free page chaining by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3237](https://togithub.com/dragonflydb/dragonfly/pull/3237)
- fix: total_stash_overflows statistic by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3248](https://togithub.com/dragonflydb/dragonfly/pull/3248)
- chore: update action versions by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3250](https://togithub.com/dragonflydb/dragonfly/pull/3250)
- chore(lua): Return which undeclared key was accessed by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3245](https://togithub.com/dragonflydb/dragonfly/pull/3245)
- chore: replace session wide fixtures with scope by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3251](https://togithub.com/dragonflydb/dragonfly/pull/3251)
- chore: pull helio and adjust mimalloc for 32MiB segments by
[@&#8203;kostasrim](https://togithub.com/kostasrim) in
[https://github.com/dragonflydb/dragonfly/pull/3174](https://togithub.com/dragonflydb/dragonfly/pull/3174)
- chore: add more logs around the duplicate value case in small_bins by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3254](https://togithub.com/dragonflydb/dragonfly/pull/3254)
- fix: fix move error during migration finalization by
[@&#8203;BorysTheDev](https://togithub.com/BorysTheDev) in
[https://github.com/dragonflydb/dragonfly/pull/3253](https://togithub.com/dragonflydb/dragonfly/pull/3253)
- chore: upload all the logs from /tmp by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3263](https://togithub.com/dragonflydb/dragonfly/pull/3263)
- fix(tiering): Throttle snapshot load by
[@&#8203;dranikpg](https://togithub.com/dranikpg) in
[https://github.com/dragonflydb/dragonfly/pull/3249](https://togithub.com/dragonflydb/dragonfly/pull/3249)
- chore: initiate grow preemptively by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3267](https://togithub.com/dragonflydb/dragonfly/pull/3267)
- chore(monitoring): add more dashboards + memcached by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3268](https://togithub.com/dragonflydb/dragonfly/pull/3268)
- fix(json_family): fix JSON.GET commmand for JSON legacy mode by
[@&#8203;BagritsevichStepan](https://togithub.com/BagritsevichStepan) in
[https://github.com/dragonflydb/dragonfly/pull/3261](https://togithub.com/dragonflydb/dragonfly/pull/3261)
- chore: dfly_bench can send traffic to memcached by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3271](https://togithub.com/dragonflydb/dragonfly/pull/3271)
- chore: print effective QPS of the server. by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3274](https://togithub.com/dragonflydb/dragonfly/pull/3274)
- chore: debugging fixes by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3275](https://togithub.com/dragonflydb/dragonfly/pull/3275)
- chore: more debug checks around tiered storage by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3277](https://togithub.com/dragonflydb/dragonfly/pull/3277)
- chore(license): Fix typo in LICENSE.md text by
[@&#8203;softmoth](https://togithub.com/softmoth) in
[https://github.com/dragonflydb/dragonfly/pull/3283](https://togithub.com/dragonflydb/dragonfly/pull/3283)
- fix(test): Verify that save has not finished by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3278](https://togithub.com/dragonflydb/dragonfly/pull/3278)
- Create scorecard.yml by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3270](https://togithub.com/dragonflydb/dragonfly/pull/3270)
- chore: Disable cluster_mgr_test by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3279](https://togithub.com/dragonflydb/dragonfly/pull/3279)
- fix: Increase key count to make test more robust by
[@&#8203;chakaz](https://togithub.com/chakaz) in
[https://github.com/dragonflydb/dragonfly/pull/3286](https://togithub.com/dragonflydb/dragonfly/pull/3286)
- fix: properly clean tiered state upon flash by
[@&#8203;romange](https://togithub.com/romange) in
[https://github.com/dragonflydb/dragonfly/pull/3281](https://togithub.com/dragonflydb/dragonfly/pull/3281)
- fix(bug): crash on takeover and info replication by
[@&#8203;adiholden](https://togithub.com/adiholden) in
[https://github.com/dragonflydb/dragonfly/pull/3282](https://togithub.com/dragonflydb/dragonfly/pull/3282)

##### New Contributors

- [@&#8203;softmoth](https://togithub.com/softmoth) made their first
contribution in
[https://github.com/dragonflydb/dragonfly/pull/3283](https://togithub.com/dragonflydb/dragonfly/pull/3283)

##### Huge thanks to all the contributors! ❤️

**Full Changelog**:
dragonflydb/dragonfly@v1.19.0...v1.20.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:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjYuMiIsInVwZGF0ZWRJblZlciI6IjM3LjQyNi40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

Co-authored-by: lumiere-bot[bot] <98047013+lumiere-bot[bot]@users.noreply.github.com>
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.

FLUSHALL during slot migration causes assert failure

4 participants