电子邮件路由器 - 更新邮箱的电子邮件地址时 returns SQL 超时错误

Email Router - when updating Mailbox's email address returns SQL timeout error

我有一个本地 CRM 2016 实例,但我无法在其中接收任何传入电子邮件,即使我 运行 测试访问表明一切正常。

首先,我无法更改队列记录电子邮件地址,因为我一直收到 SQL 超时错误(无论您将超时增加多少时间都不会改变)但是如果我尝试更改它工作并保存的任何其他字段(当然不是电子邮件字段)。

与邮箱的记录相同,当我尝试更改电子邮件时 returns 出现 SQL 超时错误。

所以我所做的是通过 SQL 查询更改这些电子邮件,但之后电子邮件仍然不会在 CRM 中创建。

它在事件查看器中显示下一个警告日志:

35241 - The recipients for the email message with subject "[x]" in mailbox [email address] did not match any known records.

我 运行 在这里别无选择,当我 运行 我组织的诊断工具时,它的性能很好,但一定有什么东西阻碍了与 SQL?有什么线索吗?

SQL超时错误:

Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=8.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: SQL timeout expired.Detail: -2147204783 SQL timeout expired. 2018-10-10T14:14:15.5749939Z

我从 Microsoft Community Forumns 得到了答案,感谢 Radu Chiribelea:

仅更改 SQL 中 table 中的电子邮件地址作为记录是不够的,因此可以将其用于电子邮件跟踪。还有其他参考资料 - 例如 EmailSearchBase。这就是为什么您需要让平台处理您的更改。

这里最大的问题是 SQL 超时,这就是您需要解决的问题。由于这发生在创建/更新时,我怀疑某处可能存在死锁。您是否在创建/更新时触发了任何插件或工作流程?如果您禁用这些,您是否仍然看到问题?

您能否在重现问题时在详细级别启用 CRM 平台跟踪?这将使您更好地了解实际超时,然后您可以从那里开始解决它。