MongoDB: The ‘cursor’ option is required

При использовании агрегации через устаревший драйвер MongoDB без указания опций возникает ошибка

Throwable; type: [MongoResultException]; code: [9]; message: [localhost:27017: The ‘cursor’ option is required, except for aggregate with the explain argument]; err level: [1 (E_ERROR)]

Внятного описания в документации, что именно должно быть передано в параметре cursor, нет. Так как драйвер ждёт объект, избавиться от ошибки можно, передав в параметрах метода aggregate() в опции cursor пустой объект:

$pipeline = array(array(
    '$group' => array(
        '_id' => null,
        'min' => array('$min' => '$update_time'),
        'max' => array('$max' => '$update_time'),
    ),
));

$options = array('cursor' => new stdClass());

$res = $MongoCollection->aggregate($pipeline, $options);

Пример выше показывает, как выбрать из коллекции минимальную и максимальную запись.