- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们使用 Sybase ASE (15.5) 服务器作为数据库,并且遇到奇怪的间歇性 SPID 阻塞问题,我正在尝试在应用程序层以编程方式检测和缓解这些问题。
Sybase 允许您安排所谓的 "reorgs"据我所知,这是定期重新索引/表压缩、清理等。基本上是定期数据库维护。
每隔一段时间,我们就会让所有行星相互对齐,其中:
widgets
表上放置一个(阻塞)共享锁;那么小部件
表。重组对 widgets
发出独占锁定请求,但无法获取锁定,因为 widgets
已被锁定并被挂起的 SPID/query 阻塞;那么小部件
上的共享锁;这样widgets
上的独占锁之前无法启动,但 widgets
被束缚在阻塞共享锁中由挂起的 SPID。并且由于重组已在 widgets
上放置了独占锁,因此想要在 widgets
上共享锁的所有其他查询都必须等到重组完成(因为新请求的独占锁胜过新请求的共享锁)。我认为我的理想策略是:
提前致谢!
最佳答案
您可以使用以下查询获取数据库中运行的命令:
select cmd from sysprocesses
要查找锁定信息,您可以加入 master..syslocks
和 your_db..sysobjects
来找出您尝试访问的对象上存在哪些锁。 syslocks.type
指示已到位的锁定类型,这些可能的值可以在此处找到:
select object_name(id), db_name(dbid), type from master..syslocks
where dbid = db_id("your_db")
希望有帮助。
要查找锁是否与重组相关,我认为您应该能够将 syslocks.spid 加入 sysprocesses.spid,其中 cmd =“REORG” 或类似的内容:
select p.cmd, p.spid, l.type from master..sysprocesses p, master..syslocks l where CMD = "REORG"
关于java - Sybase/JDBC : how to detect reorgs or exclusive locks?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18881086/
ibm db2 db 中的 reorg 命令有什么用? Reorg 内部做什么?如果在表上创建了新索引,是否需要运行 reorg? 最佳答案 REORG 操作执行以下功能: 检查参照完整性(如果适用于
我们使用 Sybase ASE (15.5) 服务器作为数据库,并且遇到奇怪的间歇性 SPID 阻塞问题,我正在尝试在应用程序层以编程方式检测和缓解这些问题。 Sybase 允许您安排所谓的 "reo
我是一名优秀的程序员,十分优秀!