Skip to content

Add support for FPHA argument with JSON.SET (Redis 8.8) - #4478

Merged
uglide merged 15 commits into
redis:masterfrom
atakavci:ali/json.set.fpha
May 15, 2026
Merged

uglide merged 15 commits into
redis:masterfrom
atakavci:ali/json.set.fpha

Conversation

@atakavci

@atakavci atakavci commented Apr 1, 2026 •

Copy link
Copy Markdown
Contributor

Introducing FPHA argument into JsonSetParams,
enabling the use of storage type;
JSON.SET key path value [NX | XX] [FPHA BF16|FP16|FP32|FP64]
FPHA BF16|FP16|FP32|FP64 - (FP Homogeneous Array) force Redis to use the specified FP type for storing all FP arrays in value.
See RedisJSON pr for more info.


Note

Low Risk
Additive support for a new RedisJSON argument with accompanying tests; low risk aside from potential incompatibility when used against Redis versions that don’t support FPHA.

Overview
Adds RedisJSON JSON.SET support for the new FPHA argument (Redis 8.8+), exposing JsonSetParams.fp16(), bf16(), fp32(), and fp64() to force the floating-point array storage type.

Updates protocol keywords to include FPHA, switches JsonSetParams to use Protocol.Keyword constants for NX/XX, and adds/extends tests (including version-gated parameterized coverage) to validate argument encoding and interactions. Also updates CommandArgumentsMatchers with a new containsArguments(...) helper and ensures the new JsonSetParamsTest is picked up by the formatter config.

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

@atakavci
atakavci requested review from a-TODO-rov and ggivo April 1, 2026 10:27
@atakavci atakavci self-assigned this Apr 1, 2026
@atakavci
atakavci force-pushed the ali/json.set.fpha branch from 864ab73 to 8aea2f7 Compare April 1, 2026 11:23
@atakavci
atakavci requested a review from ggivo April 3, 2026 09:17

@uglide uglide left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Added integration tests are failing on 8.8

@atakavci
atakavci requested a review from uglide April 24, 2026 10:03
Co-authored-by: Igor Malinovskiy <u.glide@gmail.com>
ggivo
ggivo previously approved these changes May 5, 2026

@ggivo ggivo left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM

@cursor cursor 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.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Reviewed by Cursor Bugbot for commit 1e4c998. Configure here.

@uglide
uglide merged commit 76ab317 into redis:master May 15, 2026
17 checks passed
@ggivo ggivo added this to the 8.0.0 milestone May 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants