Skip to content

RDI 1.19.0 release notes#3635

Merged
andy-stark-redis merged 4 commits into
mainfrom
RDSC-5718-rdi-1.19.0-release-notes
Jul 15, 2026
Merged

RDI 1.19.0 release notes#3635
andy-stark-redis merged 4 commits into
mainfrom
RDSC-5718-rdi-1.19.0-release-notes

Conversation

@ZdravkoDonev-redis

@ZdravkoDonev-redis ZdravkoDonev-redis commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add public release notes for RDI 1.19.0.
  • Cover the new redis-di CLI, Flink processor outputs and VM support, Snowflake improvements, compatibility notes, and fixes.
  • Continue the release-note ordering with weight 969 for July 2026.

The content was generated from the RDI CHANGELOG.md and sanitized for public documentation. Items already published in the RDI 1.18.x notes were not repeated.

Jira: RDSC-5718

Release workflow: https://github.com/RedisLabs/redis-data-integration/actions/runs/29347949978


Note

Low Risk
Documentation and config param only; no application or runtime code changes.

Overview
Publishes RDI 1.19.0 (July 2026) release notes and sets site-wide rdi_current_version from 1.18.1 to 1.19.0 in config.toml.

The new page rdi-1-19-0.md documents compatibility changes (unified Flink JSON merge null handling; retirement of redis/rdi-cli and rdi-secret.sh in favor of redis-di), major additions (Go-based redis-di CLI across VM/K8s/Redis Cloud, Flink outputs for strings/sets/sorted sets/streams, Snowflake keys/columns and encrypted keypairs, offline installer Flink images, API v2 status/metadata improvements), and a long list of pipeline/secret/status/Flink bug fixes.

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

@github-actions

Copy link
Copy Markdown
Contributor

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

LGTM

Looks kind of perfect, except that I don't see the set and string output types for the Flink processor (and I don't find them in the 1.18.0 release notes either), so perhaps they should be added here.

Comment on lines +29 to +30
- **Redis sorted set outputs for the Flink processor**: `redis.write` outputs can use `data_type: sorted_set` with `args.member` and `args.score` to emit `ZADD` and `ZREM` commands.
- **Redis stream outputs for the Flink processor**: `redis.write` outputs can use `data_type: stream` to append each change event to a target stream with `XADD`.

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.

I don't see set and string, have they been released with a previous version? If not, they should be added.


### Compatibility Notes

- **Unified JSON merge behavior for the Flink processor**: JSON merge behavior is now the same for every supported target Redis version. Null leaf values are deleted for targets without native `JSON.MERGE` support, matching targets that support the command. This differs from the classic processor fallback behavior, which writes JSON nulls.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Suggested change
- **Unified JSON merge behavior for the Flink processor**: JSON merge behavior is now the same for every supported target Redis version. Null leaf values are deleted for targets without native `JSON.MERGE` support, matching targets that support the command. This differs from the classic processor fallback behavior, which writes JSON nulls.
- **Unified JSON merge behavior for the Flink processor**: JSON merge behavior is now the same for every supported target Redis version. Null leaf values are deleted instead of written as JSON nulls in all cases. This differs from the classic processor fallback behavior, which writes JSON nulls.

When reading this, I had a little trouble parsing what the exact relation to native json merge was. I find the suggestion above clearer, wdyt?

@andy-stark-redis andy-stark-redis 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.

Nothing critical, but there seems to be a strange hyphen epidemic going on here! Also, I've updated the config to use the new version. Otherwise, LGTM and approved.


- **Detailed source connection errors**: Source database connection failures returned by `GET /api/v2/pipelines/{name}/source-schemas/{source}` now identify the underlying cause instead of returning a generic error.
- **Merged Flink processor status**: Pipeline status and metric collection endpoints now report the Flink JobManager and TaskManager as one `flink-processor` component, with the status reflecting the least healthy part.
- **Secret updates reflected in pipeline status**: After a source or target database secret changes, the pipeline remains not current and non-terminal until all consuming components have restarted with the new secret.

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.

Seems a bit sharper.

Suggested change
- **Secret updates reflected in pipeline status**: After a source or target database secret changes, the pipeline remains not current and non-terminal until all consuming components have restarted with the new secret.
- **Secret updates reflected in pipeline status**: After a source or target database secret changes, the pipeline remains non-current and non-terminal until all consuming components have restarted with the new secret.


### Bug Fixes

- Support-package logs now retain structured key-value parameters, including operator reconciliation context.

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.

It seems to have got a bit carried away with all these hyphens!

Suggested change
- Support-package logs now retain structured key-value parameters, including operator reconciliation context.
- Support package logs now retain structured key-value parameters, including operator reconciliation context.

- Nested JSON outputs now apply MongoDB `$unset` removals during updates instead of leaving stale fields in the parent JSON document.
- Rotating target database passwords or TLS certificates no longer restarts the RDI API.
- Pipeline status no longer remains on a completed user-requested operation when a later runtime issue moves the pipeline to `pending`.
- Deployments no longer briefly report secret-provider configuration errors while the Secrets Store CSI driver mounts volumes. Mount warnings are reported only when the failure persists for at least 30 seconds.

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.

Suggested change
- Deployments no longer briefly report secret-provider configuration errors while the Secrets Store CSI driver mounts volumes. Mount warnings are reported only when the failure persists for at least 30 seconds.
- Deployments no longer briefly report secret provider configuration errors while the Secrets Store CSI driver mounts volumes. Mount warnings are reported only when the failure persists for at least 30 seconds.

Comment on lines +54 to +55
- Source table and column names containing Java regular-expression characters are now escaped correctly during schema introspection.
- Flink processor JSON writes to a key holding a non-JSON value are now rejected to the dead-letter queue instead of leaving the batch pending.

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.

Suggested change
- Source table and column names containing Java regular-expression characters are now escaped correctly during schema introspection.
- Flink processor JSON writes to a key holding a non-JSON value are now rejected to the dead-letter queue instead of leaving the batch pending.
- Source table and column names containing Java regular expression characters are now escaped correctly during schema introspection.
- Flink processor JSON writes to a key holding a non-JSON value are now rejected to the dead letter queue instead of leaving the batch pending.


### New Features

- **New `redis-di` CLI**: The `redis-di` command-line tool has been rewritten in Go as a thin client for the RDI REST API. It works across VM, Kubernetes (Helm), and Redis Cloud installations and supports multiple pipelines and both processor types. It provides create, read, update, and delete operations for pipelines and secrets; commands for dead-letter queues, jobs, and metric collections; and table, JSON, or YAML output. Authentication options include user and password credentials, Redis Cloud account and user keys, or no credentials when API authentication is disabled. Self-contained binaries are available for Linux, macOS, and Windows, and Linux binaries are included in the VM installer.

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.

Suggested change
- **New `redis-di` CLI**: The `redis-di` command-line tool has been rewritten in Go as a thin client for the RDI REST API. It works across VM, Kubernetes (Helm), and Redis Cloud installations and supports multiple pipelines and both processor types. It provides create, read, update, and delete operations for pipelines and secrets; commands for dead-letter queues, jobs, and metric collections; and table, JSON, or YAML output. Authentication options include user and password credentials, Redis Cloud account and user keys, or no credentials when API authentication is disabled. Self-contained binaries are available for Linux, macOS, and Windows, and Linux binaries are included in the VM installer.
- **New `redis-di` CLI**: The `redis-di` command line tool has been rewritten in Go as a thin client for the RDI REST API. It works across VM, Kubernetes (Helm), and Redis Cloud installations and supports multiple pipelines and both processor types. It provides create, read, update, and delete operations for pipelines and secrets; commands for dead letter queues, jobs, and metric collections; and table, JSON, or YAML output. Authentication options include user and password credentials, Redis Cloud account and user keys, or no credentials when API authentication is disabled. Self-contained binaries are available for Linux, macOS, and Windows, and Linux binaries are included in the VM installer.

- **Pipeline metadata revision and tags**: Pipeline `config.metadata` now accepts an optional non-negative `revision` and up to 50 unique slug-like `tags`, each up to 50 characters long.
- **Redis sorted set outputs for the Flink processor**: `redis.write` outputs can use `data_type: sorted_set` with `args.member` and `args.score` to emit `ZADD` and `ZREM` commands.
- **Redis stream outputs for the Flink processor**: `redis.write` outputs can use `data_type: stream` to append each change event to a target stream with `XADD`.
- **Flink processor support in offline VM installations**: The offline VM installation package now includes the Flink processor and metrics aggregator images. The installer disk-space requirement has increased to account for the additional images.

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.

Suggested change
- **Flink processor support in offline VM installations**: The offline VM installation package now includes the Flink processor and metrics aggregator images. The installer disk-space requirement has increased to account for the additional images.
- **Flink processor support in offline VM installations**: The offline VM installation package now includes the Flink processor and metrics aggregator images. The installer disk space requirement has increased to account for the additional images.

@andy-stark-redis andy-stark-redis merged commit 5f480ea into main Jul 15, 2026
78 checks passed
@andy-stark-redis andy-stark-redis deleted the RDSC-5718-rdi-1.19.0-release-notes branch July 15, 2026 11:43
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.

4 participants