var*_*ble -2 sql-server index-tuning sql-server-2017
当离线索引重建正在运行时,并且会触发 CRUD 查询(假设重建需要几个小时)。
查询将等待重建完成多久?
假设重建仍在运行,一旦完成等待,它会做什么?
简短回答您的问题:
永远
见上文(由于上述原因,这种情况不会发生)
但也有例外:
客户端应用程序可以定义一个小于无限期的超时,这意味着它将在几秒后在 TDS 协议上发送“中止”(正式称为“注意”)。SQL Server 收到注意信号并中止查询。如果它是修改查询,它将被回滚,但如果您有显式事务,则该事务将不会回滚。请注意,中止的是客户端,而不是数据库引擎。
会话可以将 SET LOCK_TIMEOUT 指定为大于 0 的值,这意味着在等待锁定这么长时间后,您会收到错误 1222。同样,就像上面一样,DML 命令将回滚,但周围的事务不会回滚。
| 归档时间: |
|
| 查看次数: |
95 次 |
| 最近记录: |