我最近遇到了一个非常奇怪的问题,即删除通知。这是场景:
我有一个编排,它将消息发送到配置为传递通知 = 已传输的单向发送端口(顺便说一句,发送端口使用 FTP 适配器,但我认为适配器是什么并不重要)。
当出现消息传递错误时,该错误被编排捕获(因此意味着传递通知机制按预期工作),它执行一些日志记录,然后以编程方式终止(终止形状)。消息传递实例仍然存在并且被挂起和恢复。
在解决了导致消息传递错误的问题后,我恢复了暂停的消息传递实例。
在这一点上,我得到了 2 个非常可疑的消息传递实例:ACK 的路由失败并且消息传递实例仍然处于活动状态(但什么也不做......)。我确信路由失败实例是与活动消息传递实例相关的传递通知,因为它们具有相同的 CorrelationToken。更多细节:如果我终止活动实例,它会被挂起(不可恢复),并且错误消息说实例完成但没有消耗所有消息!
最后但并非最不重要的一点是,我只在某些环境中遇到这个问题......
更新:似乎问题出现在运行 BizTalk 2006 R2 SP1 的 BizTalk 盒子上。在没有 SP1 的情况下运行 BizTalk 2006 R2 的机器上从未出现过这种情况。我会尽快确认
更新 2:看来我在上次更新中是对的:安装 SP1 CU1 后出现问题...所以下一步:我将尝试查找以下 CU 之一是否可以解决问题。