Debezium日常分享系列之:Debezium 2.6.1.Final发布

21 阅读1分钟

一、新功能和改进

1.Oracle RAW 数据类型到 STRING 转换器

Debezium 将 RAW 列类型视为一系列字节,因此包含 RAW 列的更改事件使用 BYTES 模式类型。这是一个合理的默认值,因为 Debezium 不知道应用程序使用 RAW 列的目的,并且它按原样打包列中的数据。但是,这对于更喜欢以 STRING 类型而不是 BYTES 形式发出的数据的消费者应用程序来说可能并不理想。

为了帮助用户,我们引入了一个新的 RawToStringConverter,它自动将 RAW 列发出为基于 STRING 的类型,而不是默认的 BYTES。

要配置转换器,只需添加以下配置:

converters=raw-to-string
converters.raw-to-string.type=io.debezium.connector.oracle.converters.RawToStringConverter
converters.raw-to-string.selector=.*.MY_TABLE.MY_RAW_COLUMN

选择器属性允许转换器通过提供逗号分隔的正则表达式列表来专门针对一个或多个表中的一个或多个 RAW 列。

  • 选择器属性是可选的,如果省略,转换器将应用于所有 RAW 列。

二、修复和稳定性改进

1.Debezium 服务器快照已修复

如果您尝试在 2.6.0.Final 中使用 Debezium Server 执行或重新执行快照阶段,该过程将失败并出现有关获取锁的错误。这很快就被发现了,因为它严重影响了在基于 2.6.0.Final 的 Debezium Server下使用任何 Debezium 连接器的能力。

我们调整了解析新 Snapshotter API 所需组件的方式,以便当同一类路径上存在多个连接器时,解析会适当地选择正确的组件。此外,我们还改进了 Debezium Server 测试套件,以专门查找这些类型的问题,以避免可能发布具有类似问题的构建。

  • Debezium Server 用户应迁移到 2.6.1.Final,而不是使用 2.6.0.Final。