Domyślnie MongoDB ignoruje limit i skip kiedy są stosowane razem z count . Aby zmienić to zachowanie, musisz ustawić applySkipLimit na true . Zobacz tutaj
po więcej szczegółów.
W powłoce Mongo zignoruje to limit i skip domyślnie:
db.coll.find().limit(3).count();
A to uszanuje te modyfikatory:
db.coll.find().limit(3).count(true);
Możliwe, że używasz starszej wersji powłoki Mongo, która nie jest domyślna lub coś w tym rodzaju.
Aby naprawić kod Java, użyj size() zamiast count() - to jak wywołanie count(true) zamiast count() w powłoce.