Skip to content

Releases: memiiso/debezium-server-iceberg

Release latest

26 Apr 17:20
bbd18e4
Compare
Choose a tag to compare
Release latest Pre-release
Pre-release

Release latest

Release 0.9.0.Final

25 Apr 17:07
14686ad
Compare
Choose a tag to compare

Notable changes

NOTE: Please be aware that these modifications may affect backward compatibility. Thorough testing is strongly recommended before deployment.

This release includes several updates, including an upgrade to Apache Iceberg 1.8.1 and Debezium 3.1.1.Final, the addition of support for Iceberg decimals, and a change in how data de-duplication is handled in upsert mode.

  • Upgraded Apache Iceberg to 1.8.1: This brings the latest features, performance improvements, and bug fixes from the Iceberg project.
  • Upgraded Debezium to 3.1.1.Final: This incorporates the latest updates and improvements from the Debezium project.
  • Added support for Iceberg decimals: Users can now correctly handle decimal data types when writing to Iceberg tables.
  • Enabled usage as a Maven dependency: The project can now be easily integrated into other Maven projects using the flatten-maven-plugin.
  • Switched to __source_ts_ns for upsert de-duplication: Data de-duplication in upsert mode now relies on the __source_ts_ns field. Be aware that this change may affect existing upsert configurations and data consistency if not accounted for.
  • Improved Docker build process: The Docker build now correctly reflects the release version.
  • Fixed deserializer usage: Corrected the deserializer used, resolving a potential issue.
  • Published documentation to GitHub Pages: Project documentation is now available on GitHub Pages.

What's Changed

  • Bump org.apache.iceberg:iceberg-bom from 1.7.1 to 1.8.1 by @dependabot in #529
  • Bump io.debezium:debezium-build-parent from 3.1.0.Alpha2 to 3.1.0.Beta1 by @dependabot in #532
  • Bump version.debezium from 3.1.0.Alpha2 to 3.1.0.Beta1 by @dependabot in #533
  • Bump version.debezium from 3.1.0.Beta1 to 3.1.0.CR1 by @dependabot in #534
  • Bump io.debezium:debezium-build-parent from 3.1.0.Beta1 to 3.1.0.CR1 by @dependabot in #535
  • Add support for Iceberg decimals by @zilder in #537
  • Utilize flatten-maven-plugin to allow debezium-server-iceberg to be used as a maven dependency by @matthewmcnew in #538
  • Fix docker build should reflect release version by @ismailsimsek in #539
  • Bump io.debezium:debezium-build-parent from 3.1.0.CR1 to 3.1.0.Final by @dependabot in #542
  • Bump version.debezium from 3.1.0.CR1 to 3.1.0.Final by @dependabot in #541
  • Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.5.2 to 3.5.3 by @dependabot in #536
  • Bump org.testcontainers:testcontainers-bom from 1.20.5 to 1.20.6 by @dependabot in #530
  • Bump io.smallrye:jandex-maven-plugin from 3.2.7 to 3.3.0 by @dependabot in #540
  • Switch using __source_ts_ns for data de-duplicatinon, for upsert mode by @ismailsimsek in #546
  • Revert "Bump io.smallrye:jandex-maven-plugin from 3.2.7 to 3.3.0" by @ismailsimsek in #547
  • Publish coumentation to github pages by @ismailsimsek in #551
  • Fix, Use correct deserializer by @ismailsimsek in #552
  • Bump io.debezium:debezium-build-parent from 3.1.0.Final to 3.1.1.Final by @dependabot in #556
  • Bump version.debezium from 3.1.0.Final to 3.1.1.Final by @dependabot in #555
  • Bump org.testcontainers:testcontainers-bom from 1.20.6 to 1.21.0 by @dependabot in #554

New Contributors

Full Changelog: 0.9.0.Alpha...0.9.0.Final

Release 0.9.0.Alpha

27 Feb 15:39
15d55b2
Compare
Choose a tag to compare

Notable changes

This release introduces several enhancements and fixes across various areas.

  • Enhanced Packaging and Licensing:
    • Maven packaging artifacts are now published to GitHub Packages, ensuring improved distribution and compliance.
    • Packaging has been enhanced with the inclusion of comprehensive third-party licenses.
  • Dependency Upgrades and Removals:
    • Debezium has been upgraded to version 3.1.0.Alpha2.
    • Hadoop and PostgreSQL dependencies have been removed, streamlining the project.
  • Simplified Configuration Management:
    • Configuration access and management have been centralized through a dedicated config class, utilizing Quarkus ConfigMapping.
  • Improved Data Type Handling:
    • Enhanced data type handling now supports datetime, timestamp, and date formats. (When time.precision.mode is not dynamic) The connector accurately converts these data types to their Iceberg equivalents.
  • Optimized Default Configuration for Iceberg Consumer:
    • Default configuration values have been optimized for the Iceberg consumer, incorporating recommended Debezium settings. These settings are now applied by default.
      • Default time.precision.mode changed to isostring.
      • Default decimal.handling.mode changed to double.
      • debezium.transforms is now set to unwrap with preconfigured unwrap settings. See default values for details. To disable it set debezium.transforms=,

NOTE: Please be aware that these modifications may affect backward compatibility. Thorough testing is strongly recommended before deployment.

What's Changed

New Contributors

Full Changelog: 0.8.2.Final...0.9.0.Alpha

Release 0.8.2.Final

31 Jan 15:24
bd352ec
Compare
Choose a tag to compare

Release 0.8.2.Final

Notable changes

  • Debezium upgraded to 3.0.7.Final
  • Quarkus and other dependency versions are aligned to upstream Debezium
  • Various code improvements added around: python package, java testing and "schema change topic" handling

What's Changed

New Contributors

Full Changelog: 0.8.1.Final...0.8.2.Final

Release 0.8.1.Final

18 Dec 10:32
f6146dc
Compare
Choose a tag to compare

Release 0.8.1.Final

What's Changed

  • Bump version.debezium from 2.7.3.Final to 2.7.4.Final by @dependabot in #448
  • Revert Quarkus to a Debezium compatible version by @panga in #447
  • Align groovy dependency with Debezium. Update It to 4.0.17 and switch to new artifact org.apache.groovy by @ismailsimsek in #449
  • Upgrade jackson from 2.14.2 to 2.16.2, align with Debezium by @ismailsimsek in #451
  • Upgrade iceberg from 1.7.0 to 1.7.1 by @ismailsimsek in #452

New Contributors

Full Changelog: 0.8.0.Final...0.8.1.Final

Release 0.8.0.Final

03 Dec 00:46
de798ce
Compare
Choose a tag to compare
Release 0.8.0.Final Pre-release
Pre-release

Release 0.8.0.Final

Release 0.7.0.Final

08 Sep 12:53
Compare
Choose a tag to compare
  • Debezium: 2.7.2.Final
  • Apache Iceberg: 1.6.1
  • Quarkus: 3.13.3

Breaking Changes

Equality deletes:

  • Now Equality delete files are containing key fields only and they are written with record projection. Now delete files only includes key files, previously delete files were including full delete record.

Notable changes

  • Various code improvement added. Now code base is more closely aligned with upstream iceberg-kafka-connect
  • Now size of the files generated is defined write.target-file-size-bytes config, previously Long.MAX_VALUE was used
  • Iceberg upgraded from 1.6.0 to 1.6.1
  • Debezium upgraded from 2.7.0.Final to 2.7.2.Final
  • Quarkus upgraded from 3.13.0 to 3.13.3

What's Changed

Full Changelog: 0.6.0.Final...0.7.0.Final

Release 0.6.0.Final

03 Aug 12:47
54a0783
Compare
Choose a tag to compare
  • Debezium: 2.7.0.Final
  • Apache Iceberg: 1.6.0
  • Quarkus: 3.13.0

Notable changes

  • new config added to control casing of iceberg table names. To change tables names uppercase or lowercase folloing configuration properties could be used, see documentation. debezium.sink.iceberg.destination-uppercase-table-names=true or debezium.sink.iceberg.destination-lowercase-table-names=true
  • Quarkus upgraded from 3.12.x to 3.13.x, See Quarkus release notes here

What's Changed

  • Add option to change case of destination/iceberg table names by @ismailsimsek in #389
  • Bump version.quarkus from 3.12.3 to 3.13.0 by @dependabot in #392
  • Bump org.apache.maven.plugins:maven-failsafe-plugin from 3.2.5 to 3.3.1 by @dependabot in #395
  • Bump org.apache.maven.plugins:maven-surefire-plugin from 3.3.0 to 3.3.1 by @dependabot in #394
  • Bump io.smallrye:jandex-maven-plugin from 3.2.0 to 3.2.1 by @dependabot in #393

Full Changelog: 0.5.0.Final...0.6.0.Final

Release 0.5.0.Final

24 Jul 13:56
623377d
Compare
Choose a tag to compare
  • Debezium: 2.7.0.Final
  • Apache Iceberg: 1.6.0
  • Quarkus: 3.12.3

What's Changed

Full Changelog: 0.5.0.Beta...0.5.0.Final

Release 0.5.0.Beta

28 Jun 14:17
2957e3b
Compare
Choose a tag to compare
  • Debezium: 2.7.0.Final
  • Apache Iceberg: 1.5.2
  • Quarkus: 3.10.0

Breaking Changes

Debezium version upgraded from 2.5.x to 2.7.x:

IcebergSchemaHistory wrong table location corrected:

IcebergSchemaHistory class was using wrong table namespace {catalog-name}.{table-name} now this is corrected to use {table-namespace}.{table-name}
If you were using different catalog-name please follow following steps for migration

  1. stop debezium server
  2. copy the IcebergSchemaHistory table to new location: {table-namespace}.{table-name}
  3. start debezium server

Configuration change:

Configuration option debezium.sink.iceberg.upsert-op-column, defaultValue = __op is removed.

Notable changes

  • Quarkus upgraded from 3.6.x to 3.10.x, See Quarkus release notes here
  • Java release target upgraded from 11 to 17
  • Full support for debezium nested events added. Now its possible to run consumer without event flattening.
  • Debezium event processing improved, unnecessary schema de-serialization is avoided.

What's Changed

Full Changelog: 0.4.0.Final...0.5.0.Beta