gpt4 book ai didi

php - 如何将超时设置为无限以避免 php 中的 MongoCursorTimeoutException

转载 作者:IT老高 更新时间:2023-10-28 13:12:34 25 4
gpt4 key购买 nike

我正在运行从 mongodb 获取数据的 php 脚本。我有一个非常庞大的数据库,我得到了这个异常..我的 mongodb 版本是 1.6.5

PHP Fatal error:  Uncaught exception 'MongoCursorTimeoutException' 
with message 'cursor timed out
(timeout: 30000, time left: 0:0, status: 0)

我的查询是这样的

private function executeRegex($start_date, $end_date, $source, $collection, $db)
{
$criteria = array(
'date' => array(
'$gte' => new MongoDate(strtotime($start_date)),
'$lt' => new MongoDate(strtotime($end_date))
),
'uid'=> array(
'$ne' => '-',
),
'source' => new MongoRegex($source)
);
$value = $db->command(array('distinct' => $collection, 'key' => 'uid', 'query' => $criteria));
return count($value['values']);
}

如何将超时设置为无限,这样我就不会得到这个异常

最佳答案

MongoCursor::$timeout = -1;

在您的 php 代码中输入上述行。这为所有查询设置超时。最好的尊重,

关于php - 如何将超时设置为无限以避免 php 中的 MongoCursorTimeoutException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5561925/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com