我们正在使用Orchard CMS 1.7.2。我们最近得到了许多死锁,超时和断言失败问题。
以下是我的观察:
1.dead锁定和超时主要发生在以下查询: 选择userrolesp0_.Id为Id26_,userrolesp0_.UserId为UserId26_,userrolesp0_.Role_id为Role3_26_来自Orchard_Roles_UserRolesPartRecord userrolesp0_其中userrolesp0_userrolesp0_.UserId =@p0
2. Orchard_Roles_UserRolesPartRecord表在USerId列上有索引,即使超时和死锁数没有变化
3.与此表一起,在下表中注意到死锁/超时/并发: Orchard_Framework_ContentItemRecord和Orchard_Framework_ContentItemVersionRecord(注意:这些表也有索引)
4.当具有超过1百万条记录的表(在Orchard_Framework_ContentItemVersionRecord中)和抛出断言失败时,N-hibernate无法获取记录
因此,我们收到客户/最终用户的许多投诉,称他们无法很好地使用该网站。
我们不确定如何控制/修复它们,因为它们来自果园框架级别。截至目前,我们正在研究数据库隔离级别。一些果园文章建议将数据库隔离级别更改为快照(但没有具体的理由)
请分享您的想法,这对我们最早解决这些问题很有帮助。
此致 哈拉