It’s my pleasure to announce the release of Debezium 1.5.0.CR1!

As we begin moving toward finalizing the Debezium 1.5 release stream, the Oracle connector has been promoted to stable and there were some TLS improvements for the Cassandra connector, as well as numerous bugfixes. Overall, 50 issues have been addressed for this release.

Oracle connector now stable

The Oracle connector has been in incubating status for a while but recent efforts have helped to bring new features and stability to the connector. We felt at this point, the connector is ready so with this release we’re officially promoting the Oracle connector from incubating to stable.

A tremendous effort by the community has made all this possible. The numerous contributions, bug reports, and testing has helped so much! The team and I cannot thank the community enough for all its insight, help, and dedication in making this milestone a reality so quickly!

Cassandra connector TLS improvements

The Cassandra connector uses the defaut available ciphers to establish SSL connections. For most use cases, this is more than satisfactory; however it does prevent the use of non-standard ciphers. In this release, the Cassandra connector property file can be configured to specify a list of ciphers in precedence order for use.

To use this new feature, add a line to the connector’s property file like below:

cipherSuites=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

Bugfixes

A number of bugs were fixed in this release, e.g.:

  • Debezium logs "is not a valid Avro schema name" can be too verbose DBZ-2511

  • message.key.columns Regex Validation Time Complexity DBZ-2957

  • OID values don’t fit to INT32 schema DBZ-3033

  • Connector automatically restart on ORA-26653 DBZ-3236

  • UI container has no assets (JS artifacts, fonts, etc) and randomly fails building DBZ-3247

  • Revert Clob behavior for Oracle LogMiner to avoid null values DBZ-3257

  • SQL Server misses description for decimal.handling.mode DBZ-3267

  • Oracle connector ignores time.precision.mode and just uses adaptive mode DBZ-3268

  • commons-logging JAR is missing from Debezium Server distro DBZ-3277

  • MongoDB timeouts crash the whole connector DBZ-3278

  • Prefer archive logs over redo logs of the same SCN range DBZ-3292

  • LogMiner mining query may unintentionally skip records DBZ-3295

  • IndexOutOfBoundsException when LogMiner DML update statement contains a function as last column’s value DBZ-3305

  • Out of memory with mysql snapshots (regression of DBZ-94 DBZ-3309

  • Keyword ORDER is a valid identifier in MySQL grammar DBZ-3310

  • DDL statement couldn’t be parsed for ROW_FORMAT=TOKUDB_QUICKLZ DBZ-3311

  • LogMiner can miss a log switch event if too many switches occur. DBZ-3319

  • Function MOD is missing from MySQL grammar DBZ-3333

  • Incorrect SR label names in OCP testusite DBZ-3336

  • DB2 upstream tests are still using master as the default branch DBZ-3337

As always, please refer to the release notes for the complete list of resolved issues as well as procedures for upgrading to earlier Debezium versions.

A big thank you to all the contributors from the community who worked on this release: Frank Koornstra and Jeremy Vigny.

Outlook

As we begin to wrap up Debezium 1.5 and barring any unforeseen regressions or bug reports, we expect Debezium 1.5 Final to be released by the end of March. Once 1.5 Final is out, we’ll begin our focus toward 1.6. We have quite a bit in store for Debezium 1.6 so stay tuned to learn what is lurking just around the corner!

Chris Cranford

Chris is a software engineer at Red Hat. He previously was a member of the Hibernate ORM team and now works on Debezium. He lives in North Carolina just a few hours from Red Hat towers.

   


About Debezium

Debezium is an open source distributed platform that turns your existing databases into event streams, so applications can see and respond almost instantly to each committed row-level change in the databases. Debezium is built on top of Kafka and provides Kafka Connect compatible connectors that monitor specific database management systems. Debezium records the history of data changes in Kafka logs, so your application can be stopped and restarted at any time and can easily consume all of the events it missed while it was not running, ensuring that all events are processed correctly and completely. Debezium is open source under the Apache License, Version 2.0.

Get involved

We hope you find Debezium interesting and useful, and want to give it a try. Follow us on Twitter @debezium, chat with us on Zulip, or join our mailing list to talk with the community. All of the code is open source on GitHub, so build the code locally and help us improve ours existing connectors and add even more connectors. If you find problems or have ideas how we can improve Debezium, please let us know or log an issue.