症状
假设你在内存中的事务与 Microsoft SQL Server 2016 或2017中的sp_getapplock system 存储过程一起使用。 如果 在 "SCHEMA_OBJECT_ACCESS_GROUP 服务器级别审核操作" 组上启用了服务器审核,则会收到类似于下面的 "Msg 41317"错误消息:
消息41317,级别16,状态4,行 LineNumber 访问内存优化表或本机编译模块的用户事务无法访问多个用户数据库或数据库模型和 msdb,并且无法写入 master。
解决方案
在 SQL Server 的以下累积更新中修复了此问题:
SQL Server 2016 的累积更新 3 Service Pack 2
提示此更新还解决了以下问题:当用户执行 "创建架构" 命令时,当用户执行 "创建架构" 命令时,如果该用户执行了 "创建架构" 命令,并且数据库审核规范中启用了 SCHEMA_OBJECT_ACCESS_GROUP 和 SCHEMA_OBJECT_CHANGE_GROUP,则会出现无法解决的死锁。
关于 SQL Server 内部版本
SQL Server 2016 的每个新版本都包含上一版本中的所有修补程序和安全修补程序。 我们建议你为 SQL Server 安装最新的累积更新:
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
参考
了解 Microsoft 用于描述软件更新的 术语 。