Upgrade to Debezium 3.0.2

Fixes: https://github.com/spring-projects/spring-integration/pull/9651

* Use latest `debezium/example-mysql:3.0.0.Final` Docker image
* Fix `DebeziumBatchTests` for initial DB initialization events:
apparently new Debezium (even if it is a patch version)
does not populate headers for those events
This commit is contained in:
Artem Bilan
2024-11-19 09:41:58 -05:00
parent 49863384f8
commit 22cdc43da0
3 changed files with 3 additions and 6 deletions

View File

@@ -66,7 +66,7 @@ ext {
commonsIoVersion = '2.17.0'
commonsNetVersion = '3.11.1'
curatorVersion = '5.7.1'
debeziumVersion = '3.0.1.Final'
debeziumVersion = '3.0.2.Final'
derbyVersion = '10.16.1.1'
ftpServerVersion = '1.2.0'
graalvmVersion = '24.1.1'

View File

@@ -38,7 +38,7 @@ public interface DebeziumMySqlTestContainer {
MySQLContainer<?> DEBEZIUM_MYSQL =
new MySQLContainer<>(
DockerImageName.parse("debezium/example-mysql:2.7.0.Final")
DockerImageName.parse("debezium/example-mysql:3.0.0.Final")
.asCompatibleSubstituteFor("mysql"))
.withUsername("mysqluser")
.withPassword("mysqlpw");

View File

@@ -77,10 +77,7 @@ public class DebeziumBatchTests implements DebeziumMySqlTestContainer {
.toList();
assertThat(changeEvent.destination()).startsWith("my-topic");
if (i < 16) {
assertThat(headerKeys).hasSize(3).contains("__name", "__db", "__table");
}
else {
if (i > 15) {
assertThat(changeEvent.destination()).contains(".inventory");
assertThat(headerKeys).hasSize(4).contains("__name", "__db", "__op", "__table");
}