当前位置: 首页 > 知识库问答 >
问题:

Kafka Connect with MSSQL不适用于删除操作

邓才
2023-03-14

我在SQL Server 2014上使用Kafka Connect和Confluent MSSQL connector。我尝试了插入和更新操作,它们工作正常,将正确的记录推送到Kafka。如果我删除了一条记录,我会收到以下关于Kafka主题的消息:

{"schema":null,"payload":null}

相反,我希望删除记录的详细信息。

我使用以下命令启用CDC:

ALTER DATABASE WebAppDb SET CHANGE_TRACKING = ON (CHANGE_RETENTION = 2 DAYS, AUTO_CLEANUP = ON) 
GO 
ALTER DATABASE WebAppDb SET ALLOW_SNAPSHOT_ISOLATION ON 
GO 
ALTER TABLE dbo.Users ENABLE CHANGE_TRACKING WITH (TRACK_COLUMNS_UPDATED = ON)
GO

共有2个答案

夏朝
2023-03-14

这实际上代表一条删除消息,如果您的有效负载为空,这意味着记录已被删除,您现在可以做的是检查消息key并在您的消费者中进行所需的删除。

您现在看到的有效负载确实是错误的,Kafka Connect中有一个错误,它无法阻止Json转换以生成<code>tombstone

{"schema":null,"payload":null}

当错误修复发布时,您的消息应该有一个null正文,但在这两种情况下,您可以对删除采取相同的方式。

有关该错误的更多信息,请单击此处

有关逻辑删除消息的更多信息,请单击此处

高墨一
2023-03-14

我会检查连接器和MSSQL服务器版本在使用中,因为根据合流网站为Kafka连接微软SQL服务器连接器

变更数据捕获是仅在SQL Server企业版和开发人员版上提供的功能

然后检查这个问题的答案和Debezium Connector forSQLServer的信息。
看起来这个问题可能仍然需要实现,因为它仍然在Github上打开

 类似资料:
  • 我在一个网站上工作,遇到了一个问题,点击我的“删除”链接会出现一个错误页面。在localhost上运行良好-无法理解为什么在Heroku站点上会有所不同。 有人知道这是怎么回事吗? 我的“图片”控制器: 我的图片/新视图: 以下是我尝试删除图片时的heroku日志(从导航到新图片页面开始(同一视图中的新建和编辑功能): 2015-11-15T16:13:49.189857 00:00 heroku

  • 问题内容: 有没有人解决此问题:https : //hibernate.atlassian.net/browse/HHH-9663? 我也面临着类似的问题。当我在两个实体之间创建单面(无反向引用)一对一关系并将孤立删除属性设置为true时,将引用设置为null后,引用的对象仍在数据库中。 这是示例域模型: 我目前正在通过手动删除孤儿来解决此问题。 问题答案: 级联仅对从 父级 传播到 子级的 实体

  • 我试图在wordpress中使用AMP与表单动作。我使用action-xhr与POST方法。 当我提交表单时,它会给出错误信息 响应必须包含AMP-访问-控制-允许-源-起源头 表单提交失败:错误:响应必须包含AMP-访问-控制-允许-源-源头 甚至尝试添加标题,如下所示 这个问题仍然存在。有什么建议吗? 我使用的是wordpress版本5.0.3

  • 拖放操作不适用于selenium 3.8。 下面是该元素的JS代码 这就是我尝试过的。但这只是选择元素。保持和放弃是不会发生的。 我也试过这个。 也尝试过机器人。每次我只能看到源元素和目标元素都被选中。但不是被拖拽掉的。 还尝试了dragAndDrop ActionsChain。那也没用。

  • 我将按照此答案中的说明生成以下S3桶策略: 我返回以下错误: 操作不适用于语句中的任何资源 我的政策遗漏了什么?

  • 我正在为我的项目设置Jacoco Gradle插件。该插件执行良好,并生成覆盖报告,但它不排除我将排除的包。 我想包含的类在com/xxx/ws/hn/**中,我想排除的类在com/xxx/ws/企业/**中。 这是我的Gradle脚本: 我有什么遗漏吗?我尝试过各种排除模式,包括“.”包的分隔符,而不是“/”,但似乎没有任何效果。任何帮助都将不胜感激。