Всем привет. Делаю аггрегацию из php:
$data = self::getCollection()->aggregate(
[...],
['allowDiskUse' => true]
);
Запрос очень долгий, нужно задать таймаут (дефолтный в 30 сек не подходит).
Вопрос: как его сделать? В мануалах везде написанно ставить таймоут для курсора. Но курсор здесь не юзается.
Решил сделать костыль:
\MongoCursor::$timeout = -1; // Костыль для таймаута
$data = self::getCollection()->aggregate(...);
\MongoCursor::$timeout = 30000; // Возвращаем таймаут обратно
Работает, но в логах получаю ошибку:
MongoCollection::aggregate(): The 'MongoCursor::$timeout' static property is deprecated, please call MongoCursor->timeout() instead E_DEPRECATED
Что делать? Заранее спасибо.