Skip to content

Add missing plain overloads for experimental vector-set commands - #4693

Merged
ggivo merged 22 commits into
redis:masterfrom
kalayciburak:feat/vector-set-plain-overloads
Oct 15, 2026
Merged

ggivo merged 22 commits into
redis:masterfrom
kalayciburak:feat/vector-set-plain-overloads

Conversation

@kalayciburak

@kalayciburak kalayciburak commented Aug 20, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Experimental vector-set methods that take reduceDim or return scores currently have no no-params overload, so callers have to pass null. The rest of Jedis models optional params as a plain method plus a params-taking one.

This is the additive part of #4688:

  • vadd / vaddFP32 with reduceDim and no params
  • vsimWithScores / vsimByElementWithScores with no params
  • vsimWithScoresAndAttribs / vsimByElementWithScoresAndAttribs with no params (command surfaces only; pipeline does not have those variants)

Plain overloads encode the same argv as the existing params overload with null. Null-tolerance removal is left for a follow-up.

Test plan

  • mvn -Dtest=VectorSetPlainOverloadsTest test (12/12)
  • mvn -DskipTests compile test-compile
  • mvn formatter:validate

Note

Low Risk
Additive API on experimental vector-set commands; behavior matches prior null-param calls with no breaking signature changes.

Overview
Adds parameter-free overloads for experimental vector-set commands so callers no longer need to pass null for optional VAddParams / VSimParams.

New public methods cover vadd / vaddFP32 with reduceDim, and vsim*WithScores / vsim*WithScoresAndAttribs (by vector and by element), for String and binary keys/elements. The same surface is wired through CommandObjects, Jedis, UnifiedJedis, command interfaces, and PipeliningBase (including pipeline interfaces that were missing vsim*WithScoresAndAttribs).

Existing no-params delegators in CommandObjects now forward with new VAddParams() / new VSimParams() instead of null. Integration tests use the new overloads; a mocked pipeline test class was added and documented in 8.1.0 release notes.

Reviewed by Cursor Bugbot for commit 9cf3815. Bugbot is set up for automated code reviews on this repo. Configure here.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

πŸ’‘ Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: cfc526490f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with πŸ‘.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@ggivo

ggivo commented Aug 24, 2026

Copy link
Copy Markdown
Collaborator

Thanks for the PR! I'll try to take a look once I get some free cycles. Heads up β€” I'm on vacation starting next week, so the review may take a bit longer.

@kalayciburak
kalayciburak force-pushed the feat/vector-set-plain-overloads branch from 14fc8c4 to 36d68b5 Compare September 26, 2026 06:59
Vector-set methods with REDUCE or WITHSCORES had no no-params overload,
so callers had to pass null. Add the additive overloads requested in redis#4688
on command, binary, and pipeline surfaces. Null-tolerance removal is left
for a follow-up.
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 11, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
πŸ“ Code Review βœ… Completed 2026-10-15T13:15:09.537626Z 9cf3815 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with πŸ‘€ while any review is running, comments if it has suggestions, and reacts with πŸ‘ once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

πŸ’‘ Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ddea610b48

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with πŸ‘.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

πŸ’‘ Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0eb90c6fff

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with πŸ‘.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

πŸ’‘ Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7005fd2922

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with πŸ‘.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

πŸ’‘ Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4652f0ec2f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with πŸ‘.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

πŸ’‘ Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f1b4d8b78d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with πŸ‘.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

πŸ’‘ Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 3314842933

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with πŸ‘.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

kalayciburak and others added 4 commits October 12, 2026 12:26
- Remove @experimental from implementations; the interface methods already carry it
- Move the release-notes entry out of Highlights into API Additions
- Test the plain overloads against the server in the IT base, not in a unit test
- Delegate the new plain overloads with empty params instead of null
- Delegate the existing plain overloads with empty params so redis#4688 becomes a pure removal
@ggivo
ggivo merged commit ed53dd4 into redis:master Oct 15, 2026
21 of 23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Cluster primary node map is not refreshed on slot renewal, so primary-only commands go to demoted nodes after failover

2 participants