Debezium 2.0 版本说明
Debezium 发行的所有重要更改都记录在此文件中。发行编号遵循 语义化版本控制。
- Release 2.0.1.Final (2022 年 12 月 7 日)
- Release 2.0.0.Final (2022 年 10 月 14 日)
- Release 2.0.0.CR1 (2022 年 10 月 7 日)
- Release 2.0.0.Beta2 (2022 年 9 月 16 日)
- Release 2.0.0.Beta1 (2022 年 7 月 26 日)
- Release 2.0.0.Alpha3 (2022 年 7 月 1 日)
- Release 2.0.0.Alpha2 (2022 年 6 月 9 日)
- Release 2.0.0.Alpha1 (2022 年 4 月 28 日)
Release 2.0.1.Final (2022 年 12 月 7 日)
查看 完整问题列表。
Kafka 兼容性
此版本是针对 Kafka Connect 3.3.1 构建的,并已在 Kafka 代理版本 3.3.1 上进行了测试。有关与其他 Kafka 代理版本兼容性的信息,请参阅 Kafka 文档。
升级
在升级任何连接器之前,请务必检查自您使用的版本以来所做的向后不兼容的更改。
当您决定将这些连接器之一从任何早期版本升级到 2.0.1.Final 时,请先检查您正在使用的版本的迁移说明。正常停止运行中的连接器,删除旧的插件文件,安装 2.0.1.Final 插件文件,然后使用相同的配置重新启动连接器。重新启动后,2.0.1.Final 连接器将继续从前一个连接器中断的地方开始。正如您所料,之前由旧连接器写入 Kafka 的所有变更事件都不会被修改。
如果您正在使用我们的容器镜像,请不要忘记从 DockerHub 重新拉取它们。
修复
-
使用 snapshot boundary mode "all" 会在 Oracle RAC 上导致 DebeziumException DBZ-5302
-
ORA-01003: no statement parsed DBZ-5352
-
缺少快照待处理事务 DBZ-5482
-
Db2 文档引用了无效的 SMALLMONEY 和 MONEY 数据类型 DBZ-5504
-
当 lob.enabled 为 true 时,具有 NULL 值的 UNIQUE INDEX 会抛出异常 DBZ-5682
-
Oracle SQL 解析错误,当使用 collation 时 DBZ-5726
-
无法解析的 DDL 语句 DBZ-5734
-
在 Oracle 源连接器的表快照过程中抛出 NullPointerException DBZ-5738
-
从 snapshot metrics docs 文件中删除将增量快照标记为 TP 功能的注释 DBZ-5748
-
排除 Oracle Compression Advisor 表不被捕获,以避免无限循环 DBZ-5756
-
更多的 Oracle 日志记录 DBZ-5759
-
Oracle 应仅在 TRACE 级别记录行内容 DBZ-5760
-
Outbox Router 文档关于值转换器已过时 DBZ-5770
-
单独使用 DBMS_LOB.ERASE 可能导致意外的 UPDATE,值为 null BLOB DBZ-5773
-
PostgreSQL 缺少元数据信息 DBZ-5789
-
当 ORA-01089 异常嵌套时,Oracle 连接器不会尝试重启 DBZ-5791
-
LSN 为 'LSN{XYZ}' 的消息在 location 阶段的 LSN 中未找到 DBZ-5792
-
Mysql 连接器 alter table 时,数据库名称解析失败 DBZ-5802
-
MongoDB 连接器 v2.0 中 snapshot.mode 属性的文档冲突 DBZ-5812
-
MongoDB 连接器 v2.0 中 'topic.prefix' 的默认值 DBZ-5817
-
Quarkus outbox 扩展永远无法完成 open tracing span DBZ-5821
-
修复 schema 中的 range 字段名称,以符合 Avro 标准 DBZ-5826
-
CREATE/ALTER user 不支持 COMMENT 令牌 DBZ-5836
-
Schema 类型为 FLOAT64 时,Java 对象无效:class java.lang.Float DBZ-5843
-
如果一个任务在其他任务运行时正在恢复,则会抛出 IllegalStateException DBZ-5855
-
CREATE/ALTER user 不支持 ATTRIBUTE 令牌 DBZ-5876
其他更改
-
SQL Server 连接器文档应提及多任务支持 DBZ-5714
-
Debezium 连接器附带一个旧版本的 google-protobuf,容易受到 CVE-2022-3171 的影响 DBZ-5747
-
升级到 Quarkus 2.14.CR1 DBZ-5774
-
将 postgres 驱动程序升级到版本 42.5.0 DBZ-5780
-
升级到 Quarkus 2.14.0.Final DBZ-5786
-
cloudevents 文档拼写错误 DBZ-5788
-
将 ORA-01555 添加到 Oracle 文档中 DBZ-5816
-
GitHub Actions:弃用 save-state 和 set-output 命令 DBZ-5824
-
升级 wildfly-elytron 到 1.15.5 / 1.16.1,因为 CVE-2021-3642 DBZ-5854
Release 2.0.0.Final (2022 年 10 月 14 日)
查看 完整问题列表。
Kafka 兼容性
此版本是针对 Kafka Connect 3.3.1 构建的,并已在 Kafka 代理版本 3.3.1 上进行了测试。有关与其他 Kafka 代理版本兼容性的信息,请参阅 Kafka 文档。
升级
在升级任何连接器之前,请务必检查自您使用的版本以来所做的向后不兼容的更改。
当您决定将这些连接器之一从任何早期版本升级到 2.0.0.Final 时,请先检查您正在使用的版本的迁移说明。正常停止运行中的连接器,删除旧的插件文件,安装 2.0.0.Final 插件文件,然后使用新的配置参数名称重新启动连接器。重新启动后,2.0.0.Final 连接器将继续从前一个连接器中断的地方开始。正如您所料,之前由旧连接器写入 Kafka 的所有变更事件都不会被修改。
如果您正在使用我们的容器镜像,请不要忘记从 DockerHub 重新拉取它们。
重大更改
PostgreSQL 事务 ID 是 32 位整数,会发生溢出。为了简化事务去重,已将 LSN 添加到标识符中(DBZ-5329)。
修复
-
ORA-01289:无法添加重复的日志文件 DBZ-5276
-
函数 DATE_ADD 可以用作标识符 DBZ-5679
-
MySqlConnector 解析 create view 语句失败 DBZ-5708
-
DDL_FILTER of SchemaHistory 不适用于包含换行符的 ddl 语句 DBZ-5709
-
Debezium Server 1.9.6 使用 MSSQL JDBC 7.2.2 而不是 9.4.1 DBZ-5711
-
MongoDB outbox router 文档中的属性名称无效 DBZ-5715
-
测试永远运行 DBZ-5718
-
cassandra 连接器首次启动可能会失败 DBZ-5719
-
Vitess:处理 Vstream 错误:意外的服务器 EOF DBZ-5722
-
ParsingException:DDL 语句无法解析(索引提示) DBZ-5724
Release 2.0.0.CR1 (2022 年 10 月 7 日)
查看 完整问题列表。
Kafka 兼容性
此版本是针对 Kafka Connect 3.3.1 构建的,并已在 Kafka 代理版本 3.3.1 上进行了测试。有关与其他 Kafka 代理版本兼容性的信息,请参阅 Kafka 文档。
升级
在升级任何连接器之前,请务必检查自您使用的版本以来所做的向后不兼容的更改。
当您决定将这些连接器之一从任何早期版本升级到 2.0.0.CR1 时,请先检查您正在使用的版本的迁移说明。正常停止运行中的连接器,删除旧的插件文件,安装 2.0.0.CR1 插件文件,然后使用新的配置参数名称重新启动连接器。重新启动后,2.0.0.CR1 连接器将继续从前一个连接器中断的地方开始。正如您所料,之前由旧连接器写入 Kafka 的所有变更事件都不会被修改。
如果您正在使用我们的容器镜像,请不要忘记从 DockerHub 重新拉取它们。
重大更改
schema.name.adjustment.mode 的默认行为现在是 none。虽然 avro 在用户使用 Avro 转换器时是一个更安全的选择,但在大多数使用默认 JSON 转换器的情况下,它会造成混淆。(DBZ-5541)。
新功能
-
为 Debezium 嵌入式引擎实现重试 DBZ-4629
-
MySqlErrorHandler 应处理 SocketException DBZ-5486
-
传统快照过程设置 source.ts_ms DBZ-5591
-
清理“逻辑名称”配置 DBZ-5594
-
升级 Kafka 客户端到 3.3.1 DBZ-5600
-
编写文档时,请在 IntelliJ 中使用网站样式表预览 IDE DBZ-5616
-
为 alter database 语句支持 READ ONLY/ENCRYPTION 选项 DBZ-5622
-
澄清 include/exclude 选项的语义 DBZ-5625
-
在 change stream 中添加了对 Mongo pre-image 的支持 DBZ-5628
-
为 alter table 语句设置 stats_sample_pages=default 的支持 DBZ-5631
-
支持在 kill 语句中使用任何表达式 DBZ-5636
-
Postgres 连接器中非增量快照的日志记录增强 DBZ-5639
-
为 mariadb 添加 SET 语句的支持 DBZ-5650
-
添加 Mongo-initiator 6.0 容器镜像 DBZ-5666
-
从子连接器配置中删除逻辑名称参数 DBZ-5671
修复
-
ConvertingEngineBuilder 丢失了重音字符 DBZ-4213
-
Debezium Db2 连接器在进行快照时无法处理 schema 中的默认值 DBZ-4990
-
Debezium 2.0.0.Beta1 Azure SQL 兼容性变更 DBZ-5496
-
Oracle 连接器解析 SELECT_LOB_LOCATOR 事件时缺少常量
unavailable.value.placeholderDBZ-5581 -
启动 Embedded Engine 时会吞掉 ClassNotFoundException,导致用户看不到引擎为何不起作用 DBZ-5583
-
消息的 LSN foo 大于预期的 LSN bar DBZ-5597
-
修复文档中的损坏链接 DBZ-5618
-
DDL 解析错误 DBZ-5623
-
MySQL 连接器无法解析双引号括起来的 decimal 列的默认值 DBZ-5630
-
支持 aws mysql 的 grant LOAD FROM S3, SELECT INTO S3, INVOKE LAMBDA DBZ-5633
-
启用 LOB 时,持续警告有关撤销事务 DBZ-5635
-
源记录中的文字为 "${project.version}" 而不是实际版本 DBZ-5640
-
TABLE_TYPE 关键字可以用作标识符 DBZ-5643
-
大量的 ROLLBACK 事务可能导致内存泄漏,当 LOB 未启用时。DBZ-5645
-
DebeziumContainer 启动期间的竞态条件 DBZ-5651
-
Outbox pattern 嵌套的 payload 导致连接器崩溃 DBZ-5654
-
允许 STATEMENT 一词作为表/列名 DBZ-5662
-
ValidatePostgresConnectionIT.testInvalidPostgresConnection 失败 DBZ-5664
-
硬编码的驱动程序任务属性未传递到底层连接 DBZ-5670
-
关键字 virtual 可以用作标识符 DBZ-5674
-
MongoDB 连接器与 DocumentDB 发生错误 "{$natural: -1} is not supported" DBZ-5677
其他更改
-
对齐连接器属性,以便在属性没有默认值时有一个空的默认单元格 DBZ-3327
-
改进 Filter SMT 文档/示例 DBZ-4417
-
CI 上的测试失败:SqlServerConnectorIT#updatePrimaryKeyTwiceWithRestartInMiddleOfTx DBZ-4475
-
间歇性测试失败:SqlServerConnectorIT#updatePrimaryKeyWithRestartInMiddle() DBZ-4490
-
编辑 MongoDB 连接器文档中新添加的内容 DBZ-5542
-
升级 apicurio 到 2.2.5.Final DBZ-5549
-
修改 Instantiator,使其不需要 classloader DBZ-5585
-
在测试容器中使用 quay.io DBZ-5603
-
移除记录的日志记录 DBZ-5612
-
升级二进制日志客户端至 0.27.2 DBZ-5620
-
允许从命令行更改 docker maven 属性 DBZ-5657
-
更新 docker maven 插件 DBZ-5658
-
对所有连接器更改运行 UI 测试 DBZ-5660
-
在删除 topic.prefix 的默认值后清理 UI e2e 测试 DBZ-5667
Release 2.0.0.Beta2 (2022 年 9 月 16 日)
查看 完整问题列表。
Kafka 兼容性
此版本已针对 Kafka Connect 3.2.1 构建,并已在 Kafka 代理版本 3.2.1 上进行测试。有关与其他 Kafka 代理版本兼容性的信息,请参阅 Kafka 文档。
升级
在升级任何连接器之前,请务必检查自您使用的版本以来所做的向后不兼容的更改。
当您决定将这些连接器之一从任何早期版本升级到 2.0.0.Beta2 时,请先检查您正在使用的版本的迁移说明。正常停止运行中的连接器,删除旧的插件文件,安装 2.0.0.Beta2 插件文件,然后使用新的配置参数名称重新启动连接器。重新启动后,2.0.0.Beta2 连接器将继续从前一个连接器中断的地方开始。正如您所料,之前由旧连接器写入 Kafka 的所有变更事件都不会被修改。
如果您正在使用我们的容器镜像,请不要忘记从 DockerHub 重新拉取它们。
重大更改
内存队列限制的对象大小不再使用反射计算,而是根据消息 schema 进行估算。Cassandra 连接器不支持此功能(DBZ-2766)。
Debezium 使用的所有 schema 现在都在一个中心点定义,并经过适当命名和版本化(DBZ-4365, DBZ-5044)。如果使用 schema 注册表,这可能会导致 schema 兼容性问题。
连接器参数命名已进行全面改革并分隔成不同的树。必须更新连接器配置(DBZ-5043)。
大多数 Debezium 连接器现在默认会在抛出与通信相关的异常(SqlException, IOException)时重新启动(DBZ-5244)。
skipped.operations 配置选项现在默认为截断 t(DBZ-5497)。
不再支持 Java 17 来编写测试。由于一些开发工具在使用不同的 Java 版本进行主代码和测试代码时存在问题,Debezium 现在为整个代码库使用 Java 11(DBZ-5568)。
新功能
-
支持 MySQL 的 binlog 压缩 DBZ-2663
-
限制“正在从 LSN 请求流式传输”警告的日志输出 DBZ-3007
-
Redis Sink - 更改发送到流的消息格式 DBZ-4441
-
Debezium UI 前端应使用新的 URL 和新的 JSON schema 描述符 DBZ-4619
-
为正在运行的增量快照提供暂停/恢复信号 DBZ-4727
-
支持将 mongodb 连接字符串作为配置选项 DBZ-4733
-
更新 GitHub 上的 Readme 以支持 Cassandra 4.x DBZ-4839
-
Debezium Server 验证配置文件是否存在和格式 DBZ-5116
-
在 Debezium Server 分发版中包含 Oracle Debezium 连接器 DBZ-5122
-
智能回填 | 能够回填选定的数据 DBZ-5327
-
支持 vitess 连接器的多个任务 DBZ-5382
-
增强 Cassandra 4 连接器以读取增量更改,而不是等待 Commit Log 文件标记为完成 DBZ-5410
-
不支持的非关系表应在流式传输期间被连接器优雅地跳过 DBZ-5441
-
支持从 Kafka 主题源的增量快照停止快照信号 DBZ-5453
-
将 Kafka 客户端升级到 3.2.1 DBZ-5463
-
在“套接字已关闭”异常时重启 SQL Server 任务 DBZ-5478
-
在正则表达式主题命名策略中增强唯一性键字段/值 DBZ-5480
-
支持 mariadb 中的 wait/nowait 子句 DBZ-5485
-
调整 mariadb 的 create function 语法 DBZ-5487
-
通过列注释添加 schema 文档 DBZ-5489
-
我的连接器解析 mariadb 相关序列语句失败 DBZ-5505
-
在 schema 变更消息中公开默认值和枚举值 DBZ-5511
-
简化将 SINK 配置属性传递给 OffsetBackingStore DBZ-5513
-
在 BinaryHandlingMode 中支持 BASE64_URL_SAFE DBZ-5544
-
处理 Vstream 连接重置 DBZ-5551
-
使用源数据库提交偏移量时提供分区 DBZ-5557
-
Vitess:在 VStream 订阅期间过滤 table.include.list DBZ-5572
-
通过设置预览的属性来改进文档编辑体验 DBZ-5576
修复
-
增量快照事件的源信息导出错误 DBZ-4329
-
对于低活跃度数据库,“未记录最大 LSN”日志消息可能会频繁出现 DBZ-4631
-
Redis Sink 配置属性未传递给 DB history DBZ-5035
-
HTTP sink 未重试失败的请求 DBZ-5307
-
将 MongoDB 文档转换为 Kafka Connect schema 时,嵌套数组为空导致失败 DBZ-5434
-
Oracle RAC 模式下同一线程上的重复 SCN 被错误处理 DBZ-5439
-
postgresql 文档中的拼写错误。 DBZ-5450
-
单元测试在 Windows 上失败 DBZ-5452
-
在 DefaultRegexTopicNamingStrategy 启动连接器之前缺少正则表达式属性验证 DBZ-5471
-
使用带引号标识符的 TABLESPACE 子句时,Create Index DDL 解析失败 DBZ-5472
-
Outbox 在确定其 schema 时没有正确检查数组一致性 DBZ-5475
-
写入日志的统计信息具有误导性 DBZ-5476
-
Debezium 连接器任务在 MongoDB 5 故障转移时未重试 DBZ-5479
-
ReadOnlyIncrementalSnapshotIT testStopSnapshotKafkaSignal 随机失败 DBZ-5483
-
为信号表失败提供更好的错误报告 DBZ-5484
-
Oracle DATADUMP DDL 无法解析 DBZ-5488
-
MySQL 连接器解析 ddl 语句时,当包含关键字“buckets”时失败 DBZ-5499
-
RedisDatabaseHistory 中 config.validateAndRecord() 被重复调用 DBZ-5506
-
DDL 语句无法解析:输入“ENGINE”不匹配 DBZ-5508
-
在 SQL Server 文档中使用“database.dbnames” DBZ-5516
-
LogMiner DML 解析器错误地解释了带引号列值内的连接运算符 DBZ-5521
-
MySQL 连接器 DDL 解析器不解析所有权限 DBZ-5522
-
SQL Server 随机测试失败 - EventProcessingFailureHandlingIT DBZ-5525
-
CREATE TABLE 语句中的 JSON 格式 CHECK 子句导致 MultipleParsingExceptions DBZ-5526
-
SQL Server 测试失败 - verifyOffsets DBZ-5527
-
单元测试在 Windows 上失败 DBZ-5533
-
EmbeddedEngine 应使用 SourceConnectorContext 初始化 Connector DBZ-5534
-
缺少必需字段时的验证错误不明确 DBZ-5538
-
测试套件在 MySQL 连接器的配置中缺少 server.id DBZ-5539
-
支持 EMPTY 列标识符 DBZ-5550
-
测试套件未反映 SQLServer 连接器的更改 DBZ-5554
-
使用 TCCL 作为默认类加载器来加载接口实现 DBZ-5561
-
max.queue.size.in.bytes 无效 DBZ-5569
-
自动创建主题中的列表的语言类型 DBZ-5573
-
Vitess:处理 VStream 意外关闭 DBZ-5579
-
RedisDatabaseHistoryIT 不可靠 DBZ-5582
-
解析 alter sql 时出错 DBZ-5587
-
字段验证错误对于期望非零正数的情况具有误导性 DBZ-5588
-
Mysql 连接器无法处理区分大小写的重命名/更改列语句 DBZ-5589
-
LIST_VALUE_CLAUSE 不允许 TIMESTAMP LITERAL DBZ-5592
-
Orcale DDL 不支持对物化视图添加注释 DBZ-5595
-
Oracle DDL 不支持 DEFAULT ON NULL DBZ-5605
-
不支持数据类型 mdsys.sdo_geometry DBZ-5609
其他更改
-
将信号表自动添加到 include 列表 DBZ-3293
-
Db2 连接器缺少关于 snapshot.include.collection.list 属性的文档 DBZ-4345
-
弃用内部键/值转换器选项 DBZ-4617
-
在 OpenShift 中运行系统测试套件 DBZ-5165
-
将 SQL Server 驱动程序升级到 10.2.1.jre8 DBZ-5290
-
重写 Oracle 测试管道作业以使用矩阵作业 DBZ-5412
-
Debezium on ROSA 健全性测试 DBZ-5416
-
更新共享教程文件中的链接格式 DBZ-5422
-
为所有连接器弃用旧版主题选择器 DBZ-5457
-
删除 Oracle 增量和临时快照内容中关于社区的条件性语句 DBZ-5458
-
删除 JdbcConnection 对 DatabaseSchema 的依赖 DBZ-5470
-
移除 SQL Server SourceTimestampMode DBZ-5477
-
连接器存储库中的维护分支构建应针对正确的分支进行构建 DBZ-5492
-
将 PostgreSQL 驱动程序升级到 42.4.1 DBZ-5493
-
在工作流中构建 UI 时强制更新快照 DBZ-5501
-
基于 DDL 模块中单个语法更改限制连接器工作流 DBZ-5528
-
在历史记录恢复中禁用优先 DDL 语句而不是逻辑 schema DBZ-5535
-
禁用联邦模块捆绑包的 Eager loading。DBZ-5545
-
debezium-server 文档中缺少 format 值选项 DBZ-5546
-
Debezium 输入中的数字类型输入名称不正确 DBZ-5553
-
MySQL read.only 属性错误地出现在下游文档中 DBZ-5555
-
添加 Fed 模块运行脚本并更新 readme DBZ-5560
-
TestSuite 中的日志记录改进 DBZ-5563
-
在已发布的内容中呈现的属性表中的格式化字符 DBZ-5565
-
升级 mysql-binlog-connector-java 库版本 DBZ-5574
-
MySQL database.server.id 指示默认值是随机的,但不再适用 DBZ-5577
-
将测试容器切换为 Debezium nightly DBZ-5601
-
DB2 连接器的 GitHub CI 失败 DBZ-5606
-
ValidateSqlServerFiltersIT 在 CI 中失败 DBZ-5613
Release 2.0.0.Beta1 (2022 年 7 月 26 日)
查看 完整问题列表。
Kafka 兼容性
此版本已针对 Kafka Connect 3.2.0 构建,并已在 Kafka 代理版本 3.2.0 上进行测试。有关与其他 Kafka 代理版本兼容性的信息,请参阅 Kafka 文档。
升级
在升级任何连接器之前,请务必检查自您使用的版本以来所做的向后不兼容的更改。
当您决定将这些连接器之一从任何早期版本升级到 2.0.0.Beta1 时,请先检查您正在使用的版本的迁移说明。正常停止运行中的连接器,删除旧的插件文件,安装 2.0.0.Beta1 插件文件,然后使用相同的配置重新启动连接器。重新启动后,2.0.0.Beta1 连接器将继续从前一个连接器中断的地方开始。正如您所料,之前由旧连接器写入 Kafka 的所有变更事件都不会被修改。
如果您正在使用我们的容器镜像,请不要忘记从 DockerHub 重新拉取它们。
重大更改
Debezium 以前将连接器指标公开为快照、流和基于历史的 bean 的单个元组。在此版本中,连接器指标已迁移到多分区方案,这意味着指标的命名和公开方式已作为 DBZ-4726 的一部分进行了更改。如果您正在使用 Grafana、Prometheus 或其他 JMX 指标收集框架等工具,请务必审查您的指标收集过程。
Debezium 以前通过 debezium-core 模块支持读取和存储偏移量、历史记录等。在此版本中,我们引入了一个名为 debezium-storage 的新模块,其中包含基于本地文件和Kafka 的存储方法的实现(DBZ-5229)。这种方法为将来根据需要引入其他存储实现提供了绝佳的扩展点。升级时,您可能需要根据代码依赖的存储模块来实现来调整应用程序的依赖项。
新功能
-
可插拔主题选择器 DBZ-4180
-
从 Debezium Server 消费者读取 Debezium 指标 DBZ-5235
-
将消息为“Broken pipe (Write failed)”的 SQLServerException 视为可重试异常 DBZ-5292
-
在元数据中包含提交更改的用户(oracle) DBZ-5358
-
UI 添加 debezium-ui i18n zh 翻译 DBZ-5379
-
支持在关系模型和 JSON schema 历史主题中存储扩展属性 DBZ-5396
-
验证主题命名策略相关的正则表达式属性 DBZ-5414
-
验证唯一索引是否包含函数或任意表达式 DBZ-5424
-
从 mysql 连接器中移除重复的 SimpleDdlParserListener DBZ-5425
修复
-
MongoConnector 的字段排除配置不适用于名称相同但来自不同集合的字段 DBZ-4846
-
DBZ 连接器的 Filter 步骤上的用户输入不一致 DBZ-5246
-
KafkaDatabaseHistory 未检查数据库历史主题创建结果,导致 UnknowTopicOrPartitionException DBZ-5249
-
修改主键后,源端和目标端之间的 Lob 类型数据不一致 DBZ-5295
-
Caused by: java.io.EOFException: Failed to read next byte from position 2005308603 DBZ-5333
-
增量快照:Oracle 表名解析不支持数据库名中的点 DBZ-5336
-
支持 PostgreSQL 默认值函数调用时带模式前缀 DBZ-5340
-
MySQL 8.x 的无符号 tinyint 转换失败 DBZ-5343
-
检测到不支持的 LogMiner 操作用于捕获表时,记录警告 DBZ-5351
-
当唯一索引基于系统和非系统生成列时,抛出 NullPointerException DBZ-5356
-
MySQL Connector 的 column hash v2 不起作用 DBZ-5366
-
当嵌套数组不包含元素时,Outbox JSON 展开失败 DBZ-5367
-
docker-maven-plugin 需要升级以支持 Mac Apple M1 DBZ-5369
-
AWS DocumentDB (具有 MongoDB 兼容性) 连接失败 DBZ-5371
-
Oracle Xstream 不将提交时间戳传播到事务元数据 DBZ-5373
-
UI 在非第一个集群中查看连接器配置时返回 404 DBZ-5378
-
CommitScn 未按预期格式记录 DBZ-5381
-
org.postgresql.util.PSQLException: Bad value for type timestamp/date/time: CURRENT_TIMESTAMP DBZ-5384
-
解析 Kafka 历史主题中的重命名语句时缺少 "previousId" 属性 DBZ-5386
-
Check constraint 会在 schema 变更事件中引入基于约束的列。DBZ-5390
-
列被引用为主键,但在表中未定义匹配的列 DBZ-5398
-
在使用支持可插拔数据库的 Oracle 时,澄清 signal.data.collection 应使用的数据库名称 DBZ-5399
-
Timestamp with time zone 列的默认值不是 GMT DBZ-5403
-
升级到 Kafka 3.1 破坏了与 Kafka 2.x 和 Kafka 3.0 的构建兼容性 DBZ-5404
-
PostgresConnectorIT#shouldRecoverFromRetriableException 随机失败 DBZ-5408
其他更改
-
清理未使用的文档变量 DBZ-2595
-
CI 上的间歇性测试失败:EventProcessingFailureHandlingIT DBZ-4004
-
澄清 SQL Server on Azure 是否是支持的配置 DBZ-4312
-
移除 last events 的冗余设置 DBZ-5047
-
将 `docker-images` 存储库和 JIRA 组件重命名为 `container-images` DBZ-5048
-
更新在 RHEL 上部署 Debezium 的说明(仅下游更改) DBZ-5293
-
为事务边界事件的示例添加 ts_ms 字段,并更新文档中的属性描述 DBZ-5334
-
Oracle GitHub Actions 工作流不再在推送时运行测试 DBZ-5349
-
统一 jenkins system-tests 中的作业名称 DBZ-5392
-
为连接器特定存储库构建稳定的分支 DBZ-5409
-
Oracle 非 CDB 构建未使用正确的环境变量 DBZ-5411
-
将主题命名策略文档更新到所有连接器 DBZ-5413
-
处理 Oracle 连接器的用户指南审查意见 DBZ-5418
-
OracleSchemaMigrationIT 在非可插拔(非 CDB)数据库上失败 DBZ-5419
Release 2.0.0.Alpha3 (2022 年 7 月 1 日)
查看 完整问题列表。
Kafka 兼容性
此版本已针对 Kafka Connect 3.2.0 构建,并已在 Kafka 代理版本 3.2.0 上进行测试。有关与其他 Kafka 代理版本兼容性的信息,请参阅 Kafka 文档。
升级
在升级任何连接器之前,请务必检查自您使用的版本以来所做的向后不兼容的更改。
当您决定将这些连接器之一从任何早期版本升级到 2.0.0.Alpha3 时,请先检查您正在使用的版本的迁移说明。正常停止运行中的连接器,删除旧的插件文件,安装 2.0.0.Alpha3 插件文件,然后使用相同的配置重新启动连接器。重新启动后,2.0.0.Alpha3 连接器将继续从前一个连接器中断的地方开始。正如您所料,之前由旧连接器写入 Kafka 的所有变更事件都不会被修改。
如果您正在使用我们的容器镜像,请不要忘记从 DockerHub 重新拉取它们。
修复
-
从偏移量加载 LSN 不正确 DBZ-3942
-
数据库历史记录恢复后,在表重命名后仍会保留旧表 DBZ-4451
-
使用增量快照添加新表不起作用 DBZ-4834
-
BigDecimal 对于给定的 Decimal schema 具有不匹配的精度值 DBZ-4890
-
Debezium 始终找不到起始 LSN DBZ-5031
-
使用 debezium server 上的 postgresql 源时出现数据重复问题 DBZ-5070
-
连接时,Cursor fetch 用于所有结果 DBZ-5084
-
当表名包含空格时,Debezuim 连接器在解析 select 语句覆盖时失败 DBZ-5198
-
DDL 语句无法解析 2 - Oracle 连接器 1.9.3.Final DBZ-5230
-
Debezium server 重复脚本 jar 文件 DBZ-5232
-
无法将 tinyint(1) unsigned 字段类型转换为 boolean DBZ-5236
-
Oracle 创建表 DDL 无法解析 DBZ-5237
-
Postgres 增量快照在父分区表上不起作用 DBZ-5240
-
字符集影响者未在默认值上正确解析 DBZ-5241
-
Oracle RAC 安装中的重复 SCN 被错误处理 DBZ-5245
-
在 Quarkus 中使用 Debezium Embedded 时出现 NPE DBZ-5251
-
Oracle LogMiner 在存档日志已删除但事务仍在进行时可能失败 DBZ-5256
-
在重命名 schema 更改事件中,源块表名的顺序不确定 DBZ-5257
-
如果副本集节点宕机,Debezium 无法连接 DBZ-5260
-
当 oracle-connector 获取新的 lob 数据时,commit_scn 没有改变 DBZ-5266
-
无效日期 'SEPTEMBER 31' DBZ-5267
-
database.history.store.only.captured.tables.ddl 未能抑制日志 DBZ-5270
-
io.debezium.text.ParsingException: DDL 语句无法解析 DBZ-5271
-
Mongo 连接器在快照期间发生死锁 DBZ-5272
-
Mysql 解析器无法处理 KILL 命令中的变量 DBZ-5273
-
Debezium server 连接到 Azure Event Hubs 时失败 DBZ-5279
-
ORA-01086 never established savepoint 在数据库历史主题无法创建或不存在时抛出 DBZ-5281
-
启用 database.history.store.only.captured.tables.ddl 未能限制 history topic 记录 DBZ-5285
其他更改
-
将 SMT 脚本测试用例添加到 OCP 测试套件 DBZ-2581
-
Schema 变更主题的示例令人困惑 DBZ-4713
-
更新缓存失效示例 DBZ-4754
-
从静态 yaml 描述符切换到动态对象 DBZ-4830
-
验证快照部署是否构建和部署 javadocs DBZ-4875
-
DelayStrategy 应接受 Duration 而不是 long ms DBZ-4902
-
使用 enforcer 插件的 maven 3.8.4 版本 DBZ-5069
-
为 testsuite 准备 jenkins 作业添加 '*' 通配符使用选项 DBZ-5190
-
在 Github 和 Jenkins 工作流中使用 Maven wrapper DBZ-5207
-
提高 OracleConnectorIT shouldIgnoreAllTablesInExcludedSchemas 测试的性能 DBZ-5226
-
文档说明如何使用 JAR 工件将 Debezium 脚本 SMT 构建到 Kafka Connect 中 DBZ-5227
-
为连接器指标部分中指定 MBean 名称格式创建共享 adoc 片段 DBZ-5233
-
默认使用 Maven profile 构建 Oracle 连接器 DBZ-5234
-
从 Oracle README.md 中移除对已删除的 case insensitive 选项的引用 DBZ-5250
-
多个 Oracle 测试未从 TestHelper 获取数据库名称 DBZ-5258
-
升级到 Quarkus 2.10.0.Final DBZ-5259
-
将 PostgreSQL 驱动程序升级到 42.4.0 DBZ-5261
-
重构 ChangeEventQueue 以更好地支持 n:1 线程 DBZ-5277
-
将 MongoDB 驱动程序升级到 4.6.1 DBZ-5287
Release 2.0.0.Alpha2 (2022 年 6 月 9 日)
查看 完整问题列表。
Kafka 兼容性
此版本已针对 Kafka Connect 3.2.0 构建,并已在 Kafka 代理版本 3.2.0 上进行测试。有关与其他 Kafka 代理版本兼容性的信息,请参阅 Kafka 文档。
升级
在升级任何连接器之前,请务必检查自您使用的版本以来所做的向后不兼容的更改。
当您决定将这些连接器之一从任何早期版本升级到 2.0.0.Alpha2 时,请先检查您正在使用的版本的迁移说明。正常停止运行中的连接器,删除旧的插件文件,安装 2.0.0.Alpha2 插件文件,然后使用相同的配置重新启动连接器。重新启动后,2.0.0.Alpha2 连接器将继续从前一个连接器中断的地方开始。正如您所料,之前由旧连接器写入 Kafka 的所有变更事件都不会被修改。
如果您正在使用我们的容器镜像,请不要忘记从 DockerHub 重新拉取它们。
重大更改
Debezium MySQL 连接器将 FLOAT 数据类型表示为 FLOAT64。现在使用正确的类型 FLOAT32(DBZ-3865)。
MongoDB 连接器不再支持从 oplog 流式传输。连接器已完全切换到变更流式传输(DBZ-4951)。
所有连接器现在都使用多分区代码库。这仅影响项目开发者(DBZ-5042)。
所有已弃用的配置选项均已移除(DBZ-5045)。
新功能
-
提供一个信号来停止正在运行的增量快照 DBZ-4251
-
SQL Server - 当用户没有正确权限(CDCReader)时,连接器失败 DBZ-4346
-
允许 mongodb-connector 解码 Binary payload DBZ-4600
-
为 SQL Server 连接器添加 UI 后端测试 DBZ-4867
-
直接使用 debezium 引擎会忽略 ChangeConsumer.supportsTombstoneEvents DBZ-5052
-
为 ByLogicalTableRouter 缓存配置缓存大小属性 DBZ-5072
-
引入新的扩展 API 来查询 debezium 版本 DBZ-5092
-
为 schema 变更事件引入新的 "ts_ms" 字段来识别处理时间 DBZ-5098
-
MongoDB 连接器应使用 RawBsonDocument 而不是 Document DBZ-5113
修复
-
Postgres 现有发布未用新表更新 DBZ-3921
-
DDL 包含 lateral 时出错并且连接器停止 DBZ-4780
-
Schema 更改应将 SCN 刷新到偏移量,如果没有其他活动事务 DBZ-4782
-
重组后连接器停止流式传输 DBZ-4792
-
MySQL 连接器增量快照在连接器设置 "snapshot.fetch.size": 20000 时失败,解析 datetime 列长度 DBZ-4939
-
[MySQL Debezium] DDL 解析错误 - CREATE OR REPLACE TABLE DBZ-4958
-
MongoDb 连接器指标注册期间的 InstanceAlreadyExistsException DBZ-5011
-
DateTimeParseException: Postgres 连接器中无法解析文本 'infinity' DBZ-5014
-
PostgreSQL ENUM 的默认值在生成的 schema 中丢失 DBZ-5038
-
Debezium 官方文档拼写错误 DBZ-5040
-
修复 Vitess 连接器处理事务消息时事务 ID 不一致的问题 DBZ-5063
-
每个连接器(postgres)4 个连接 DBZ-5074
-
Oracle 文档引用 archive_log_target 而不是 archive_lag_target DBZ-5076
-
'ALTER TABLE mytable DROP FOREIGN KEY IF EXISTS mytable_fk' 没有可行的替代方案,在输入 'ALTER TABLE mytable DROP FOREIGN KEY IF' DBZ-5077
-
Oracle Logminer:在快照模式切换到流式传输模式期间遗漏记录 DBZ-5085
-
中断快照过程可能导致某些 JDBC 驱动程序挂起 DBZ-5087
-
Debezium 因交易 ID 以 ffffffff 结尾而无法撤销变更事件(使用 LogMiner) DBZ-5090
-
快照的 schema 更改未填充表更改 DBZ-5096
-
Postgresql 连接器在 postgres 离线时不对某些错误进行重试 DBZ-5097
-
解析零日期失败 DBZ-5099
-
无法将 debezium.sink.kafka.producer.ssl.endpoint.identification.algorithm 设置为空值 DBZ-5105
-
Debezium 连接器在创建表语句时失败 DBZ-5108
-
当前版本的 surefire/failsafe 在 BeforeAll 失败时会跳过测试 DBZ-5112
其他更改
-
重构自定义转换器的文档 DBZ-4588
-
为 Postgres 连接器记录 xmin.fetch.interval.ms 属性 DBZ-4734
-
升级到 Quarkus 2.9.2.Final DBZ-4806
-
将 Oracle 驱动程序升级到 21.5.0.0 DBZ-4877
-
在核心库更改时执行 Debezium UI 构建 DBZ-4947
-
移除未使用的 Oracle 连接器代码 DBZ-4973
-
Debezium 1.9+ 的 cassandra 3 和 4 构件链接不再有效 DBZ-5055
-
将 Postgresql 驱动程序与 Quarkus 对齐 DBZ-5060
-
Javadoc 文档中过时的链接 DBZ-5075
-
在相关的 MysqlFieldReader 接口中将“Mysql”重命名为“MySql” DBZ-5078
-
创建 Maven 存储库验证的 CI 作业 DBZ-5082
-
移除 database.server.id 默认值处理程序,不再自动生成。DBZ-5100
-
将 Jackson Databind 升级到 2.13.2.2 DBZ-5107
-
在 System testsuite 中切换到 Fixture5 扩展的发布版本 DBZ-5114
Release 2.0.0.Alpha1 (2022 年 4 月 28 日)
查看 完整问题列表。
Kafka 兼容性
此版本已针对 Kafka Connect 3.1.0 构建,并已在 Kafka 代理版本 3.1.0 上进行测试。有关与其他 Kafka 代理版本兼容性的信息,请参阅 Kafka 文档。
升级
在升级任何连接器之前,请务必检查自您使用的版本以来所做的向后不兼容的更改。
当您决定将这些连接器之一从任何早期版本升级到 2.0.0.Alpha1 时,请先检查您正在使用的版本的迁移说明。正常停止运行中的连接器,删除旧的插件文件,安装 2.0.0.Alpha1 插件文件,然后使用相同的配置重新启动连接器。重新启动后,2.0.0.Alpha1 连接器将继续从前一个连接器中断的地方开始。正如您所料,之前由旧连接器写入 Kafka 的所有变更事件都不会被修改。
如果您正在使用我们的容器镜像,请不要忘记从 DockerHub 重新拉取它们。
重大更改
运行 Debezium 的任何形式都需要 Java 11:Kafka Connect 插件、Debezium 引擎和 Debezium Server(DBZ-4949)。
构建 Debezium 需要 Maven 3.8.4(DBZ-5064)。
PostgreSQL 连接器不再支持不支持事务和默认值支持的旧版本 protobuf 解码插件(DBZ-703)。
PostgreSQL 连接器不再支持 wal2json 解码插件(DBZ-4156)。推荐使用 pgoutput 解码插件作为替代。
已移除 MySQL 连接器的旧版实现(DBZ-4950)。
Confluent Avro 转换器已不再存在于 debezium 容器镜像中(DBZ-4952)。
MySQL 连接器已移除 JDBC 旧版日期/时间属性支持(DBZ-4965)。
新功能
-
实现 Pub/Sub Lite 变更消费者 DBZ-4450
-
在教程示例的 Docker 构建中包含 Instant Client 以支持 Oracle DBZ-1013
-
添加 Google Pub/Sub 模拟器支持 DBZ-4491
-
使 Postgres
PSQLException: This connection has been closed.可重试 DBZ-4948 -
ORA-04030:在尝试分配 65568 字节时发生进程外内存不足(Logminer LCR c,krvxrib:buffer) DBZ-4963
-
应在 HistoryRecord 中存储事件头时间戳 DBZ-4998
-
DBZ-UI:在编辑/复制连接器流程中,使访问/密钥/密码/客户端密钥字段可编辑。DBZ-5001
-
根据当前使用的批次大小进行比较,调整 LogMiner 批次大小 DBZ-5005
修复
-
连接器抛出 java.lang.ArrayIndexOutOfBoundsException DBZ-3848
-
文档说明 SYS 或 SYSTEM 表空间不应包含相关表。DBZ-4762
-
运行仅归档日志时出现 java.sql.SQLException: ORA-01291: missing logfile DBZ-4879
-
Debezium 为 Oracle 12.1 使用错误的 LCR 格式 DBZ-4932
-
Oracle 重启时出现重复 DBZ-4936
-
Oracle truncate 导致异常 DBZ-4953
-
由 io.debezium.connector.oracle.antlr.listener.ColumnDefinitionParserListener.resolveColumnDataType 引起的 NPE DBZ-4976
-
Oracle 连接器在启动失败后停止时可能抛出 NullPointerException DBZ-4978
-
非表相关的 DDL 出现 NPE DBZ-4979
-
MySQL 连接器无法解析 CTE 语句 DBZ-4980
-
debezium mongodb 连接器 UI 中缺少 SSL 配置选项 DBZ-4981
-
使用自定义转换器时,MySQL 字符集在快照期间不受支持 DBZ-4983
-
Outbox Transform 不允许信封中包含附加字段的扩展负载 DBZ-4989
-
Redis Sink - auth 之前发生了 clientSetname DBZ-4993
-
CLOB 带单引号会导致解析器异常 DBZ-4994
-
Oracle DDL 解析器在 references_clause 中(没有 column list)失败 DBZ-4996
-
无法通过 mongos 使用“local”数据库 DBZ-5003
-
在 MongoDB 连接器上触发增量快照会抛出 json 解析错误 DBZ-5015
-
Jenkins 作业无法下载 debezium-bom DBZ-5017
-
Redis Sink - 在关闭客户端之前检查其是否为 null DBZ-5019
-
Cassandra 3 处理程序未正确处理分区删除 DBZ-5022
-
在会话启动时,所有 schema 变更监听器都应初始化 keyspaces。DBZ-5023
-
SQL Server 在多分区模式下,如果向现有配置添加新数据库,则会失败 DBZ-5033
-
Mysql 测试在 MySQL DB 容器运行前启动 DBZ-5054
-
Debezium server 配置属性未正确渲染 DBZ-5058
其他更改
-
为 Oracle database.url 配置添加集成测试 DBZ-3318
-
使用 Java 11 构建 Cassandra 3.x 连接器 DBZ-4910
-
在发布管道中添加 ignoreSnapshots 构建选项 DBZ-4957
-
更新 Debezium Server 使用的 Pulsar 客户端版本 DBZ-4961
-
RedisStreamIT.testRedisConnectionRetry 的间歇性失败 DBZ-4966
-
在 Github CI 中为 2.x 路径添加触发器 DBZ-4971
-
Debezium 抛出异常,但任务仍在运行 DBZ-4987
-
Nexus Staging Maven 插件与 OpenJDK 17 不兼容 DBZ-5025
-
Maven 插件重复定义 DBZ-5026
-
OracleOffsetContextTest 应仅限于 LogMiner DBZ-5028
-
将几个新的 Oracle 测试限定为仅 LogMiner DBZ-5029
-
JDK outreach 作业失败 DBZ-5041
-
更新 artifact server 作业列表脚本 DBZ-5051
-
在文档中添加关于 ORA-01882 和 Oracle 11 的 FAQ DBZ-5057
-
升级到 Quarkus 2.8.2.Final DBZ-5062