Redpanda Connect v4.99.0 - Iceberg and CDC Changes


Redpanda Connect v4.99.0 was published on July 2, 2026, with the largest operator impact in Iceberg output and CDC connector state. The release adds Iceberg row level insert, upsert, and delete handling, then fills gaps in DynamoDB, Oracle, and Postgres CDC metadata that matter when pipelines need replayable change history. The release is not marked as a prerelease.

The full release notes and downloads are on the GitHub release page.

The Iceberg output is the most visible data lake change in v4.99.0. It now supports row level operations for insert, upsert, and delete workloads, with configurable mappings and equality-delete files.

For append only lake writes, this does not change much. For mutable tables, it changes the contract. Pipelines can express data changes as operations instead of forcing every consumer to infer state from append streams. That is useful for CDC fanout into Iceberg, late arriving corrections, and tables where deletes need to be represented in the lake, not only in an upstream log.

The release notes do not describe a full migration model for existing Iceberg jobs. Treat this as a connector behavior change that deserves a staging run with real keys, delete cases, and partition layout before it lands in production paths.

DynamoDB CDC in aws_dynamodb_cdc now supports Global Tables for checkpoint tables. The practical result is multi region failover with shard checkpoints replicated across regions. For a pipeline that has an RPO target tied to CDC position, checkpoint replication is more important than generic process restart health.

Oracle CDC gets two changes. oracledb_cdc adds snapshot_only through the new snapshot_mode enum, and Oracle snapshot reads now emit commit_ts_ms metadata captured from SYSTIMESTAMP. That timestamp gives downstream jobs a consistent field for ordering and audit trails when snapshot records enter the same processing path as live events.

Postgres CDC adds before metadata for update and delete events. This is the change that many audit, mirror, and search indexing pipelines need. A delete is no longer just the absence of a future row. The event can carry previous values, which makes downstream compaction and external index cleanup less dependent on a side lookup.

The Oracle LOB fix is narrow but operationally relevant. oracledb_cdc now handles out of order LOB writes by deferring and replaying them at commit time. That points at a class of bugs where the event stream is present, but large object fields arrive in an order that can corrupt or drop the payload if the connector assumes linear write order.

The Salesforce sink fix changes the writable field set and field cache behavior. Createable fields are included correctly, and the field cache is operation aware. That matters for sink jobs that mix create and update flows, where cached metadata can otherwise make an allowed write look invalid.

Kafka path logging also moves in a better direction for operators. Broker connection, read, and write failures from the franz-go client, including i/o timeout, are now logged at WARN. The emissions are throttled per broker and apply across franz based connectors such as kafka_franz, redpanda, and redpanda_migrator. Alerting on broker trouble no longer requires debug logging, which is the right default for production jobs with noisy network edges.

For Oracle CDC users, the config item to review is snapshot_mode. The release notes say snapshot_only is now supported through that enum, replacing the deprecated boolean stream_snapshot option. Existing configs that still carry stream_snapshot should be scheduled for cleanup before the deprecated path is removed in a later release.

For Iceberg users, the risk is semantic rather than syntax. Row level operations need a key model that matches the table and the downstream query plan. Validate insert, upsert, and delete mappings against existing consumers, especially if compaction or retention jobs expect append only files.