Release Notes for Debezium 3.2
All notable changes for Debezium releases are documented in this file. Release numbers follow Semantic Versioning.
Release 3.2.0.Alpha1 (April 29th 2025)
See the complete list of issues.
Kafka compatibility
This release has been built against Kafka Connect 4.0.0 and has been tested with version 4.0.0 of the Kafka brokers. See the Kafka documentation for compatibility with other versions of Kafka brokers.
Upgrading
Before upgrading any connector, be sure to check the backward-incompatible changes that have been made since the release you were using.
When you decide to upgrade one of these connectors to 3.2.0.Alpha1 from any earlier versions, first check the migration notes for the version you’re using. Gracefully stop the running connector, remove the old plugin files, install the 3.2.0.Alpha1 plugin files, and restart the connector using the same configuration. Upon restart, the 3.2.0.Alpha1 connectors will continue where the previous connector left off. As one might expect, all change events previously written to Kafka by the old connector will not be modified.
If you are using our container images, then please do not forget to pull them fresh from Quay.io.
Breaking changes
Oracle connector requires a special configuration when JKS is used for TLS connections. This is now properly documented (DBZ-8788).
Debezium is now built and tested with Kafka 4.0 (DBZ-8875).
When previous version of Debezium IBMi connector missed journal file it resumed reading from the next available. This could lead to silent data loss. The behaviour was changed and now connector throws an error (DBZ-8898).
New features
-
Pass connector configuration to Column/Table naming strategies DBZ-7051
-
Support BOOLEAN DBZ-7796
-
Add decimal handling mode support to IBMi connector DBZ-8301
-
Option to add new Transform from the UI and ability to pass transform in Pipeline DBZ-8328
-
Prevent write operations in PostgreSQL in read-only mode. DBZ-8743
-
The method removeTransactionEventWithRowId creates high CPU load in certain scenarios DBZ-8860
-
Log JMX MBean name when registration fails due to name conflict DBZ-8862
-
HistorizedRelationalDatabaseConnectorConfig#getHistoryRecordComparator() should be public for external use. DBZ-8868
-
Improve MySQL/MariaDB connector resilience during post-schema recovery reconnect DBZ-8877
-
Fix performance regression in debezium-core DBZ-8879
-
Expose option to reset (streaming) metrics individually DBZ-8885
-
Raise more meaningful exception in case of inconsistent post processor config DBZ-8901
-
Allow filtering Oracle LogMiner results by client id DBZ-8904
-
Allow timeout to be configured for Ollama embedding model DBZ-8908
-
Allow unwinding of JSON datatype in Milvus sink DBZ-8909
-
Add configuration to skip heartbeat messages in Redis Stream consumer DBZ-8911
-
Implement LogMiner committed data only unbuffered adapter DBZ-8924
-
Improve lookup performance for the Oracle ObjectId cache when using the Hybrid mining strategy DBZ-8925
-
Exclude unknown tables when query filter is enabled and using a non-Hybrid strategy DBZ-8926
-
ArrayIndexOutOfBoundsException in Cassandra Connector’s FieldFilterSelector when parsing field exclude list DBZ-8933
-
Improve log message when failing to apply a partial rollback DBZ-8944
-
[Doc] Apicurio registry configuration should include instructions for confluent compatibility mode DBZ-8945
-
passing topic name as well in error in case a single connector is configured with multiple topics DBZ-8946
-
add polling_tasks connector callback in asyncEmbeddedEngine DBZ-8948
Fixes
-
duplicate change events on ibmi connector DBZ-8214
-
heartbeat.interval.ms not honored DBZ-8551
-
Incorrect NumberOfEventsFiltered metrics in streaming DBZ-8576
-
Signal table column names are arbitrary, but delete strategy expects column named id DBZ-8723
-
DB2 Signaling creates watermarking in the wrong schema DBZ-8833
-
Debezium Server keeps up after timeout on Pulsar and Postgres disconnection (Outbox Pattern) DBZ-8843
-
When using the Oracle relaxed SQL parser setup, strings with apostrophe followed by comma are trimmed DBZ-8869
-
Oracle Ehcache buffer will silently evict entries when configured size limits are reached DBZ-8874
-
Transaction events are not removed when transaction event count over threshold DBZ-8880
-
InstructLabIT can randomly fail due to file read/write race condition between threads DBZ-8883
-
Setting Oracle buffer type to an unsupported/invalid value is not validated properly DBZ-8886
-
Oracle timestamp columns are ignored when temporal mode set to ISOSTRING DBZ-8889
-
Kinesis Connector does not send failed records during retry, it sends records in original batch DBZ-8893
-
DDL parsing fails on "BY USER FOR STATISTICS" virtual column clause DBZ-8895
-
Postgres CapturedTables metric isn’t populated. DBZ-8897
-
FieldToEmbedding SMT fails with NPE for delete records DBZ-8907
-
FieldToEmbedding SMT crashes when source field name is substring of embedding name DBZ-8910
-
Setting continuous mining for Oracle 18 or later causes NPE DBZ-8919
-
Improve performance by removing unnecessary filter check DBZ-8921
-
NullPointerException happens when a transaction commits that is unknown to the connector DBZ-8929
-
Async engine doesn’t termiate gracefully upon StopEngineException DBZ-8936
-
Processing error because of incomplete date part of DATETIME datatype in MariaDB DBZ-8940
-
ORA-08186 invalid timestamp specified occurs when connector is started DBZ-8943
-
GracefulRestartIT fails after Kafka upgrade DBZ-8947
-
Unable to delete DS resource after a pipeline has been delete DBZ-8970
-
Multiple Predicates Don’t Function with the Operator API DBZ-8975
Other changes
-
Document Debezium Storage modules DBZ-6532
-
Review EmbeddedEngine tests DBZ-8442
-
Remove all the EmbeddedEngine remnants from the codebase DBZ-8443
-
Migrate performance microbenchmarks to async engine DBZ-8444
-
Update test suite to support ISOSTRING temporal precision mode DBZ-8574
-
Upgrade MariaDB driver to 3.5.3 DBZ-8758
-
Switch default builder facotry to async builder factory DBZ-8779
-
Update SQL Server doc to correct schema history MBean name DBZ-8840
-
Expose Oracle connector XStreams content in product edition DBZ-8841
-
Get rid of lombok from Debezium Platform/Operator DBZ-8857
-
Add Localization support to UI DBZ-8859
-
Upgrade RocketMQ version from 5.1.4 to 5.2.0 DBZ-8864
-
Bump Chicory version and take advantage of latest improvements DBZ-8867
-
Chart release pipeline doesn’t need to be run on release node DBZ-8878
-
Prefix Oracle Infinispan buffer profiles with "oracle-" DBZ-8882
-
Add scripts/procedures to creating Oracle images DBZ-8896
-
Update Outbox Extension Quarkus version to 3.21.2 DBZ-8905
-
Update to latest LTS of Quarkus 3.15.4 DBZ-8906
-
Add MariaDB download link to Installation Guide DBZ-8927
-
DebeziumServerPostgresIT shouldSnapshot randomly fails DBZ-8928
-
Remove unncessary metadata query and map fetch calls DBZ-8938
-
[Conductor] Add endpoint to verify correct setup of signal data collection DBZ-8941
-
Remove the Cassandra from the source DBZ-8952
-
Turn off opentelemetry logging in the tests DBZ-8971