У меня возникают проблемы с использованием встроенного драйвера MongoDB Node.js версии 2.2.29.
Это код, который я запускаю:
let cursor = db.collection( 'log' )
.find({timestamp: { '$lte': 1498556839 }})
.sort( { create_date_ttl: -1 } )
.limit( 3 );
Если я сейчас запущу cursor.count()
и обработаю обещание, я увижу, что счетчик дает мне 56 записей вместо 3 (указанный предел).
cursor.count().then( (count) => {
// count here is 56
});
Однако, если я запускаю cursor.count( function (err, count) {})
с использованием обратных вызовов, правильно подсчитывается только 3 записи.
cursor.count( function (err, count) {
// count here is 3 according to the limit specified.
});
У кого-нибудь такая же проблема или кто-нибудь может объяснить мне, как это возможно? Возможно, я что-то упускаю, но, согласно официальному документация.
Заранее спасибо.
.sort()
и.limit()
не применяются в возвращаемом промисе. - person Neil Lunn   schedule 27.06.2017