-
Notifications
You must be signed in to change notification settings - Fork 948
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: add value range check for SETBIT command #3750
Conversation
8bb71b1
to
b892d22
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice fix!
template <auto min, auto max> struct FInt { | ||
decltype(min) value = {}; | ||
operator decltype(min)() { | ||
return value; | ||
} | ||
|
||
static_assert(std::is_same_v<decltype(min), decltype(max)>, "inconsistent types"); | ||
static constexpr auto kMin = min; | ||
static constexpr auto kMax = max; | ||
}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some nits,
-
You can use
using Min=decltype(min);
or even better just avoid thenon type parameters
altogether withtypename Min, typename Max
. Generally speaking, non type parameters are concrete instantiations, for f<1, 2> is different than f<2, 2> and their instantiations can easily get out of hand in generic code (although this is not a concern in this context but I leave it here for informational purposes). -
You don't really need the
implicit conversion operator
below.ConvertFInt
can just return the type ofmin
directly. At the end of the day you just care for the.value
if the parser has no errors, so returning the underline type/value is more than enough
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
unfortunately ConvertFInt can't return type directly, because I construct tuple and to return direct type I need to do some type deduction that is a little more complex task, but if you want I can implement it
…23.0 ) (#5480) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/dragonflydb/dragonfly](https://redirect.github.com/dragonflydb/dragonfly) | minor | `v1.22.2` -> `v1.23.0` | --- ### Release Notes <details> <summary>dragonflydb/dragonfly (ghcr.io/dragonflydb/dragonfly)</summary> ### [`v1.23.0`](https://redirect.github.com/dragonflydb/dragonfly/releases/tag/v1.23.0) [Compare Source](https://redirect.github.com/dragonflydb/dragonfly/compare/v1.22.2...v1.23.0) ##### Dragonfly v1.23.0 Some prominent changes include: - Fix container healthchecks for both privileged and non-privileged environments [#​3644](https://redirect.github.com/dragonflydb/dragonfly/issues/3644) - Fix FT.AGGREGATE command ([#​3657](https://redirect.github.com/dragonflydb/dragonfly/issues/3657) [#​3660](https://redirect.github.com/dragonflydb/dragonfly/issues/3660) ) - Fix regression with the S3 access [#​3717](https://redirect.github.com/dragonflydb/dragonfly/issues/3717) - Added ZRANGESTORE command [#​3757](https://redirect.github.com/dragonflydb/dragonfly/issues/3757) - introduce`rss_oom_deny_ratio` flag ([#​3702](https://redirect.github.com/dragonflydb/dragonfly/issues/3702)) - now Dragonfly will reject write commands if its RSS memory usage crosses `maxmemory*rss_oom_deny_ratio`. The default value of this flag is set to 1.25. - Support for "CLIENT ID" and "CLIENT SETINFO" commands ([#​3673](https://redirect.github.com/dragonflydb/dragonfly/issues/3673) and [#​3672](https://redirect.github.com/dragonflydb/dragonfly/issues/3672)) - Better memory tracking for JSON objects ([#​3641](https://redirect.github.com/dragonflydb/dragonfly/issues/3641)) ##### What's Changed - fix(docker/healthcheck): run netstat port retreival command as dfly by [@​Pothulapati](https://redirect.github.com/Pothulapati) in [https://github.com/dragonflydb/dragonfly/pull/3647](https://redirect.github.com/dragonflydb/dragonfly/pull/3647) - test: remove redundant tests by [@​cunla](https://redirect.github.com/cunla) in [https://github.com/dragonflydb/dragonfly/pull/3642](https://redirect.github.com/dragonflydb/dragonfly/pull/3642) - chore: allow disabling io_uring registered buffers by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3650](https://redirect.github.com/dragonflydb/dragonfly/pull/3650) - CmdArgParser improvement by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3633](https://redirect.github.com/dragonflydb/dragonfly/pull/3633) - fix: deadlock in the cluster migration process by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3653](https://redirect.github.com/dragonflydb/dragonfly/pull/3653) - fix: fix multi mget exec error message by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3662](https://redirect.github.com/dragonflydb/dragonfly/pull/3662) - test: fix MC test_expiration by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3663](https://redirect.github.com/dragonflydb/dragonfly/pull/3663) - chore: add some community suggestions to README by [@​Niennienzz](https://redirect.github.com/Niennienzz) in [https://github.com/dragonflydb/dragonfly/pull/3664](https://redirect.github.com/dragonflydb/dragonfly/pull/3664) - fix: recursive calls in the allocation tracker by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3665](https://redirect.github.com/dragonflydb/dragonfly/pull/3665) - chore: cosmetic changes around Snapshot functions by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3652](https://redirect.github.com/dragonflydb/dragonfly/pull/3652) - fix(search_family): Fix FT.AGGREGATE GROUPBY option by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3657](https://redirect.github.com/dragonflydb/dragonfly/pull/3657) - chore: Add `CLIENT ID` command by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3672](https://redirect.github.com/dragonflydb/dragonfly/pull/3672) - deprecate RecordsPopper and serialize channel records during push by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3667](https://redirect.github.com/dragonflydb/dragonfly/pull/3667) - feat(server): Support `CLIENT SETINFO` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3673](https://redirect.github.com/dragonflydb/dragonfly/pull/3673) - server logs: change script error to warning by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3670](https://redirect.github.com/dragonflydb/dragonfly/pull/3670) - fix(search_family): Fix LOAD option behavior in the FT.AGGREGATE command by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3660](https://redirect.github.com/dragonflydb/dragonfly/pull/3660) - test: unskip cluster tests and add debug info by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3681](https://redirect.github.com/dragonflydb/dragonfly/pull/3681) - chore: adjust RdbChannel sizes by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3676](https://redirect.github.com/dragonflydb/dragonfly/pull/3676) - chore: add a script that parses allocator tracking logs by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3687](https://redirect.github.com/dragonflydb/dragonfly/pull/3687) - chore: limit number of descriptors in the exec map by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3688](https://redirect.github.com/dragonflydb/dragonfly/pull/3688) - fix(server): fix replication master deadlock on cancelation flow by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3686](https://redirect.github.com/dragonflydb/dragonfly/pull/3686) - fix: join for cancel incoming migration by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3692](https://redirect.github.com/dragonflydb/dragonfly/pull/3692) - fix(json_family): Fix the JSON.SET bug if the path is in legacy mode and is not the root by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3693](https://redirect.github.com/dragonflydb/dragonfly/pull/3693) - fix: test_acl_revoke_pub_sub_while_subscribed by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3680](https://redirect.github.com/dragonflydb/dragonfly/pull/3680) - test: fix test_cluster_replication_migration by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3699](https://redirect.github.com/dragonflydb/dragonfly/pull/3699) - fix: test_replicaof_reject_on_load assert failure by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3697](https://redirect.github.com/dragonflydb/dragonfly/pull/3697) - fix(json_family) Add NOESCAPE option to the JSON.GET command by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3685](https://redirect.github.com/dragonflydb/dragonfly/pull/3685) - chore: pull latest helio by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3700](https://redirect.github.com/dragonflydb/dragonfly/pull/3700) - feat(core): Support RISCV RVV by [@​howjmay](https://redirect.github.com/howjmay) in [https://github.com/dragonflydb/dragonfly/pull/3655](https://redirect.github.com/dragonflydb/dragonfly/pull/3655) - fix: allow parsing extra spaces on acl files by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3703](https://redirect.github.com/dragonflydb/dragonfly/pull/3703) - Update dflycluster slot-migration-status reply by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3707](https://redirect.github.com/dragonflydb/dragonfly/pull/3707) - chore: add clone benchmark by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3709](https://redirect.github.com/dragonflydb/dragonfly/pull/3709) - fix: add default value has_mc_flag field by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3710](https://redirect.github.com/dragonflydb/dragonfly/pull/3710) - chore: symbolize stack traces in tests upon crash by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3714](https://redirect.github.com/dragonflydb/dragonfly/pull/3714) - fix: fix s3 load snapshot by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3717](https://redirect.github.com/dragonflydb/dragonfly/pull/3717) - fix(cluster): Do not `Pause()` replication / migrations by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3716](https://redirect.github.com/dragonflydb/dragonfly/pull/3716) - chore: add log info on failed commands by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3694](https://redirect.github.com/dragonflydb/dragonfly/pull/3694) - chore: enable ReplyGuard in ReplyBuilder2 by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3705](https://redirect.github.com/dragonflydb/dragonfly/pull/3705) - tests: fix and enable s3 snapshot test by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3720](https://redirect.github.com/dragonflydb/dragonfly/pull/3720) - fix(json_family): Fix JSON.ARRPOP command in legacy mode should not return WRONGTYPE error by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3683](https://redirect.github.com/dragonflydb/dragonfly/pull/3683) - fix(json_family): Separate double and int values during the comparison of the JSON objects by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3711](https://redirect.github.com/dragonflydb/dragonfly/pull/3711) - fix: Fix test `test_client_pause_with_replica` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3729](https://redirect.github.com/dragonflydb/dragonfly/pull/3729) - fix: Fix `cluster_mgr.py` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3730](https://redirect.github.com/dragonflydb/dragonfly/pull/3730) - fix: Fix `test_take_over_seeder` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3733](https://redirect.github.com/dragonflydb/dragonfly/pull/3733) - chore: Remove ReqSerializer by [@​dranikpg](https://redirect.github.com/dranikpg) in [https://github.com/dragonflydb/dragonfly/pull/3721](https://redirect.github.com/dragonflydb/dragonfly/pull/3721) - fix(json_family): Fix out of bound ranges for the JSON.ARR\* commands by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3712](https://redirect.github.com/dragonflydb/dragonfly/pull/3712) - fix: properly track json memory usage by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3641](https://redirect.github.com/dragonflydb/dragonfly/pull/3641) - test: add tests for replication by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3734](https://redirect.github.com/dragonflydb/dragonfly/pull/3734) - test: unskip test for debugging purpose by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3738](https://redirect.github.com/dragonflydb/dragonfly/pull/3738) - refactor: use CmdArgParser for XGROUP command by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3739](https://redirect.github.com/dragonflydb/dragonfly/pull/3739) - test: add test for replication deadlock on replication timeout by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3691](https://redirect.github.com/dragonflydb/dragonfly/pull/3691) - chore: Switch ports for `cluster_mgr_test.py` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3741](https://redirect.github.com/dragonflydb/dragonfly/pull/3741) - chore: change log level to warning for empty keys by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3722](https://redirect.github.com/dragonflydb/dragonfly/pull/3722) - chore: add SetReplies by [@​dranikpg](https://redirect.github.com/dranikpg) in [https://github.com/dragonflydb/dragonfly/pull/3727](https://redirect.github.com/dragonflydb/dragonfly/pull/3727) - chore: introduce a Clone function for the dense set by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3740](https://redirect.github.com/dragonflydb/dragonfly/pull/3740) - chore: add missing await in test_take_over_seeder by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3744](https://redirect.github.com/dragonflydb/dragonfly/pull/3744) - fix: allow the healthcheck run in non-privileged containers as well by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3731](https://redirect.github.com/dragonflydb/dragonfly/pull/3731) - fix: add value range check for SETBIT command by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3750](https://redirect.github.com/dragonflydb/dragonfly/pull/3750) - fix: zset store conclude transaction on error by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3755](https://redirect.github.com/dragonflydb/dragonfly/pull/3755) - chore: refactor a lambda function into a named one by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3753](https://redirect.github.com/dragonflydb/dragonfly/pull/3753) - chore: fix return on bad status by [@​dranikpg](https://redirect.github.com/dranikpg) in [https://github.com/dragonflydb/dragonfly/pull/3758](https://redirect.github.com/dragonflydb/dragonfly/pull/3758) - feat(helm): add hostNetwork, topologySpreadConstraint and clusterIP su… by [@​katapultcloud](https://redirect.github.com/katapultcloud) in [https://github.com/dragonflydb/dragonfly/pull/3389](https://redirect.github.com/dragonflydb/dragonfly/pull/3389) - feat(server): introduce oom_deny_commands flag by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3718](https://redirect.github.com/dragonflydb/dragonfly/pull/3718) - feat(server): introduce rss oom limit by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3702](https://redirect.github.com/dragonflydb/dragonfly/pull/3702) - fix: test deadlock with processing the stdout of sed by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3735](https://redirect.github.com/dragonflydb/dragonfly/pull/3735) - chore: add integrity checks to consumer->pel by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3754](https://redirect.github.com/dragonflydb/dragonfly/pull/3754) - fix: make snapshotting process more responsive by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3759](https://redirect.github.com/dragonflydb/dragonfly/pull/3759) - fix: tune test_replicaof_reject_on_load parameters by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3762](https://redirect.github.com/dragonflydb/dragonfly/pull/3762) - chore: logs on assert fail for test_acl_cat_commands_multi_exec_squash by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3749](https://redirect.github.com/dragonflydb/dragonfly/pull/3749) - chore: add more error logs around ziplist parsing checks by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3764](https://redirect.github.com/dragonflydb/dragonfly/pull/3764) - fix: substr/getrange result for invalid range by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3766](https://redirect.github.com/dragonflydb/dragonfly/pull/3766) - feat(zset_family): add ZRANGESTORE by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3757](https://redirect.github.com/dragonflydb/dragonfly/pull/3757) - fix server: fix last error reply by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3728](https://redirect.github.com/dragonflydb/dragonfly/pull/3728) - chore: give up on InlinedVector due to spurious warnings with optional by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3765](https://redirect.github.com/dragonflydb/dragonfly/pull/3765) - fix: mark pubusb commands as unsupported for cluster by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3767](https://redirect.github.com/dragonflydb/dragonfly/pull/3767) - chore: some renames + fix a typo in RETURN_ON_BAD_STATUS by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3763](https://redirect.github.com/dragonflydb/dragonfly/pull/3763) - fix: setrange with empty value doesn't modify the DB by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3771](https://redirect.github.com/dragonflydb/dragonfly/pull/3771) ##### New Contributors - [@​howjmay](https://redirect.github.com/howjmay) made their first contribution in [https://github.com/dragonflydb/dragonfly/pull/3655](https://redirect.github.com/dragonflydb/dragonfly/pull/3655) - [@​katapultcloud](https://redirect.github.com/katapultcloud) made their first contribution in [https://github.com/dragonflydb/dragonfly/pull/3389](https://redirect.github.com/dragonflydb/dragonfly/pull/3389) ##### Huge thanks to all the contributors! ❤️ **Full Changelog**: dragonflydb/dragonfly@v1.22.0...v1.23.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://redirect.github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC45NC4zIiwidXBkYXRlZEluVmVyIjoiMzguOTQuMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciJdfQ==--> Co-authored-by: lumiere-bot[bot] <98047013+lumiere-bot[bot]@users.noreply.github.com>
…nfly ( v1.22.2 → v1.23.0 ) (#4341) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [docker.dragonflydb.io/dragonflydb/dragonfly](https://redirect.github.com/dragonflydb/dragonfly) | minor | `v1.22.2` -> `v1.23.0` | --- ### Release Notes <details> <summary>dragonflydb/dragonfly (docker.dragonflydb.io/dragonflydb/dragonfly)</summary> ### [`v1.23.0`](https://redirect.github.com/dragonflydb/dragonfly/releases/tag/v1.23.0) [Compare Source](https://redirect.github.com/dragonflydb/dragonfly/compare/v1.22.2...v1.23.0) ##### Dragonfly v1.23.0 Some prominent changes include: - Fix container healthchecks for both privileged and non-privileged environments [#​3644](https://redirect.github.com/dragonflydb/dragonfly/issues/3644) - Fix FT.AGGREGATE command ([#​3657](https://redirect.github.com/dragonflydb/dragonfly/issues/3657) [#​3660](https://redirect.github.com/dragonflydb/dragonfly/issues/3660) ) - Fix regression with the S3 access [#​3717](https://redirect.github.com/dragonflydb/dragonfly/issues/3717) - Added ZRANGESTORE command [#​3757](https://redirect.github.com/dragonflydb/dragonfly/issues/3757) - introduce`rss_oom_deny_ratio` flag ([#​3702](https://redirect.github.com/dragonflydb/dragonfly/issues/3702)) - now Dragonfly will reject write commands if its RSS memory usage crosses `maxmemory*rss_oom_deny_ratio`. The default value of this flag is set to 1.25. - Support for "CLIENT ID" and "CLIENT SETINFO" commands ([#​3673](https://redirect.github.com/dragonflydb/dragonfly/issues/3673) and [#​3672](https://redirect.github.com/dragonflydb/dragonfly/issues/3672)) - Better memory tracking for JSON objects ([#​3641](https://redirect.github.com/dragonflydb/dragonfly/issues/3641)) ##### What's Changed - fix(docker/healthcheck): run netstat port retreival command as dfly by [@​Pothulapati](https://redirect.github.com/Pothulapati) in [https://github.com/dragonflydb/dragonfly/pull/3647](https://redirect.github.com/dragonflydb/dragonfly/pull/3647) - test: remove redundant tests by [@​cunla](https://redirect.github.com/cunla) in [https://github.com/dragonflydb/dragonfly/pull/3642](https://redirect.github.com/dragonflydb/dragonfly/pull/3642) - chore: allow disabling io_uring registered buffers by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3650](https://redirect.github.com/dragonflydb/dragonfly/pull/3650) - CmdArgParser improvement by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3633](https://redirect.github.com/dragonflydb/dragonfly/pull/3633) - fix: deadlock in the cluster migration process by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3653](https://redirect.github.com/dragonflydb/dragonfly/pull/3653) - fix: fix multi mget exec error message by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3662](https://redirect.github.com/dragonflydb/dragonfly/pull/3662) - test: fix MC test_expiration by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3663](https://redirect.github.com/dragonflydb/dragonfly/pull/3663) - chore: add some community suggestions to README by [@​Niennienzz](https://redirect.github.com/Niennienzz) in [https://github.com/dragonflydb/dragonfly/pull/3664](https://redirect.github.com/dragonflydb/dragonfly/pull/3664) - fix: recursive calls in the allocation tracker by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3665](https://redirect.github.com/dragonflydb/dragonfly/pull/3665) - chore: cosmetic changes around Snapshot functions by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3652](https://redirect.github.com/dragonflydb/dragonfly/pull/3652) - fix(search_family): Fix FT.AGGREGATE GROUPBY option by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3657](https://redirect.github.com/dragonflydb/dragonfly/pull/3657) - chore: Add `CLIENT ID` command by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3672](https://redirect.github.com/dragonflydb/dragonfly/pull/3672) - deprecate RecordsPopper and serialize channel records during push by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3667](https://redirect.github.com/dragonflydb/dragonfly/pull/3667) - feat(server): Support `CLIENT SETINFO` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3673](https://redirect.github.com/dragonflydb/dragonfly/pull/3673) - server logs: change script error to warning by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3670](https://redirect.github.com/dragonflydb/dragonfly/pull/3670) - fix(search_family): Fix LOAD option behavior in the FT.AGGREGATE command by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3660](https://redirect.github.com/dragonflydb/dragonfly/pull/3660) - test: unskip cluster tests and add debug info by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3681](https://redirect.github.com/dragonflydb/dragonfly/pull/3681) - chore: adjust RdbChannel sizes by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3676](https://redirect.github.com/dragonflydb/dragonfly/pull/3676) - chore: add a script that parses allocator tracking logs by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3687](https://redirect.github.com/dragonflydb/dragonfly/pull/3687) - chore: limit number of descriptors in the exec map by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3688](https://redirect.github.com/dragonflydb/dragonfly/pull/3688) - fix(server): fix replication master deadlock on cancelation flow by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3686](https://redirect.github.com/dragonflydb/dragonfly/pull/3686) - fix: join for cancel incoming migration by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3692](https://redirect.github.com/dragonflydb/dragonfly/pull/3692) - fix(json_family): Fix the JSON.SET bug if the path is in legacy mode and is not the root by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3693](https://redirect.github.com/dragonflydb/dragonfly/pull/3693) - fix: test_acl_revoke_pub_sub_while_subscribed by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3680](https://redirect.github.com/dragonflydb/dragonfly/pull/3680) - test: fix test_cluster_replication_migration by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3699](https://redirect.github.com/dragonflydb/dragonfly/pull/3699) - fix: test_replicaof_reject_on_load assert failure by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3697](https://redirect.github.com/dragonflydb/dragonfly/pull/3697) - fix(json_family) Add NOESCAPE option to the JSON.GET command by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3685](https://redirect.github.com/dragonflydb/dragonfly/pull/3685) - chore: pull latest helio by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3700](https://redirect.github.com/dragonflydb/dragonfly/pull/3700) - feat(core): Support RISCV RVV by [@​howjmay](https://redirect.github.com/howjmay) in [https://github.com/dragonflydb/dragonfly/pull/3655](https://redirect.github.com/dragonflydb/dragonfly/pull/3655) - fix: allow parsing extra spaces on acl files by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3703](https://redirect.github.com/dragonflydb/dragonfly/pull/3703) - Update dflycluster slot-migration-status reply by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3707](https://redirect.github.com/dragonflydb/dragonfly/pull/3707) - chore: add clone benchmark by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3709](https://redirect.github.com/dragonflydb/dragonfly/pull/3709) - fix: add default value has_mc_flag field by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3710](https://redirect.github.com/dragonflydb/dragonfly/pull/3710) - chore: symbolize stack traces in tests upon crash by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3714](https://redirect.github.com/dragonflydb/dragonfly/pull/3714) - fix: fix s3 load snapshot by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3717](https://redirect.github.com/dragonflydb/dragonfly/pull/3717) - fix(cluster): Do not `Pause()` replication / migrations by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3716](https://redirect.github.com/dragonflydb/dragonfly/pull/3716) - chore: add log info on failed commands by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3694](https://redirect.github.com/dragonflydb/dragonfly/pull/3694) - chore: enable ReplyGuard in ReplyBuilder2 by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3705](https://redirect.github.com/dragonflydb/dragonfly/pull/3705) - tests: fix and enable s3 snapshot test by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3720](https://redirect.github.com/dragonflydb/dragonfly/pull/3720) - fix(json_family): Fix JSON.ARRPOP command in legacy mode should not return WRONGTYPE error by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3683](https://redirect.github.com/dragonflydb/dragonfly/pull/3683) - fix(json_family): Separate double and int values during the comparison of the JSON objects by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3711](https://redirect.github.com/dragonflydb/dragonfly/pull/3711) - fix: Fix test `test_client_pause_with_replica` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3729](https://redirect.github.com/dragonflydb/dragonfly/pull/3729) - fix: Fix `cluster_mgr.py` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3730](https://redirect.github.com/dragonflydb/dragonfly/pull/3730) - fix: Fix `test_take_over_seeder` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3733](https://redirect.github.com/dragonflydb/dragonfly/pull/3733) - chore: Remove ReqSerializer by [@​dranikpg](https://redirect.github.com/dranikpg) in [https://github.com/dragonflydb/dragonfly/pull/3721](https://redirect.github.com/dragonflydb/dragonfly/pull/3721) - fix(json_family): Fix out of bound ranges for the JSON.ARR\* commands by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3712](https://redirect.github.com/dragonflydb/dragonfly/pull/3712) - fix: properly track json memory usage by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3641](https://redirect.github.com/dragonflydb/dragonfly/pull/3641) - test: add tests for replication by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3734](https://redirect.github.com/dragonflydb/dragonfly/pull/3734) - test: unskip test for debugging purpose by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3738](https://redirect.github.com/dragonflydb/dragonfly/pull/3738) - refactor: use CmdArgParser for XGROUP command by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3739](https://redirect.github.com/dragonflydb/dragonfly/pull/3739) - test: add test for replication deadlock on replication timeout by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3691](https://redirect.github.com/dragonflydb/dragonfly/pull/3691) - chore: Switch ports for `cluster_mgr_test.py` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3741](https://redirect.github.com/dragonflydb/dragonfly/pull/3741) - chore: change log level to warning for empty keys by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3722](https://redirect.github.com/dragonflydb/dragonfly/pull/3722) - chore: add SetReplies by [@​dranikpg](https://redirect.github.com/dranikpg) in [https://github.com/dragonflydb/dragonfly/pull/3727](https://redirect.github.com/dragonflydb/dragonfly/pull/3727) - chore: introduce a Clone function for the dense set by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3740](https://redirect.github.com/dragonflydb/dragonfly/pull/3740) - chore: add missing await in test_take_over_seeder by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3744](https://redirect.github.com/dragonflydb/dragonfly/pull/3744) - fix: allow the healthcheck run in non-privileged containers as well by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3731](https://redirect.github.com/dragonflydb/dragonfly/pull/3731) - fix: add value range check for SETBIT command by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3750](https://redirect.github.com/dragonflydb/dragonfly/pull/3750) - fix: zset store conclude transaction on error by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3755](https://redirect.github.com/dragonflydb/dragonfly/pull/3755) - chore: refactor a lambda function into a named one by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3753](https://redirect.github.com/dragonflydb/dragonfly/pull/3753) - chore: fix return on bad status by [@​dranikpg](https://redirect.github.com/dranikpg) in [https://github.com/dragonflydb/dragonfly/pull/3758](https://redirect.github.com/dragonflydb/dragonfly/pull/3758) - feat(helm): add hostNetwork, topologySpreadConstraint and clusterIP su… by [@​katapultcloud](https://redirect.github.com/katapultcloud) in [https://github.com/dragonflydb/dragonfly/pull/3389](https://redirect.github.com/dragonflydb/dragonfly/pull/3389) - feat(server): introduce oom_deny_commands flag by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3718](https://redirect.github.com/dragonflydb/dragonfly/pull/3718) - feat(server): introduce rss oom limit by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3702](https://redirect.github.com/dragonflydb/dragonfly/pull/3702) - fix: test deadlock with processing the stdout of sed by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3735](https://redirect.github.com/dragonflydb/dragonfly/pull/3735) - chore: add integrity checks to consumer->pel by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3754](https://redirect.github.com/dragonflydb/dragonfly/pull/3754) - fix: make snapshotting process more responsive by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3759](https://redirect.github.com/dragonflydb/dragonfly/pull/3759) - fix: tune test_replicaof_reject_on_load parameters by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3762](https://redirect.github.com/dragonflydb/dragonfly/pull/3762) - chore: logs on assert fail for test_acl_cat_commands_multi_exec_squash by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3749](https://redirect.github.com/dragonflydb/dragonfly/pull/3749) - chore: add more error logs around ziplist parsing checks by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3764](https://redirect.github.com/dragonflydb/dragonfly/pull/3764) - fix: substr/getrange result for invalid range by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3766](https://redirect.github.com/dragonflydb/dragonfly/pull/3766) - feat(zset_family): add ZRANGESTORE by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3757](https://redirect.github.com/dragonflydb/dragonfly/pull/3757) - fix server: fix last error reply by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3728](https://redirect.github.com/dragonflydb/dragonfly/pull/3728) - chore: give up on InlinedVector due to spurious warnings with optional by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3765](https://redirect.github.com/dragonflydb/dragonfly/pull/3765) - fix: mark pubusb commands as unsupported for cluster by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3767](https://redirect.github.com/dragonflydb/dragonfly/pull/3767) - chore: some renames + fix a typo in RETURN_ON_BAD_STATUS by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3763](https://redirect.github.com/dragonflydb/dragonfly/pull/3763) - fix: setrange with empty value doesn't modify the DB by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3771](https://redirect.github.com/dragonflydb/dragonfly/pull/3771) ##### New Contributors - [@​howjmay](https://redirect.github.com/howjmay) made their first contribution in [https://github.com/dragonflydb/dragonfly/pull/3655](https://redirect.github.com/dragonflydb/dragonfly/pull/3655) - [@​katapultcloud](https://redirect.github.com/katapultcloud) made their first contribution in [https://github.com/dragonflydb/dragonfly/pull/3389](https://redirect.github.com/dragonflydb/dragonfly/pull/3389) ##### Huge thanks to all the contributors! ❤️ **Full Changelog**: dragonflydb/dragonfly@v1.22.0...v1.23.0 </details> <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC45NC4zIiwidXBkYXRlZEluVmVyIjoiMzguOTQuMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciJdfQ==--> Co-authored-by: repo-jeeves[bot] <106431701+repo-jeeves[bot]@users.noreply.github.com>
#983) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/dragonflydb/dragonfly](https://redirect.github.com/dragonflydb/dragonfly) | minor | `v1.22.2` -> `v1.23.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.23.0`](https://redirect.github.com/dragonflydb/dragonfly/releases/tag/v1.23.0) [Compare Source](https://redirect.github.com/dragonflydb/dragonfly/compare/v1.22.2...v1.23.0) ##### Dragonfly v1.23.0 Some prominent changes include: - Fix container healthchecks for both privileged and non-privileged environments [#​3644](https://redirect.github.com/dragonflydb/dragonfly/issues/3644) - Fix FT.AGGREGATE command ([#​3657](https://redirect.github.com/dragonflydb/dragonfly/issues/3657) [#​3660](https://redirect.github.com/dragonflydb/dragonfly/issues/3660) ) - Fix regression with the S3 access [#​3717](https://redirect.github.com/dragonflydb/dragonfly/issues/3717) - Added ZRANGESTORE command [#​3757](https://redirect.github.com/dragonflydb/dragonfly/issues/3757) - introduce`rss_oom_deny_ratio` flag ([#​3702](https://redirect.github.com/dragonflydb/dragonfly/issues/3702)) - now Dragonfly will reject write commands if its RSS memory usage crosses `maxmemory*rss_oom_deny_ratio`. The default value of this flag is set to 1.25. - Support for "CLIENT ID" and "CLIENT SETINFO" commands ([#​3673](https://redirect.github.com/dragonflydb/dragonfly/issues/3673) and [#​3672](https://redirect.github.com/dragonflydb/dragonfly/issues/3672)) - Better memory tracking for JSON objects ([#​3641](https://redirect.github.com/dragonflydb/dragonfly/issues/3641)) ##### What's Changed - fix(docker/healthcheck): run netstat port retreival command as dfly by [@​Pothulapati](https://redirect.github.com/Pothulapati) in [https://github.com/dragonflydb/dragonfly/pull/3647](https://redirect.github.com/dragonflydb/dragonfly/pull/3647) - test: remove redundant tests by [@​cunla](https://redirect.github.com/cunla) in [https://github.com/dragonflydb/dragonfly/pull/3642](https://redirect.github.com/dragonflydb/dragonfly/pull/3642) - chore: allow disabling io_uring registered buffers by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3650](https://redirect.github.com/dragonflydb/dragonfly/pull/3650) - CmdArgParser improvement by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3633](https://redirect.github.com/dragonflydb/dragonfly/pull/3633) - fix: deadlock in the cluster migration process by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3653](https://redirect.github.com/dragonflydb/dragonfly/pull/3653) - fix: fix multi mget exec error message by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3662](https://redirect.github.com/dragonflydb/dragonfly/pull/3662) - test: fix MC test_expiration by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3663](https://redirect.github.com/dragonflydb/dragonfly/pull/3663) - chore: add some community suggestions to README by [@​Niennienzz](https://redirect.github.com/Niennienzz) in [https://github.com/dragonflydb/dragonfly/pull/3664](https://redirect.github.com/dragonflydb/dragonfly/pull/3664) - fix: recursive calls in the allocation tracker by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3665](https://redirect.github.com/dragonflydb/dragonfly/pull/3665) - chore: cosmetic changes around Snapshot functions by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3652](https://redirect.github.com/dragonflydb/dragonfly/pull/3652) - fix(search_family): Fix FT.AGGREGATE GROUPBY option by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3657](https://redirect.github.com/dragonflydb/dragonfly/pull/3657) - chore: Add `CLIENT ID` command by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3672](https://redirect.github.com/dragonflydb/dragonfly/pull/3672) - deprecate RecordsPopper and serialize channel records during push by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3667](https://redirect.github.com/dragonflydb/dragonfly/pull/3667) - feat(server): Support `CLIENT SETINFO` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3673](https://redirect.github.com/dragonflydb/dragonfly/pull/3673) - server logs: change script error to warning by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3670](https://redirect.github.com/dragonflydb/dragonfly/pull/3670) - fix(search_family): Fix LOAD option behavior in the FT.AGGREGATE command by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3660](https://redirect.github.com/dragonflydb/dragonfly/pull/3660) - test: unskip cluster tests and add debug info by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3681](https://redirect.github.com/dragonflydb/dragonfly/pull/3681) - chore: adjust RdbChannel sizes by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3676](https://redirect.github.com/dragonflydb/dragonfly/pull/3676) - chore: add a script that parses allocator tracking logs by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3687](https://redirect.github.com/dragonflydb/dragonfly/pull/3687) - chore: limit number of descriptors in the exec map by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3688](https://redirect.github.com/dragonflydb/dragonfly/pull/3688) - fix(server): fix replication master deadlock on cancelation flow by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3686](https://redirect.github.com/dragonflydb/dragonfly/pull/3686) - fix: join for cancel incoming migration by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3692](https://redirect.github.com/dragonflydb/dragonfly/pull/3692) - fix(json_family): Fix the JSON.SET bug if the path is in legacy mode and is not the root by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3693](https://redirect.github.com/dragonflydb/dragonfly/pull/3693) - fix: test_acl_revoke_pub_sub_while_subscribed by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3680](https://redirect.github.com/dragonflydb/dragonfly/pull/3680) - test: fix test_cluster_replication_migration by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3699](https://redirect.github.com/dragonflydb/dragonfly/pull/3699) - fix: test_replicaof_reject_on_load assert failure by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3697](https://redirect.github.com/dragonflydb/dragonfly/pull/3697) - fix(json_family) Add NOESCAPE option to the JSON.GET command by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3685](https://redirect.github.com/dragonflydb/dragonfly/pull/3685) - chore: pull latest helio by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3700](https://redirect.github.com/dragonflydb/dragonfly/pull/3700) - feat(core): Support RISCV RVV by [@​howjmay](https://redirect.github.com/howjmay) in [https://github.com/dragonflydb/dragonfly/pull/3655](https://redirect.github.com/dragonflydb/dragonfly/pull/3655) - fix: allow parsing extra spaces on acl files by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3703](https://redirect.github.com/dragonflydb/dragonfly/pull/3703) - Update dflycluster slot-migration-status reply by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3707](https://redirect.github.com/dragonflydb/dragonfly/pull/3707) - chore: add clone benchmark by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3709](https://redirect.github.com/dragonflydb/dragonfly/pull/3709) - fix: add default value has_mc_flag field by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3710](https://redirect.github.com/dragonflydb/dragonfly/pull/3710) - chore: symbolize stack traces in tests upon crash by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3714](https://redirect.github.com/dragonflydb/dragonfly/pull/3714) - fix: fix s3 load snapshot by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3717](https://redirect.github.com/dragonflydb/dragonfly/pull/3717) - fix(cluster): Do not `Pause()` replication / migrations by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3716](https://redirect.github.com/dragonflydb/dragonfly/pull/3716) - chore: add log info on failed commands by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3694](https://redirect.github.com/dragonflydb/dragonfly/pull/3694) - chore: enable ReplyGuard in ReplyBuilder2 by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3705](https://redirect.github.com/dragonflydb/dragonfly/pull/3705) - tests: fix and enable s3 snapshot test by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3720](https://redirect.github.com/dragonflydb/dragonfly/pull/3720) - fix(json_family): Fix JSON.ARRPOP command in legacy mode should not return WRONGTYPE error by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3683](https://redirect.github.com/dragonflydb/dragonfly/pull/3683) - fix(json_family): Separate double and int values during the comparison of the JSON objects by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3711](https://redirect.github.com/dragonflydb/dragonfly/pull/3711) - fix: Fix test `test_client_pause_with_replica` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3729](https://redirect.github.com/dragonflydb/dragonfly/pull/3729) - fix: Fix `cluster_mgr.py` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3730](https://redirect.github.com/dragonflydb/dragonfly/pull/3730) - fix: Fix `test_take_over_seeder` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3733](https://redirect.github.com/dragonflydb/dragonfly/pull/3733) - chore: Remove ReqSerializer by [@​dranikpg](https://redirect.github.com/dranikpg) in [https://github.com/dragonflydb/dragonfly/pull/3721](https://redirect.github.com/dragonflydb/dragonfly/pull/3721) - fix(json_family): Fix out of bound ranges for the JSON.ARR\* commands by [@​BagritsevichStepan](https://redirect.github.com/BagritsevichStepan) in [https://github.com/dragonflydb/dragonfly/pull/3712](https://redirect.github.com/dragonflydb/dragonfly/pull/3712) - fix: properly track json memory usage by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3641](https://redirect.github.com/dragonflydb/dragonfly/pull/3641) - test: add tests for replication by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3734](https://redirect.github.com/dragonflydb/dragonfly/pull/3734) - test: unskip test for debugging purpose by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3738](https://redirect.github.com/dragonflydb/dragonfly/pull/3738) - refactor: use CmdArgParser for XGROUP command by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3739](https://redirect.github.com/dragonflydb/dragonfly/pull/3739) - test: add test for replication deadlock on replication timeout by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3691](https://redirect.github.com/dragonflydb/dragonfly/pull/3691) - chore: Switch ports for `cluster_mgr_test.py` by [@​chakaz](https://redirect.github.com/chakaz) in [https://github.com/dragonflydb/dragonfly/pull/3741](https://redirect.github.com/dragonflydb/dragonfly/pull/3741) - chore: change log level to warning for empty keys by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3722](https://redirect.github.com/dragonflydb/dragonfly/pull/3722) - chore: add SetReplies by [@​dranikpg](https://redirect.github.com/dranikpg) in [https://github.com/dragonflydb/dragonfly/pull/3727](https://redirect.github.com/dragonflydb/dragonfly/pull/3727) - chore: introduce a Clone function for the dense set by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3740](https://redirect.github.com/dragonflydb/dragonfly/pull/3740) - chore: add missing await in test_take_over_seeder by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3744](https://redirect.github.com/dragonflydb/dragonfly/pull/3744) - fix: allow the healthcheck run in non-privileged containers as well by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3731](https://redirect.github.com/dragonflydb/dragonfly/pull/3731) - fix: add value range check for SETBIT command by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3750](https://redirect.github.com/dragonflydb/dragonfly/pull/3750) - fix: zset store conclude transaction on error by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3755](https://redirect.github.com/dragonflydb/dragonfly/pull/3755) - chore: refactor a lambda function into a named one by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3753](https://redirect.github.com/dragonflydb/dragonfly/pull/3753) - chore: fix return on bad status by [@​dranikpg](https://redirect.github.com/dranikpg) in [https://github.com/dragonflydb/dragonfly/pull/3758](https://redirect.github.com/dragonflydb/dragonfly/pull/3758) - feat(helm): add hostNetwork, topologySpreadConstraint and clusterIP su… by [@​katapultcloud](https://redirect.github.com/katapultcloud) in [https://github.com/dragonflydb/dragonfly/pull/3389](https://redirect.github.com/dragonflydb/dragonfly/pull/3389) - feat(server): introduce oom_deny_commands flag by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3718](https://redirect.github.com/dragonflydb/dragonfly/pull/3718) - feat(server): introduce rss oom limit by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3702](https://redirect.github.com/dragonflydb/dragonfly/pull/3702) - fix: test deadlock with processing the stdout of sed by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3735](https://redirect.github.com/dragonflydb/dragonfly/pull/3735) - chore: add integrity checks to consumer->pel by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3754](https://redirect.github.com/dragonflydb/dragonfly/pull/3754) - fix: make snapshotting process more responsive by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3759](https://redirect.github.com/dragonflydb/dragonfly/pull/3759) - fix: tune test_replicaof_reject_on_load parameters by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3762](https://redirect.github.com/dragonflydb/dragonfly/pull/3762) - chore: logs on assert fail for test_acl_cat_commands_multi_exec_squash by [@​kostasrim](https://redirect.github.com/kostasrim) in [https://github.com/dragonflydb/dragonfly/pull/3749](https://redirect.github.com/dragonflydb/dragonfly/pull/3749) - chore: add more error logs around ziplist parsing checks by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3764](https://redirect.github.com/dragonflydb/dragonfly/pull/3764) - fix: substr/getrange result for invalid range by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3766](https://redirect.github.com/dragonflydb/dragonfly/pull/3766) - feat(zset_family): add ZRANGESTORE by [@​andydunstall](https://redirect.github.com/andydunstall) in [https://github.com/dragonflydb/dragonfly/pull/3757](https://redirect.github.com/dragonflydb/dragonfly/pull/3757) - fix server: fix last error reply by [@​adiholden](https://redirect.github.com/adiholden) in [https://github.com/dragonflydb/dragonfly/pull/3728](https://redirect.github.com/dragonflydb/dragonfly/pull/3728) - chore: give up on InlinedVector due to spurious warnings with optional by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3765](https://redirect.github.com/dragonflydb/dragonfly/pull/3765) - fix: mark pubusb commands as unsupported for cluster by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3767](https://redirect.github.com/dragonflydb/dragonfly/pull/3767) - chore: some renames + fix a typo in RETURN_ON_BAD_STATUS by [@​romange](https://redirect.github.com/romange) in [https://github.com/dragonflydb/dragonfly/pull/3763](https://redirect.github.com/dragonflydb/dragonfly/pull/3763) - fix: setrange with empty value doesn't modify the DB by [@​BorysTheDev](https://redirect.github.com/BorysTheDev) in [https://github.com/dragonflydb/dragonfly/pull/3771](https://redirect.github.com/dragonflydb/dragonfly/pull/3771) ##### New Contributors - [@​howjmay](https://redirect.github.com/howjmay) made their first contribution in [https://github.com/dragonflydb/dragonfly/pull/3655](https://redirect.github.com/dragonflydb/dragonfly/pull/3655) - [@​katapultcloud](https://redirect.github.com/katapultcloud) made their first contribution in [https://github.com/dragonflydb/dragonfly/pull/3389](https://redirect.github.com/dragonflydb/dragonfly/pull/3389) ##### Huge thanks to all the contributors! ❤️ **Full Changelog**: dragonflydb/dragonfly@v1.22.0...v1.23.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://redirect.github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC45NC4zIiwidXBkYXRlZEluVmVyIjoiMzguOTQuMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciJdfQ==-->
fixes: #3747
the problem was that we processed all incorrect values for the SETBIT command as 1
fix: return error if value for SETBIT is not 0 or 1
also added a helper type FInt for CmdArgParser that can validate a numerical range