command.commandtimeout奇怪的行为

suzh9iv8  于 2021-06-20  发布在  Mysql
关注(0)|答案(0)|浏览(530)

我在一个azure sql数据库上有随机的查询失败。如果查询失败,错误会说是因为非阻塞套接字将阻塞。但是,我是唯一的用户,查询只是select语句,没有插入或并行操作。另外,当我获取从visualstudio运行的失败查询并将其作为查询粘贴到sql查询操作控制台时,它运行良好。我之前发现查询是随机超时的,因为有些where子句列没有索引。我给它们编了索引,得到了一些改进。不过,不同的查询也会随机失败。我做了一些阅读,发现一个对command.commandtimeout的模糊引用。它显然是默认设置为30秒。我把它提高到60。不同的失败,但仍然是随机的。我把它调高到600,你猜怎么着,整个系统都会锁定,永远不会返回第一个查询或失败。这些查询不是很复杂,列是索引的。我从来没有在mysql、oracle甚至db2上遇到过这种问题。这些简单的查询从表中选择x,y,z,其中z在(a,b,c)中,y在(d,e,f)中,customer\u count<20 order by w desc,由于超时而失败,这是怎么回事?所有where子句列都被索引。这个表有大约250万行。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题