Skip to content

Conversation

@htemelski-redis
Copy link
Contributor

Added support for the new ft.hybrid command.
Test are adapted version of the redis-py tests redis/redis-py#3813

ofekshenawa and others added 8 commits November 10, 2025 09:26
* Add support for XReadGroup CLAIM argument

* modify tutorial tests

---------

Co-authored-by: Nedyalko Dyakov <1547186+ndyakov@users.noreply.github.com>
* feat: add acl support and command test

* validate client name before kill it

---------

Co-authored-by: Nedyalko Dyakov <1547186+ndyakov@users.noreply.github.com>
Co-authored-by: Nedyalko Dyakov <1547186+ndyakov@users.noreply.github.com>
* improvements

* linter fixes

* prevention on unnecessary allocations in case of bad configuration

* Test/Benchmark, old code with safety harness preventing panic

---------

Co-authored-by: manish <manish.sharma@manifestit.io>
Co-authored-by: Nedyalko Dyakov <1547186+ndyakov@users.noreply.github.com>
* support for latency command

* add NonRedisEnterprise label for latency test
* Add support for certain slowlog commands

* add NonRedisEnterprise label for slow reset test

---------

Co-authored-by: Nedyalko Dyakov <1547186+ndyakov@users.noreply.github.com>
* add cas/cad commands

* feat(command): Add SetIFDEQ, SetIFDNE and *Get cmds

Decided to move the *Get argument as a separate methods, since the
response will be always the previous value, but in the case where
the previous value is `OK` there result may be ambiguous.

* fix tests

* matchValue to be interface{}

* Only Args approach for DelEx

* use uint64 for digest, add example

* test only for 8.4
Copy link
Member

@ndyakov ndyakov left a comment

Choose a reason for hiding this comment

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

left couple comments, other than that lgtm.

Comment on lines +2586 to +2589
for _, field := range options.Load {
// Redis requires field names in LOAD to be prefixed with '@' (or '$' for JSON paths).
// Tests pass plain field names (e.g. "description"), so add the '@' prefix here.
args = append(args, "@"+field)
Copy link
Member

Choose a reason for hiding this comment

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

shoudn't the user decide if he/she would like to use plain fields or json paths? hence we should not prefix, but the user should pass @field or $path.name ?

Comment on lines +2616 to +2618
if fieldName != "" && fieldName[0] != '@' && fieldName[0] != '$' {
fieldName = "@" + fieldName
}
Copy link
Member

Choose a reason for hiding this comment

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

similar here, we are checking if there is a prefix, we can do the same for load. yes, it makes some sense to autoprefix @ if there is no prefix, but this is debatable. how are other clients handling this?

type FTHybridVectorExpression struct {
VectorField string
VectorData Vector
Method string // KNN or RANGE
Copy link
Member

Choose a reason for hiding this comment

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

should we have those KNN and RANGE defined?

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.

6 participants